Wednesday, June 11, 2014

OSB JCA transport does not support adapter type: JMS

Tried to use JCA JMS adapter in OSB.

Create JMS adapter in SOA and imported the JCA ,WSDL and schema files to OSB console.

Created a business service from the jca and tried to activate the changes in osb console and got this error

com.bea.wli.sb.transports.TransportException: Failed to create JCABindingService for wsdl: servicebus:/WSDL/Token/JMSProducer, exception: com.bea.wli.sb.transports.TransportException: OSB JCA transport does not support adapter type: JMS
com.bea.wli.sb.transports.TransportException: OSB JCA transport does not support adapter type: JMS
at com.bea.wli.sb.transports.jca.binding.JCATransportOperationBindingServiceImpl.init(JCATransportOperationBindingServiceImpl.java:56)
at com.bea.wli.sb.transports.jca.binding.JCATransportOutboundOperationBindingServiceImpl.init(JCATransportOutboundOperationBindingServiceImpl.java:38)
at com.bea.wli.sb.transports.jca.JCATransportEndpoint.initJCABindingService(JCATransportEndpoint.java:97)
at com.bea.wli.sb.transports.jca.JCATransportProvider.createEndPoint(JCATransportProvider.java:300)
at sun.reflect.GeneratedMethodAccessor331.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at com.bea.wli.sb.transports.Util$1.invoke(Util.java:83)
at $Proxy144.createEndPoint(Unknown Source)
at com.bea.wli.sb.transports.ResourceLifecycleListenerImpl$EndPointOperationCreate.execute(ResourceLifecycleListenerImpl.java:907)
at com.bea.wli.sb.transports.ResourceLifecycleListenerImpl.processServiceNotifications(ResourceLifecycleListenerImpl.java:342)
at com.bea.wli.sb.transports.ResourceLifecycleListenerImpl.endChangeNotification(ResourceLifecycleListenerImpl.java:125)
at com.bea.wli.sb.transports.TransportManagerImpl.endChangeNotification(TransportManagerImpl.java:1224)
at com.bea.wli.sb.service.ServiceChangeListener.endChangeNotification(ServiceChangeListener.java:142)
at com.bea.wli.config.impl.ResourceListenerNotifier.sendChangeNotificationsInContext(ResourceListenerNotifier.java:423)
at com.bea.wli.config.impl.ResourceListenerNotifier.sendChangeNotifications(ResourceListenerNotifier.java:338)
at com.bea.wli.config.impl.ResourceListenerNotifier.sendChangeNotifications(ResourceListenerNotifier.java:321)
at com.bea.wli.config.impl.ResourceListenerNotifier.beforePrepare(ResourceListenerNotifier.java:97)
at com.bea.wli.config.transaction.TransactionListenerWrapper.beforePrepare(TransactionListenerWrapper.java:64)
at com.bea.wli.config.transaction.TransactionManager.notifyBeforePrepare(TransactionManager.java:1094)
at com.bea.wli.config.transaction.TransactionManager._prepareForCommit(TransactionManager.java:654)
at com.bea.wli.config.transaction.TransactionManager.prepareForCommit(TransactionManager.java:609)
at com.bea.wli.config.deployment.server.ServerDeploymentReceiver._prepare(ServerDeploymentReceiver.java:417)
at com.bea.wli.config.deployment.server.ServerDeploymentReceiver.access$700(ServerDeploymentReceiver.java:70)
at com.bea.wli.config.deployment.server.ServerDeploymentReceiver$1.run(ServerDeploymentReceiver.java:246)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at com.bea.wli.config.deployment.server.ServerDeploymentReceiver.prepare(ServerDeploymentReceiver.java:213)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doPrepareCallback(DeploymentReceiverCallbackDeliverer.java:171)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$000(DeploymentReceiverCallbackDeliverer.java:13)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$1.run(DeploymentReceiverCallbackDeliverer.java:46)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:545)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)


Reason : OSB does not support the JMS JCA

Check out the following section in the document

25.2.1 Adapter Support

http://docs.oracle.com/cd/E14571_01/doc.1111/e15866/jca.htm#i1106345

Solution : Use native JMS in OSB

No comments: