Hi Alex,
Yes, I downloaded the source and tracked it down to a SQL problem but it looks
fine. In my test servlet I only use the User ejb (although I have defined a
few others, one of which has a relation with User).
Here is the relevant data:
Stack Trace:
anonymous wrote : java.lang.IllegalStateException:
createBeanClassInstanceCommand == null
| at
org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.createBeanClassInstance(JDBCStoreManager.java:570)
| at
org.jboss.ejb.plugins.CMPPersistenceManager.createBeanClassInstance(CMPPersistenceManager.java:124)
| at
org.jboss.ejb.EntityContainer.createBeanClassInstance(EntityContainer.java:224)
| at
org.jboss.ejb.plugins.AbstractInstancePool.get(AbstractInstancePool.java:146)
| at
org.jboss.ejb.plugins.EntityInstanceInterceptor.invokeHome(EntityInstanceInterceptor.java:96)
| at
org.jboss.ejb.plugins.EntityLockInterceptor.invokeHome(EntityLockInterceptor.java:61)
| at
org.jboss.ejb.plugins.EntityCreationInterceptor.invokeHome(EntityCreationInterceptor.java:28)
| at
org.jboss.ejb.plugins.CallValidationInterceptor.invokeHome(CallValidationInterceptor.java:41)
| at
org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:109)
| at
org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:316)
| at
org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxInterceptorCMT.java:129)
| at
org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(SecurityInterceptor.java:106)
| at
org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogInterceptor.java:120)
| at
org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invokeHome(ProxyFactoryFinderInterceptor.java:93)
| at
org.jboss.ejb.EntityContainer.internalInvokeHome(EntityContainer.java:508)
| at org.jboss.ejb.Container.invoke(Container.java:881)
| at
org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invokeHome(BaseLocalProxyFactory.java:342)
| at
org.jboss.ejb.plugins.local.LocalHomeProxy.invoke(LocalHomeProxy.java:118)
| at $Proxy112.findAll(Unknown Source)
|
The ejb-jar.xml entry is
<query>
| <query-method>
| <method-name>findAll</method-name>
| <method-params>
| </method-params>
| </query-method>
| <ejb-ql>![CDATA[SELECT DISTINCT OBJECT(t) FROM User t]]</ejb-ql>
| </query>
|
(The defined attributes match exactly the field definitions, all text and a
long int for the primary key).
The jbosscmp-jdbc.xml file includes
<entity>
| <ejb-name>User</ejb-name>
| <create-table>true</create-table>
| <remove-table>true</remove-table>
| <read-only>false</read-only>
| <pk-constraint>true</pk-constraint>
| <table-name>user</table-name>
|
| <cmp-field>
| <field-name>id</field-name>
| <column-name>id</column-name>
|
| </cmp-field>
| <cmp-field>
| <field-name>firstName</field-name>
| <column-name>firstName</column-name>
|
| </cmp-field>
| <cmp-field>
| <field-name>lastName</field-name>
| <column-name>lastName</column-name>
|
| </cmp-field>
| <cmp-field>
| <field-name>email</field-name>
| <column-name>email</column-name>
|
| </cmp-field>
| <cmp-field>
| <field-name>phone</field-name>
| <column-name>phone</column-name>
|
| </cmp-field>
| <cmp-field>
| <field-name>tieline</field-name>
| <column-name>tieline</column-name>
|
| </cmp-field>
| <cmp-field>
| <field-name>password</field-name>
| <column-name>password</column-name>
|
| </cmp-field>
| <cmp-field>
| <field-name>title</field-name>
| <column-name>title</column-name>
|
| </cmp-field>
| <cmp-field>
| <field-name>loginName</field-name>
| <column-name>loginName</column-name>
|
| </cmp-field>
|
| </entity>
|
Additionally, I turned on trace logging and get the following:
anonymous wrote : 2004-12-28 08:57:23,125 TRACE
[org.jboss.ejb.plugins.LogInterceptor] Start method=findAll
| 2004-12-28 08:57:23,125 TRACE [org.jboss.ejb.plugins.TxInterceptorCMT]
Current transaction in MI is null2004-12-28 08:57:23,125 TRACE
[org.jboss.ejb.plugins.TxInterceptorCMT] TX_REQUIRED for findAll timeout=0
| 2004-12-28 08:57:23,125 TRACE [org.jboss.ejb.plugins.TxInterceptorCMT]
Thread came in with tx null
| 2004-12-28 08:57:23,125 TRACE [org.jboss.ejb.plugins.TxInterceptorCMT]
Starting new tx TransactionImpl:XidImpl[FormatId=257, GlobalId=LJ301825/5,
BranchQual=, localId=5]
| 2004-12-28 08:57:23,125 TRACE [org.jboss.ejb.plugins.EntityInstancePool]
Get instance [EMAIL PROTECTED] epi.cmp.UserCMP
| 2004-12-28 08:57:23,125 TRACE [org.jboss.ejb.plugins.TxInterceptorCMT]
TxInterceptorCMT: In finally
| 2004-12-28 08:57:23,125 ERROR [org.jboss.ejb.plugins.LogInterceptor]
RuntimeException in method: public abstract java.util.Collection
epi.cmp.UserLocalHome.findAll() throws javax.ejb.FinderException:
| java.lang.IllegalStateException: createBeanClassInstanceCommand == null
| at
org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.createBeanClassInstance(JDBCStoreManager.java:570)
| at
org.jboss.ejb.plugins.CMPPersistenceManager.createBeanClassInstance(CMPPersistenceManager.java:124)
| at
org.jboss.ejb.EntityContainer.createBeanClassInstance(EntityContainer.java:224)
| at
org.jboss.ejb.plugins.AbstractInstancePool.get(AbstractInstancePool.java:146)
| at
org.jboss.ejb.plugins.EntityInstanceInterceptor.invokeHome(EntityInstanceInterceptor.java:96)
| at
org.jboss.ejb.plugins.EntityLockInterceptor.invokeHome(EntityLockInterceptor.java:61)
| at
org.jboss.ejb.plugins.EntityCreationInterceptor.invokeHome(EntityCreationInterceptor.java:28)
| at
org.jboss.ejb.plugins.CallValidationInterceptor.invokeHome(CallValidationInterceptor.java:41)
| at
org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:109)
| at
org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:316)
| at
org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxInterceptorCMT.java:129)
| at
org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(SecurityInterceptor.java:106)
| at
org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogInterceptor.java:120)
| at
org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invokeHome(ProxyFactoryFinderInterceptor.java:93)
| at
org.jboss.ejb.EntityContainer.internalInvokeHome(EntityContainer.java:508)
| at org.jboss.ejb.Container.invoke(Container.java:881)
| at
org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invokeHome(BaseLocalProxyFactory.java:342)
| at
org.jboss.ejb.plugins.local.LocalHomeProxy.invoke(LocalHomeProxy.java:118)
| at $Proxy130.findAll(Unknown Source)
| at EJBServlet.doGet(Unknown Source)
| at javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
| at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
| at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
| at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
| at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
| at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
| at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
| at
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
| at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
| at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
| at
org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:157)
| at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
| at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
| at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
| at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
| at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
| at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
| at
org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:122)
| at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
| at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
| at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
| at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
| at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
| at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
| at
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
| at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
| at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
| at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
| at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
| at java.lang.Thread.run(Thread.java:534)
| 2004-12-28 08:57:23,125 TRACE [org.jboss.ejb.plugins.LogInterceptor] End
method=findAll
|
(I italicized and bolded the things which I don't understand yet)
I had thought I would get a translation of the sql being passed to the database
but I didn't. Perhaps that means that the problem is before/during the
generation (translation) of the sql.
Thanks Alex,
Tony
View the original post :
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3860025#3860025
Reply to the post :
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3860025
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/
_______________________________________________
JBoss-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jboss-user