[JCA/JBoss] - xa-datasource configuraton problem
by rajika
hi,
I am trying to use derby xa-datasource (two data sources) for transaction purposes. My *-xa-ds.xml looks like follows.
<datasources>
| <xa-datasource>
| <jndi-name>XADerbyDS</jndi-name>
|
| <isSameRM-override-value>false</isSameRM-override-value>
| <xa-datasource-class>org.apache.derby.jdbc.EmbeddedXADataSource</xa-datasource-class>
| <xa-datasource-property name="URL">jdbc:derby://localhost:1527/esbdb;create=false</xa-datasource-property>
| <xa-datasource-property name="User">esb</xa-datasource-property>
| <xa-datasource-property name="Password">esb</xa-datasource-property>
|
| <metadata>
| <type-mapping>Derby</type-mapping>
| </metadata>
| </xa-datasource>
|
| <xa-datasource>
| <jndi-name>XADerbyDS1</jndi-name>
| <isSameRM-override-value>false</isSameRM-override-value>
| <xa-datasource-class>org.apache.derby.jdbc.EmbeddedXADataSource</xa-datasource-class>
| <xa-datasource-property name="URL">jdbc:derby://localhost:1527/esbdb1;create=false</xa-datasource-property>
| <xa-datasource-property name="User">esb</xa-datasource-property>
| <xa-datasource-property name="Password">esb</xa-datasource-property>
| <metadata>
| <type-mapping>Derby</type-mapping>
| </metadata>
| </xa-datasource>
|
| </datasources>
|
When I deploy it and try to use the data source I am having the following exception. I feel like I am missing something from the above configuration, but I am not sure. Any help to fix the problem is highly appreciated. Thanks in advance.
| 14:43:16,924 WARN [JBossManagedConnectionPool] Throwable while attempting to get a new connection: null
| org.jboss.resource.JBossResourceException: Could not create connection; - nested throwable: (org.jboss.resource.JBossResourceException: Could not find accessor on XADataSource: ; - nested throwable: (java.lang.NoSuchMethodException: org.apache.derby.jdbc.EmbeddedXADataSource.setURL(java.lang.String)))
| at org.jboss.resource.adapter.jdbc.xa.XAManagedConnectionFactory.getXAManagedConnection(XAManagedConnectionFactory.java:465)
| at org.jboss.resource.adapter.jdbc.xa.XAManagedConnectionFactory.createManagedConnection(XAManagedConnectionFactory.java:409)
| at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.createConnectionEventListener(InternalManagedConnectionPool.java:611)
| at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.getConnection(InternalManagedConnectionPool.java:257)
| at org.jboss.resource.connectionmanager.JBossManagedConnectionPool$BasePool.getConnection(JBossManagedConnectionPool.java:644)
| at org.jboss.resource.connectionmanager.BaseConnectionManager2.getManagedConnection(BaseConnectionManager2.java:404)
| at org.jboss.resource.connectionmanager.TxConnectionManager.getManagedConnection(TxConnectionManager.java:381)
| at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:496)
| at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseConnectionManager2.java:941)
| at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:89)
| at org.apache.synapse.mediators.db.AbstractDBMediator.getPreparedStatement(AbstractDBMediator.java:177)
| at org.apache.synapse.mediators.db.DBReportMediator.processStatement(DBReportMediator.java:40)
| at org.apache.synapse.mediators.db.AbstractDBMediator.mediate(AbstractDBMediator.java:102)
| at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:60)
| at org.apache.synapse.mediators.filters.OutMediator.mediate(OutMediator.java:55)
| at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:60)
| at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:115)
| at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:131)
| at org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseCallbackReceiver.java:339)
| at org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbackReceiver.java:135)
| at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:178)
| at org.apache.synapse.transport.nhttp.ClientWorker.run(ClientWorker.java:230)
| at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:58)
| at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
| at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
| at java.lang.Thread.run(Thread.java:595)
| Caused by: org.jboss.resource.JBossResourceException: Could not find accessor on XADataSource: ; - nested throwable: (java.lang.NoSuchMethodException: org.apache.derby.jdbc.EmbeddedXADataSource.setURL(java.lang.String))
| at org.jboss.resource.adapter.jdbc.xa.XAManagedConnectionFactory.getXADataSource(XAManagedConnectionFactory.java:602)
| at org.jboss.resource.adapter.jdbc.xa.XAManagedConnectionFactory.getXAManagedConnection(XAManagedConnectionFactory.java:449)
| ... 25 more
| Caused by: java.lang.NoSuchMethodException: org.apache.derby.jdbc.EmbeddedXADataSource.setURL(java.lang.String)
| at java.lang.Class.getMethod(Class.java:1581)
| at org.jboss.resource.adapter.jdbc.xa.XAManagedConnectionFactory.getXADataSource(XAManagedConnectionFactory.java:572)
| ... 26 more
| 14:43:16,927 INFO [STDOUT] 14:43:16,927 ERROR [DBReportMediator] Error execuring insert statement : update company set price=? where name =? against DataSource : localhost:1099
| org.jboss.util.NestedSQLException: Could not create connection; - nested throwable: (org.jboss.resource.JBossResourceException: Could not find accessor on XADataSource: ; - nested throwable: (java.lang.NoSuchMethodException: org.apache.derby.jdbc.EmbeddedXADataSource.setURL(java.lang.String))); - nested throwable: (org.jboss.resource.JBossResourceException: Could not create connection; - nested throwable: (org.jboss.resource.JBossResourceException: Could not find accessor on XADataSource: ; - nested throwable: (java.lang.NoSuchMethodException: org.apache.derby.jdbc.EmbeddedXADataSource.setURL(java.lang.String))))
| at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:95)
| at org.apache.synapse.mediators.db.AbstractDBMediator.getPreparedStatement(AbstractDBMediator.java:177)
| at org.apache.synapse.mediators.db.DBReportMediator.processStatement(DBReportMediator.java:40)
| at org.apache.synapse.mediators.db.AbstractDBMediator.mediate(AbstractDBMediator.java:102)
| at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:60)
| at org.apache.synapse.mediators.filters.OutMediator.mediate(OutMediator.java:55)
| at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:60)
| at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:115)
| at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:131)
| at org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseCallbackReceiver.java:339)
| at org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbackReceiver.java:135)
| at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:178)
| at org.apache.synapse.transport.nhttp.ClientWorker.run(ClientWorker.java:230)
| at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:58)
| at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
| at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
| at java.lang.Thread.run(Thread.java:595)
| Caused by: org.jboss.resource.JBossResourceException: Could not create connection; - nested throwable: (org.jboss.resource.JBossResourceException: Could not find accessor on XADataSource: ; - nested throwable: (java.lang.NoSuchMethodException: org.apache.derby.jdbc.EmbeddedXADataSource.setURL(java.lang.String)))
| at org.jboss.resource.adapter.jdbc.xa.XAManagedConnectionFactory.getXAManagedConnection(XAManagedConnectionFactory.java:465)
| at org.jboss.resource.adapter.jdbc.xa.XAManagedConnectionFactory.createManagedConnection(XAManagedConnectionFactory.java:409)
| at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.createConnectionEventListener(InternalManagedConnectionPool.java:611)
| at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.getConnection(InternalManagedConnectionPool.java:257)
| at org.jboss.resource.connectionmanager.JBossManagedConnectionPool$BasePool.getConnection(JBossManagedConnectionPool.java:644)
| at org.jboss.resource.connectionmanager.BaseConnectionManager2.getManagedConnection(BaseConnectionManager2.java:404)
| at org.jboss.resource.connectionmanager.TxConnectionManager.getManagedConnection(TxConnectionManager.java:381)
| at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:496)
| at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseConnectionManager2.java:941)
| at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:89)
| ... 16 more
| Caused by: org.jboss.resource.JBossResourceException: Could not find accessor on XADataSource: ; - nested throwable: (java.lang.NoSuchMethodException: org.apache.derby.jdbc.EmbeddedXADataSource.setURL(java.lang.String))
| at org.jboss.resource.adapter.jdbc.xa.XAManagedConnectionFactory.getXADataSource(XAManagedConnectionFactory.java:602)
| at org.jboss.resource.adapter.jdbc.xa.XAManagedConnectionFactory.getXAManagedConnection(XAManagedConnectionFactory.java:449)
| ... 25 more
| Caused by: java.lang.NoSuchMethodException: org.apache.derby.jdbc.EmbeddedXADataSource.setURL(java.lang.String)
| at java.lang.Class.getMethod(Class.java:1581)
| at org.jboss.resource.adapter.jdbc.xa.XAManagedConnectionFactory.getXADataSource(XAManagedConnectionFactory.java:572)
| ... 26 more
| 14:43:16,928 INFO [STDOUT] 14:43:16,928 ERROR [SERVICE_LOGGER] Error execuring insert statement : update company set price=? where name =? against DataSource : localhost:1099
| org.jboss.util.NestedSQLException: Could not create connection; - nested throwable: (org.jboss.resource.JBossResourceException: Could not find accessor on XADataSource: ; - nested throwable: (java.lang.NoSuchMethodException: org.apache.derby.jdbc.EmbeddedXADataSource.setURL(java.lang.String))); - nested throwable: (org.jboss.resource.JBossResourceException: Could not create connection; - nested throwable: (org.jboss.resource.JBossResourceException: Could not find accessor on XADataSource: ; - nested throwable: (java.lang.NoSuchMethodException: org.apache.derby.jdbc.EmbeddedXADataSource.setURL(java.lang.String))))
| at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:95)
| at org.apache.synapse.mediators.db.AbstractDBMediator.getPreparedStatement(AbstractDBMediator.java:177)
| at org.apache.synapse.mediators.db.DBReportMediator.processStatement(DBReportMediator.java:40)
| at org.apache.synapse.mediators.db.AbstractDBMediator.mediate(AbstractDBMediator.java:102)
| at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:60)
| at org.apache.synapse.mediators.filters.OutMediator.mediate(OutMediator.java:55)
| at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:60)
| at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:115)
| at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:131)
| at org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseCallbackReceiver.java:339)
| at org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbackReceiver.java:135)
| at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:178)
| at org.apache.synapse.transport.nhttp.ClientWorker.run(ClientWorker.java:230)
| at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:58)
| at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
| at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
| at java.lang.Thread.run(Thread.java:595)
| Caused by: org.jboss.resource.JBossResourceException: Could not create connection; - nested throwable: (org.jboss.resource.JBossResourceException: Could not find accessor on XADataSource: ; - nested throwable: (java.lang.NoSuchMethodException: org.apache.derby.jdbc.EmbeddedXADataSource.setURL(java.lang.String)))
| at org.jboss.resource.adapter.jdbc.xa.XAManagedConnectionFactory.getXAManagedConnection(XAManagedConnectionFactory.java:465)
| at org.jboss.resource.adapter.jdbc.xa.XAManagedConnectionFactory.createManagedConnection(XAManagedConnectionFactory.java:409)
| at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.createConnectionEventListener(InternalManagedConnectionPool.java:611)
| at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.getConnection(InternalManagedConnectionPool.java:257)
| at org.jboss.resource.connectionmanager.JBossManagedConnectionPool$BasePool.getConnection(JBossManagedConnectionPool.java:644)
| at org.jboss.resource.connectionmanager.BaseConnectionManager2.getManagedConnection(BaseConnectionManager2.java:404)
| at org.jboss.resource.connectionmanager.TxConnectionManager.getManagedConnection(TxConnectionManager.java:381)
| at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:496)
| at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseConnectionManager2.java:941)
| at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:89)
| ... 16 more
| Caused by: org.jboss.resource.JBossResourceException: Could not find accessor on XADataSource: ; - nested throwable: (java.lang.NoSuchMethodException: org.apache.derby.jdbc.EmbeddedXADataSource.setURL(java.lang.String))
| at org.jboss.resource.adapter.jdbc.xa.XAManagedConnectionFactory.getXADataSource(XAManagedConnectionFactory.java:602)
| at org.jboss.resource.adapter.jdbc.xa.XAManagedConnectionFactory.getXAManagedConnection(XAManagedConnectionFactory.java:449)
| ... 25 more
| Caused by: java.lang.NoSuchMethodException: org.apache.derby.jdbc.EmbeddedXADataSource.setURL(java.lang.String)
| at java.lang.Class.getMethod(Class.java:1581)
| at org.jboss.resource.adapter.jdbc.xa.XAManagedConnectionFactory.getXADataSource(XAManagedConnectionFactory.java:572)
| ... 26 more
| 14:43:16,929 INFO [STDOUT] 14:43:16,929 WARN [FaultHandler] ERROR_CODE : 0
| 14:43:16,929 INFO [STDOUT] 14:43:16,929 WARN [FaultHandler] ERROR_MESSAGE : Error execuring insert statement : update company set price=? where name =? against DataSource : localhost:1099
| 14:43:16,929 INFO [STDOUT] 14:43:16,929 WARN [FaultHandler] ERROR_DETAIL : org.apache.synapse.SynapseException: Error execuring insert statement : update company set price=? where name =? against DataSource : localhost:1099
| at org.apache.synapse.mediators.AbstractMediator.handleException(AbstractMediator.java:275)
| at org.apache.synapse.mediators.db.DBReportMediator.processStatement(DBReportMediator.java:61)
| at org.apache.synapse.mediators.db.AbstractDBMediator.mediate(AbstractDBMediator.java:102)
| at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:60)
| at org.apache.synapse.mediators.filters.OutMediator.mediate(OutMediator.java:55)
| at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:60)
| at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:115)
| at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:131)
| at org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseCallbackReceiver.java:339)
| at org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbackReceiver.java:135)
| at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:178)
| at org.apache.synapse.transport.nhttp.ClientWorker.run(ClientWorker.java:230)
| at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:58)
| at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
| at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
| at java.lang.Thread.run(Thread.java:595)
| Caused by: org.jboss.util.NestedSQLException: Could not create connection; - nested throwable: (org.jboss.resource.JBossResourceException: Could not find accessor on XADataSource: ; - nested throwable: (java.lang.NoSuchMethodException: org.apache.derby.jdbc.EmbeddedXADataSource.setURL(java.lang.String))); - nested throwable: (org.jboss.resource.JBossResourceException: Could not create connection; - nested throwable: (org.jboss.resource.JBossResourceException: Could not find accessor on XADataSource: ; - nested throwable: (java.lang.NoSuchMethodException: org.apache.derby.jdbc.EmbeddedXADataSource.setURL(java.lang.String))))
| at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:95)
| at org.apache.synapse.mediators.db.AbstractDBMediator.getPreparedStatement(AbstractDBMediator.java:177)
| at org.apache.synapse.mediators.db.DBReportMediator.processStatement(DBReportMediator.java:40)
| ... 14 more
| Caused by: org.jboss.resource.JBossResourceException: Could not create connection; - nested throwable: (org.jboss.resource.JBossResourceException: Could not find accessor on XADataSource: ; - nested throwable: (java.lang.NoSuchMethodException: org.apache.derby.jdbc.EmbeddedXADataSource.setURL(java.lang.String)))
| at org.jboss.resource.adapter.jdbc.xa.XAManagedConnectionFactory.getXAManagedConnection(XAManagedConnectionFactory.java:465)
| at org.jboss.resource.adapter.jdbc.xa.XAManagedConnectionFactory.createManagedConnection(XAManagedConnectionFactory.java:409)
| at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.createConnectionEventListener(InternalManagedConnectionPool.java:611)
| at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.getConnection(InternalManagedConnectionPool.java:257)
| at org.jboss.resource.connectionmanager.JBossManagedConnectionPool$BasePool.getConnection(JBossManagedConnectionPool.java:644)
| at org.jboss.resource.connectionmanager.BaseConnectionManager2.getManagedConnection(BaseConnectionManager2.java:404)
| at org.jboss.resource.connectionmanager.TxConnectionManager.getManagedConnection(TxConnectionManager.java:381)
| at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:496)
| at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseConnectionManager2.java:941)
| at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:89)
| ... 16 more
| Caused by: org.jboss.resource.JBossResourceException: Could not find accessor on XADataSource: ; - nested throwable: (java.lang.NoSuchMethodException: org.apache.derby.jdbc.EmbeddedXADataSource.setURL(java.lang.String))
| at org.jboss.resource.adapter.jdbc.xa.XAManagedConnectionFactory.getXADataSource(XAManagedConnectionFactory.java:602)
| at org.jboss.resource.adapter.jdbc.xa.XAManagedConnectionFactory.getXAManagedConnection(XAManagedConnectionFactory.java:449)
| ... 25 more
| Caused by: java.lang.NoSuchMethodException: org.apache.derby.jdbc.EmbeddedXADataSource.setURL(java.lang.String)
| at java.lang.Class.getMethod(Class.java:1581)
| at org.jboss.resource.adapter.jdbc.xa.XAManagedConnectionFactory.getXADataSource(XAManagedConnectionFactory.java:572)
| ... 26 more
|
|
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4247795#4247795
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4247795
16 years, 8 months
[JBoss AOP] - Aspects not invoking in EJB SLSB
by whitingjr
Hi,
I am having problems getting my pointcuts to execute when deployed to AS 5.1.0.GA. The aspected objects are precompiled and use declarative configuration.
The same aspected objects are being invoked using JUnit tests and these work.
My application is organised identically to the packaging explained in the reference manual instructions. The application is an EAR file with an aop module first and some EJB jars. See this link,
http://jboss.org/jbossaop/docs/2.0.0.GA/docs/aspect-framework/reference/e...
The annotated objects are EJB3 entities with specific behaviour I want them to have when running in container. Pointcuts are configured for the getter and setter methods.
| <aspect name="writeaspect" class="com.acme.aspects.WriteAspect"/>
|
| <bind pointcut="execution(* com.acme.model.Bike->set*(java.lang.String))">
| <advice name="write" aspect="writeaspect" />
| </bind>
|
Is what I am doing allowed/possible inside an EJB ?
Also when calling the EJB for first time I see this message. Can I ignore this ?
2009-08-03 23:57:06,029 WARN [org.jboss.ejb3.interceptors.aop.InterceptorsFactory] (WorkerThread#0[127.0.0.1:35022]) EJBTHREE-1246: Do not use InterceptorsFactory with a ManagedObjectAdvisor, InterceptorRegistry should be used via the bean container
Thanks,
Jeremy
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4247784#4247784
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4247784
16 years, 8 months
[JNDI/Naming/Network] - Can't access java namespace
by diegomansua
Hi. I have deployed an old version of JForum, and I've declared its datasource like this:
| <xa-datasource>
| <jndi-name>forum</jndi-name>
| <xa-datasource-class>org.postgresql.xa.PGXADataSource</xa-datasource-class>
| <xa-datasource-property name="ServerName">localhost</xa-datasource-property>
| <xa-datasource-property name="PortNumber">5432</xa-datasource-property>
| <xa-datasource-property name="DatabaseName">forum</xa-datasource-property>
| <user-name>test</user-name>
| <password>test</password>
| <transaction-isolation>TRANSACTION_SERIALIZABLE</transaction-isolation>
| <min-pool-size>1</min-pool-size>
| <max-pool-size>10</max-pool-size>
| <blocking-timeout-millis>5000</blocking-timeout-millis>
| <idle-timeout-minutes>15</idle-timeout-minutes>
| <security-domain/>
| <application-managed-security/>
| </xa-datasource>
|
When JForum tries to get the datasource reference, it gets a NameNotFoundException. The code is like this:
| Context context = new InitialContext();
| this.ds = (DataSource)context.lookup(SystemGlobals.getValue(ConfigKeys.DATABASE_DATASOURCE_NAME));
|
Where the value returned by SystemGlobals.getValue(ConfigKeys.DATABASE_DATASOURCE_NAME) is "java:forum".
If I access the JNDIView mbean from the JMX console, I can see the datasource correctly bound:
| java: Namespace
|
| +- forum (class: org.jboss.resource.adapter.jdbc.WrapperDataSource)
|
I also tried using a reference bound to the comp/env context of this app, using this inside jboss-web.xml:
| <?xml version="1.0" encoding="UTF-8"?>
| <jboss-web>
| <resource-ref>
| <res-ref-name>jdbc/forum</res-ref-name>
| <jndi-name>java:forum</jndi-name>
| </resource-ref>
| </jboss-web>
|
And this inside web.xml:
| <resource-ref>
| <description>Hibernate</description>
| <res-ref-name>jdbc/forum</res-ref-name>
| <res-type>javax.sql.DataSource</res-type>
| <res-auth>Container</res-auth>
| </resource-ref>
|
And again, it shows in JNDIView but I always get a NameNotFoundException when performing the lookup java:/comp/env/jdbc/forum:
| java:comp namespace of the forum.war application:
|
| +- UserTransaction[link -> UserTransaction] (class: javax.naming.LinkRef)
| +- env (class: org.jnp.interfaces.NamingContext)
| | +- jdbc (class: org.jnp.interfaces.NamingContext)
| | | +- forum[link -> java:forum] (class: javax.naming.LinkRef)
|
The only way I can make it work is by setting use-java-context to false in the datasource declaration, so the datasource is bound to the global context, and JForum can see it, but I'd like to avoid this.
With a newer JForum version, this doesn't happen, but I think the JNDI lookup code is exactly the same, and any of the apps have JNDI specific configuration.
Thanks in advance
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4247770#4247770
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4247770
16 years, 8 months