I think now the point is not whether we use Spring. The problem now is: 1. Using Spring, and using JdbcTemplate, then there is no ORM and we are playing with raw SQL now. And awsapi needs big refactor. 2. Using Spring, with JPA. We have ORM, but awsapi still needs refactor as it currently wires with Hibernate core api. However, the workload is smaller as Hibernate core API is quite similar to JPA.
I definitely vote option 2. No matter whether using Spring, awsapi have to rework as it wires Hibernate core api which asks compile dependency. > -----Original Message----- > From: Kelven Yang [mailto:kelven.y...@citrix.com] > Sent: Thursday, June 28, 2012 4:00 PM > To: cloudstack-dev@incubator.apache.org > Subject: RE: Hibernate > > A couple of points, > > 1. Spring is under Apache license > 2. Spring provides pretty good JDBC wrapper like SimpleJdbcTemplate to free > developers from managing DB connections and JDBC prepared statements > (We used to run into memory leaking issues with our home-grown JDBC > wrapper) 3. Transaction management 4. Spring is open and easy to plug in 3rd > party ORM modules 5. You also get Spring AOP for free. > > Kelven > > > > -----Original Message----- > > From: Kevin Kluge [mailto:kevin.kl...@citrix.com] > > Sent: Thursday, June 28, 2012 2:54 PM > > To: cloudstack-dev@incubator.apache.org > > Subject: RE: Hibernate > > > > Rajesh, can you provide some rationale for this choice versus other > > options. > > > > -kevin > > > > > -----Original Message----- > > > From: Rajesh Battala [mailto:rajesh.batt...@citrix.com] > > > Sent: Wednesday, June 27, 2012 10:44 PM > > > To: cloudstack-dev@incubator.apache.org > > > Subject: RE: Hibernate > > > > > > Hi, > > > > > > I had started working on this issue. As Hibernate is LGPL we cannot > > > use this in our Apache repo. > > > I had discussed with Chiradeep and Kelven. > > > > > > Am looking at replace Hibernate with Spring Framework > > > simpleJDBCTemplate. > > > > > > The Spring Framework is released under version 2.0 of the Apache > > > License http://www.springsource.org/spring-framework > > > > > > Thanks > > > Rajesh Battala > > > > > > > > > > -----Original Message----- > > > > From: Chiradeep Vittal [mailto:chiradeep.vit...@citrix.com] > > > > Sent: Thursday, June 28, 2012 10:45 AM > > > > To: cloudstack-dev@incubator.apache.org > > > > Cc: cloudstack-dev@incubator.apache.org > > > > Subject: Re: Hibernate > > > > > > > > The ORM in the AWS module is 90% used by S3. > > > > The dependency is mostly abstracted by a DAO layer; there is > > > > another dependency on transactions. I believe Rajesh B is already > > > > working on this aspect and there is a bug open on it. > > > > > > > > -- > > > > Chiradeep > > > > > > > > On Jun 27, 2012, at 21:52, "David Nalley" <da...@gnsa.us> wrote: > > > > > > > > > > > > > > > > > > > > > > > > > > > > > On Jun 28, 2012, at 12:45 AM, Sheng Liang > > > > > <sheng.li...@citrix.com> > > > > wrote: > > > > > > > > > >>> In short, I see three options (please comment if you see more) 1. > > > > >>> Rip out > > > > hibernate and replace with some other ORM 2. Make the AWS API bits > > > > an optional non-default part of the build. > > > > >> 3. Declare that hibernate is a system requirement for > > > > >> CloudStack > > > > >> > > > > >> I prefer option #1. It is the cleanest. I don't think it will > > > > >> be very difficult to > > > > rip out Hibernate. > > > > >> > > > > >> Sheng > > > > > > > > > > > > > > > > > > > > That is my personal inclination as well, though I am somewhat > > > > > reticent to > > > > say so, since I am not doing any of the work to rip and replace. > > > > At the same time choice of ORM is a big issue. I know, for > > > > instance that Alex was looking into finding another ORM for the > > > > rest of > > CloudStack. > > > > When I initially looked at the Hibernate issue, Prachi told me she > > > > thought it was about 2 weeks worth of work. > > > > > > > > > > > > > > > --David