Actually, that's not totally true. HiveUtils doesn't have the same functionality. The Spring Framework is pretty huge and offers things like:
1) Great Hibernate integration. Using Hibernate without Spring is doing things the hard way. Spring builds on Hibernate's great foundation. 2) Declarative Transaction Management. Hivemind does not have any support for declarative transactions. This builds on the support for Hibernate and simply eliminates rafts of Java code required to manage transactions. 3) Great raw JDBC DAO support. For those times when you go straight at the database. Spring's handling of JDBC is phenomenal. Makes you wonder why JDBC doesn't do the things Spring does. Spring simplifies JDBC querying and ResultSet iteration immensely. 4) Quartz Job Scheduling. Spring has full support for scheduling jobs using Quartz. Very handy. 5) Email bean support. Work with email in a very simple way. 6) Remote invocation support. Use your beans directly with RMI, SOAP, HTTP, Burlap, and Hessian, with no additional code. Remoting has never been this easy. And that's just the tip of the iceberg. Hivemind is a great product and very good at what it does. In fact, it's probably better at dependency injection than Spring is, but it's not intended to do everything Spring does. -----Original Message----- From: Vinicius Carvalho [mailto:[EMAIL PROTECTED] Sent: Friday, July 29, 2005 8:25 AM To: Tapestry users Subject: Re: Tapestry and Hibernate Well HiveUtils have the same functionallity as Spring. I understand you are in a deadline, but since Tapestry 4.0 has full Hivemind support, adding Hivemind + HiveUtils to your project would make things easier for you in the future. On 7/29/05, Will Scheidegger <[EMAIL PROTECTED]> wrote: > I just recently started my first Hibernate/Tapestry project and - to > make the learning curve even a bit steeper - added Springframework to > it, which was new to me too. I'm sure I'm only scratching the surface > of Springframework for now, but it works well for the problem you've > described. I had to invest maybe 1 additional day to integrate it. > > Cheers, > Will > > On 28.07.2005, at 21:52, Chris Chiappone wrote: > > > I have been developing an application using tapestry 3.0.3 and > > hibernate 3.0.2. Took a while to get everything working correctly, > > and learning both of the frameworks. I have a decent amount of the > > application written and now am running into > > LazyInitializationException in certain places. Its strange because I > > can't expain why I get the exception and other times I don't. > > > > I've read that using the Spring Framework would fix this problem, but > > wonder if its worth learning another framework and trying to integrate > > it into my application. I'm on a deadline and this may just take to > > long. I've also extended BaseEngine to do this trying to relieve my > > problem: > > > > > > protected void cleanupAfterRequest(IRequestCycle cycle) { > > try { > > > > HibernateUtil.commitTransaction(); > > > > if (killSession) { > > try { > > HttpSession session = > > cycle.getRequestContext() > > .getSession(); > > > > if (session != null) { > > log.info("Logging out > > user."); > > session.invalidate(); > > } > > } catch (IllegalStateException ex) { > > // Ignore. > > } > > > > } > > } catch (NestedRuntimeException nre) { > > > > } finally { > > HibernateUtil.closeSession(); > > } > > } > > Yet I still run into this exception: > > > > Unable to resolve expression 'currentCompany.name' for > > [EMAIL PROTECTED] > > binding: ExpressionBinding[EditProfile currentCompany.name] > > location: context:/WEB-INF/EditProfile.page, line 41, column 65 > > > > ognl.OgnlException > > name > > > > org.hibernate.LazyInitializationException > > could not initialize proxy - the owning Session was closed > > messages: [Ljava.lang.String;@cdf872 > > throwableCount: 1 > > throwables: [Ljava.lang.Throwable;@7227a8 > > Stack Trace: > > org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInit > > ializer.java:53) > > org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractL > > azyInitializer.java:84) > > org.hibernate.proxy.CGLIBLazyInitializer.intercept(CGLIBLazyInitializer > > .java:134) > > domain.company.Company$$EnhancerByCGLIB$$f029e618.getName(<generated>) > > sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.ja > > va:39) > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccesso > > rImpl.java:25) > > java.lang.reflect.Method.invoke(Method.java:585) > > > > > > Is there anything else I should try. Or is the spring framework the > > way to go. If so is it easy to integrate into an existing > > applicatoin? Thanks. > > -- > > ~chris > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
