unable to connect to db from entity bean
sachin Jan 10, 2002 6:09 AMDear All,
I have a problem in accessing database from the entity bean. I am using BMP. I am using jboss 2.4.x.
The resource reference part of ejb-jar.xml is as:
<resource-ref>
<res-ref-name>java:/MacaDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
Also the related content of jboss.jcml is:
org.jboss.pool.jdbc.xa.wrapper.XADataSourceImpl
MacaDB
jdbc:postgresql://IP:Port/sid
user
pass
false
My standardjaws.xml content is:
java:/MacaDB
<type-mapping>MacaDB</type-mapping>
false
On trying to access db, i am getting an exception as:
TRANSACTION ROLLBACK EXCEPTION:Unable to connect to database. jdbc not bound; nested exception is:
javax.ejb.EJBException: Unable to connect to database. jdbc not bound
[UsersEB] javax.ejb.EJBException: Unable to connect to database. jdbc not bound
[UsersEB] at macamanageuser.UsersEB.setEntityContext(UsersEB.java:520)
[UsersEB] at org.jboss.ejb.EntityEnterpriseContext.(EntityEnterpriseContext.java:78)
[UsersEB] at org.jboss.ejb.plugins.EntityInstancePool.create(EntityInstancePool.java:81)
[UsersEB] at org.jboss.ejb.plugins.AbstractInstancePool.get(AbstractInstancePool.java:143)
[UsersEB] at org.jboss.ejb.plugins.EntityInstanceInterceptor.invokeHome(EntityInstanceInterceptor.java:143)
[UsersEB] at org.jboss.ejb.plugins.EntityLockInterceptor.invokeHome(EntityLockInterceptor.java:108)
[UsersEB] at org.jboss.ejb.plugins.TxInterceptorCMT.invokeNext(TxInterceptorCMT.java:135)
[UsersEB] at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:307)
[UsersEB] at org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxInterceptorCMT.java:86)
[UsersEB] at org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(SecurityInterceptor.java:103)
[UsersEB] at org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogInterceptor.java:106)
[UsersEB] at org.jboss.ejb.EntityContainer.invokeHome(EntityContainer.java:420)
[UsersEB] at org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoker.invokeHome(JRMPContainerInvoker.java:441)
[UsersEB] at org.jboss.ejb.plugins.jrmp.interfaces.HomeProxy.invokeHome(HomeProxy.java:237)
[UsersEB] at org.jboss.ejb.plugins.jrmp.interfaces.HomeProxy.invoke(HomeProxy.java:182)
[UsersEB] at $Proxy71.findByUser_UserName(Unknown Source)
[UsersEB] at macamanageuser.UsersSB.getUserId(UsersSB.java:435)
[UsersEB] at java.lang.reflect.Method.invoke(Native Method)
[UsersEB] at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:543)
[UsersEB] at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:87)
[UsersEB] at org.jboss.ejb.plugins.TxInterceptorCMT.invokeNext(TxInterceptorCMT.java:133)
[UsersEB] at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:307)
[UsersEB] at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:99)
[UsersEB] at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:128)
[UsersEB] at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:195)
[UsersEB] at org.jboss.ejb.StatelessSessionContainer.invoke(StatelessSessionContainer.java:286)
[UsersEB] at org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoker.invoke(JRMPContainerInvoker.java:489)
[UsersEB] at org.jboss.ejb.plugins.jrmp.interfaces.GenericProxy.invokeContainer(GenericProxy.java:335)
[UsersEB] at org.jboss.ejb.plugins.jrmp.interfaces.StatelessSessionProxy.invoke(StatelessSessionProxy.java:123)
[UsersEB] at $Proxy49.getUserId(Unknown Source)
The message is that 'jdbc not bound'. The ip,port,user and password needed to connect are correct.
Also i have included the driver string into the jboss.jcml.
There is something wrong on my part, but am unable to spot it.
Can anyone help me?
Thanks in advance for the help
Sachin