Hi Joe,
We've been looking at this since yesterday - check your email, you've been notified more than once by our staff.
Announcement
Collapse
No announcement yet.
X
-
Is there any more information that I can provide to help diagnose the problem?
Leave a comment:
-
I get the same error using the latest build of 3.0p,
16:59:13,907 INFO [STDOUT] === 2012-08-14 16:59:13,907 [main] INFO ISCInit - Isomorphic SmartClient Framework (v8.2p_2012-08-14/Enterprise Deployment 2012-08-14) - Initialization Complete
...
17:00:15,499 INFO [STDOUT] === 2012-08-14 17:00:15,499 [80-2] DEBUG HibernateDataSource - Looking up session factory with lookup style 'spring'
17:00:15,540 INFO [STDOUT] === 2012-08-14 17:00:15,540 [80-2] WARN HibernateDataSource - Factory bean is not an instance of either org.springframework.orm.hibernate3.LocalSessionFactoryBean or org.springframework.orm.hibernate4.LocalSessionFactoryBean class - is Spring correctly installed and configured?
17:00:15,543 INFO [STDOUT] === 2012-08-14 17:00:15,541 [80-2] ERROR DataSourceLoader - Exception while attempting to load a DataSource
java.lang.Exception: Failed to lookup Hibernate sessionFactory via Spring bean &sessionFactory.
at com.isomorphic.hibernate.HibernateDataSource.initStaticConfigAndSessionFactory(HibernateDataSource.java:524)
at com.isomorphic.hibernate.HibernateDataSource.getConfigFromMappedClass(HibernateDataSource.java:4841)
at com.isomorphic.hibernate.HibernateDataSource.fromMappedClass(HibernateDataSource.java:4819)
at com.isomorphic.hibernate.HibernateDataSource.init(HibernateDataSource.java:172)
at com.isomorphic.datasource.DataSource.initialize(DataSource.java:374)
at com.isomorphic.datasource.BasicDataSource.fromConfig(BasicDataSource.java:158)
at com.isomorphic.datasource.DataSource.fromConfig(DataSource.java:359)
at com.isomorphic.datasource.FileSystemDSRepo.loadDS(FileSystemDSRepo.java:110)
at com.isomorphic.datasource.DataSource.forName(DataSource.java:178)
at com.isomorphic.datasource.DataSource.forName(DataSource.java:170)
at com.isomorphic.datasource.DataSource.forName(DataSource.java:165)
at com.isomorphic.datasource.PoolableDataSourceFactory.makeUnpooledObject(PoolableDataSourceFactory.java:95)
at com.isomorphic.datasource.PoolableDataSourceFactory.makeObject(PoolableDataSourceFactory.java:102)
at com.isomorphic.pool.PoolManager.borrowObject(PoolManager.java:82)
at com.isomorphic.datasource.DataSourceManager.getDataSource(DataSourceManager.java:87)
at com.isomorphic.servlet.DataSourceLoader.processRequest(DataSourceLoader.java:109)
at com.isomorphic.servlet.DataSourceLoader.doGet(DataSourceLoader.java:83)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:152)
Leave a comment:
-
I updated the servlet to also perform some comparisons against org.hibernate.SessionFactory.
Code:final boolean assignableFrom = SessionFactory.class.isAssignableFrom(sessionFactoryBean.getClass()); out.println("<br/>"); out.println("assignableFrom: " + assignableFrom); final boolean isAnInstanceOf = (sessionFactoryBean instanceof SessionFactory); out.println("<br/>"); out.println("instanceOf: " + isAnInstanceOf);
Code:sessionFactoryBean class: class org.hibernate.internal.SessionFactoryImpl assignableFrom: true instanceOf: true
Leave a comment:
-
I wrote a quick servlet to see what was coming back from the Spring context:
Code:public class HelloServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { resp.setContentType("text/html"); final PrintWriter out = resp.getWriter(); out.println("<html><head><title>Hello</title></head><body>"); try { final WebApplicationContext applicationContext = WebApplicationContextUtils.getRequiredWebApplicationContext(this.getServletContext()); final Object sessionFactoryBean = applicationContext.getBean("sessionFactory"); out.println("sessionFactoryBean class: " + sessionFactoryBean.getClass()); } catch (Exception e) { out.println("<pre>"); e.printStackTrace(out); out.println("</pre>"); } out.println("</body></html>"); out.flush(); } }
Code:sessionFactoryBean class: class org.hibernate.internal.SessionFactoryImpl
Leave a comment:
-
I upgraded to Hibernate 4, so that I could use the appropriate LocalSessionFactoryBean directly. (The hibernate4 LocalSessionFactoryBean enables annotation scanning, rather than needing the Spring subclass for hibernate3 that enables annotation scanning.)
Now I get an error & stack trace:
Code:13:58:52,210 INFO [STDOUT] === 2012-08-14 13:58:52,210 [80-1] DEBUG DataSource - In DS.forName() for 'book' with DSRequest: null 13:58:52,211 INFO [STDOUT] === 2012-08-14 13:58:52,211 [80-1] DEBUG HibernateDataSource - Looking up session factory with lookup style 'spring' 13:58:52,211 INFO [STDOUT] === 2012-08-14 13:58:52,211 [80-1] WARN HibernateDataSource - Factory bean is not an instance of either org.springframework.orm.hibernate3.LocalSessionFactoryBean or org.springframework.orm.hibernate4.LocalSessionFactoryBean class - is Spring correctly installed and configured? 13:58:52,213 INFO [STDOUT] === 2012-08-14 13:58:52,211 [80-1] ERROR DataSourceLoader - Exception while attempting to load a DataSource java.lang.Exception: Failed to lookup Hibernate sessionFactory via Spring bean &sessionFactory. at com.isomorphic.hibernate.HibernateDataSource.initStaticConfigAndSessionFactory(HibernateDataSource.java:580) at com.isomorphic.hibernate.HibernateDataSource.getConfigFromMappedClass(HibernateDataSource.java:5025) at com.isomorphic.hibernate.HibernateDataSource.fromMappedClass(HibernateDataSource.java:5003) at com.isomorphic.hibernate.HibernateDataSource.init(HibernateDataSource.java:217) at com.isomorphic.datasource.DataSource.initialize(DataSource.java:400) at com.isomorphic.datasource.BasicDataSource.fromConfig(BasicDataSource.java:163) at com.isomorphic.datasource.DataSource.fromConfig(DataSource.java:385) at com.isomorphic.datasource.FileSystemDSRepo.loadDS(FileSystemDSRepo.java:110) at com.isomorphic.datasource.DataSource.forName(DataSource.java:204) at com.isomorphic.datasource.DataSource.forName(DataSource.java:195) at com.isomorphic.datasource.DataSource.forName(DataSource.java:184) at com.isomorphic.datasource.PoolableDataSourceFactory.makeUnpooledObject(PoolableDataSourceFactory.java:119) at com.isomorphic.datasource.PoolableDataSourceFactory.makeObject(PoolableDataSourceFactory.java:127) at com.isomorphic.pool.PoolManager.borrowObject(PoolManager.java:94) at com.isomorphic.datasource.DataSourceManager.getDataSource(DataSourceManager.java:89) at com.isomorphic.datasource.DataSourceManager.getDataSource(DataSourceManager.java:83) at com.isomorphic.servlet.DataSourceLoader.processRequest(DataSourceLoader.java:126) at com.isomorphic.servlet.DataSourceLoader.doGet(DataSourceLoader.java:94) at javax.servlet.http.HttpServlet.service(HttpServlet.java:617) at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:152) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:311) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:116) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:101) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) at org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:146) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:182) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:173) at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346) at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.isomorphic.servlet.CompressionFilter.doFilter(CompressionFilter.java:259) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235) at org.apache.catalina.core.StandardContextValve.__invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java) at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:183) at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:95) at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126) at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70) at org.apache.catalina.core.StandardHostValve.__invoke(StandardHostValve.java:127) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.jboss.web.tomcat.service.request.ActiveRequestResponseCacheValve.internalProcess(ActiveRequestResponseCacheValve.java:74) at org.jboss.web.tomcat.service.request.ActiveRequestResponseCacheValve.invoke(ActiveRequestResponseCacheValve.java:47) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:599) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:451) at java.lang.Thread.run(Thread.java:662)
Code:<bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"> <property name="dataSource" ref="myDataSource" /> <property name="packagesToScan" value="com.examples" /> <property name="hibernateProperties"> <value> hibernate.show_sql=true hibernate.validator.apply_to_ddl=false hibernate.validator.autoregister_listeners=false </value> </property> </bean>
Leave a comment:
-
Looking at the log, it doesn't seem to recognize that
Code:org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean
Code:org.springframework.orm.hibernate3.LocalSessionFactoryBean
Leave a comment:
-
3.1d Hibernate DataSource Regression
I'm trying to migrate a new application to 3.1d, as it seems likely that 3.1 will be released before development is complete.
The behavior of the HibernateDataSource, though, has changed. None of the annotated fields are being automatically declared in the auto-inherited datasource object.
Here is the annotated class:
Code:package com.examples; import java.util.Date; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.Table; @Entity @Table(name="BOOK") public class Book { private Long id; private String title; private Date datePublished; /** * @return the id */ @GeneratedValue(strategy = GenerationType.IDENTITY) @Id @Column(name="BOOK_ID") public Long getId() { return id; } /** * @param id the id to set */ public void setId(Long id) { this.id = id; } /** * @return the title */ @Column(name="BOOK_TITLE") public String getTitle() { return title; } /** * @param title the title to set */ public void setTitle(String title) { this.title = title; } /** * @return the datePublished */ @Column(name="DATE_PUBLISHED") public Date getDatePublished() { return datePublished; } /** * @param datePublished the datePublished to set */ public void setDatePublished(Date datePublished) { this.datePublished = datePublished; } }
Code:<DataSource ID="book" serverType="hibernate" beanClassName="com.examples.Book" schemaBean="com.examples.Book"> <fields> <field name="id" type="sequence" hidden="true" primaryKey="true" /> </fields> </DataSource>
Code:isc.DataSource.create({ ID:"book", inheritsFrom:isc.DataSource.create({ xmlFromConfig:"true", ID:"book_inheritsFrom", dataSourceVersion:"1", entityName:"com.samples.Book", serverType:"hibernate", generatedBy:"v8.2p_2012-04-30/Enterprise Deployment 2012-04-30", fields:[ { name:"id", type:"integer" }, { name:"title", type:"text" }, { name:"datePublished", type:"date" } ] }) , fields:[ { hidden:true, primaryKey:true, name:"id", type:"sequence" } ], serverType:"hibernate" })
Code:if (window.isc == undefined || window.isc.DataSource == undefined){ alert("Can't load DataSources - SmartClient runtime not loaded");}isc.DataSource.create({ allowAdvancedCriteria:true, ID:"book", autoDeriveSchema:true, inheritsFrom:isc.DataSource.create({ allowAdvancedCriteria:true, dropExtraFields:true, ID:"Book_inheritsFrom", serverType:"hibernate", generatedBy:"SNAPSHOT_v8.3d_2012-08-13/Enterprise Deployment 2012-08-13", fields:[ ] }) , fields:[ { hidden:true, primaryKey:true, name:"id", type:"sequence" } ], serverType:"hibernate" })
Last edited by joe.parks@hyperproductive.com; 15 Aug 2012, 04:34. Reason: Found the problem in latest 3.0p as wellTags: None
Leave a comment: