Hi all, One of our customers is facing this issue, which I am able to reproduce at my end as well. I have a JBoss 4.2.2 GA which is exposing an Oracle DS:
<datasources> | <local-tx-datasource> | <jndi-name>OracleDS</jndi-name> | <connection-url>jdbc:oracle:thin:@localhost:1521:orcl</connection-url> | <driver-class>oracle.jdbc.driver.OracleDriver</driver-class> | <user-name>jboss</user-name> | <password>password</password> | <use-java-context>false</use-java-context> | </local-tx-datasource> | </datasources> At another end, I have a Mule which looks up the DataSource via JNDI and uses it for Oracle AQ. When Mule tries to get the queue connection, an error occurs: | Caused by: oracle.jms.AQjmsException: JMS-112: Connection is invalid | at oracle.jms.AQjmsError.throwEx(AQjmsError.java:288) | at oracle.jms.AQjmsDBConnMgr.extraInit(AQjmsDBConnMgr.java:782) | at oracle.jms.AQjmsDBConnMgr.<init>(AQjmsDBConnMgr.java:354) | at oracle.jms.AQjmsConnection.<init>(AQjmsConnection.java:223) | at oracle.jms.AQjmsQueueConnectionFactory.createQueueConnection(AQjmsQueueConnectionFactory.java:340) | at org.mule.providers.oracle.jms.OracleJmsConnection.getQueueConnection(OracleJmsConnection.java:132) | Our customer has also contacted JBoss regarding this matter, and this the response that he received from the folks: anonymous wrote : " The error you have is because you are using a wrapped connection comming out of the datasource. We need to find a way to get the oracle connection and use that. " I have inspected the code, and found that the returned object from the JDNI look-up is a http://docs.jboss.org/jbossas/javadoc/4.0.2/org/jboss/invocation/jrmp/interfaces/JRMPInvokerProxy.java.html. : | "lookedUp"= $Proxy0 (id=32) | h= ClientContainer (id=39) | context= InvocationContext (id=47) | context= HashMap<K,V> (id=54) | entrySet= HashMap$EntrySet (id=58) | this$0= HashMap<K,V> (id=54) | keySet= null | loadFactor= 0.75 | modCount= 0 | size= 3 | table= HashMap$Entry<K,V>[16] (id=66) | [0]= null | [1]= null | [2]= null | [3]= null | [4]= HashMap$Entry<K,V> (id=1021) | hash= -957407340 | key= InvocationKey (id=1022) | name= "CACHE_ID" | ordinal= 5 | next= null | value= null | [5]= null | [6]= null | [7]= null | [8]= null | [9]= null | [10]= null | [11]= null | [12]= null | [13]= HashMap$Entry<K,V> (id=1023) | hash= 2100754445 | key= InvocationKey (id=1026) | name= "CONTAINER" | ordinal= 3 | next= null | value= Integer (id=1027) | value= 1964300194 | [14]= HashMap$Entry<K,V> (id=1024) | hash= -1328126498 | key= InvocationKey (id=1029) | name= "INVOKER" | ordinal= 11 | next= null | value= JRMPInvokerProxy (id=1030) | remoteInvoker= JRMPInvoker_Stub (id=1032) | ref= UnicastRef2 (id=1033) | ref= LiveRef (id=1034) | ch= null | ep= TCPEndpoint (id=1035) | csf= null | host= "127.0.0.1" | port= 4444 | ssf= null | transport= null | id= ObjID (id=1036) | objNum= 1 | space= UID (id=1040) | count= -32768 | time= 1202988535078 | unique= -1924191110 | isLocal= false | [15]= null | threshold= 12 | values= null | next= ClientMethodInterceptor (id=49) | nextInterceptor= InvokerInterceptor (id=967) | invokerID= GUID (id=968) | hashCode= -464387998 | uid= UID (id=970) | id= 2 | time= 1202988535796 | vmid= VMID (id=971) | address= byte[4] (id=1041) | hashCode= -464388000 | pid= PID (id=1042) | uid= UID (id=1049) | nextInterceptor= null | remoteInvoker= null | Anyone can advice on how I can get the real connection factory? Cheers. View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4129381#4129381 Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4129381 _______________________________________________ jboss-user mailing list [email protected] https://lists.jboss.org/mailman/listinfo/jboss-user
