Ivan Smirnov’s Blog

December 10, 2008

WESB listening on multiple IDoc basic types from SAP

Filed under: Uncategorized — Tags: , , , — ivansmirnov @ 10:12 PM

IBM redbook named “Connect WebSphereService-Oriented Middleware to SAP” covers steps necessary for receiving IDocs from SAP using WebSphere adapter. But what if your ESB solution requires receiving and processing several IDocs basic types, such as Orders02 and Invoice01? Do you simply create another adapter module? That’s correct, but you will also need to make the following changes.

1) Each mediation modules should listen on a single IDoc basic type. Configure each module to use separate RFC Program ID. If you neglect this, SAP will have no way of determining which module to send each IDoc to and IDocs will be routed to random modules. This is certainly not the behavior you desired

2) Configure destinations in SAP for these RFC Program IDs. Please note that additional configuration is required on SAP side. Use the redbook as your guide

3) Each of the mediation modules you created in step 1 will use SAP adapter in inbound mode. Adapter should be deployed with the module.

Practitioner’s note: I had trouble getting this configuration to work correctly when SAP adapter is also installed at node level (“deployed on the server”) in WESB 6.1.2. SystemOut log entries showed that each IDoc was processed by correct adapter instance (deployed with module), but adapter behaved as if it were server-wide instance. It was unable to find method binding to process inbound IDocs in many cases. It is probably a bug, but you don’t have to wait for a fix. Simple workaround is not to mix up server- and module-packaged SAP adapter instances. In other words, when you need to listen on multiple IDoc basic types from SAP, DO NOT deploy adapter on the server level.

November 25, 2008

WID tips: Use Unicode in SAP Connection

Filed under: Uncategorized — Tags: , , , — ivansmirnov @ 3:41 AM

Here’s another error scenario in integration development using WID.
Problem: You set up your WebSphere ESB, Process Server or WID Test Environment to communicate with SAP using WebSphere adapter for SAP software. You prepare connection on SAP side, enter all connectivity parameters, but when you actually attempt to send or receive data, connection fails. You receive an interesting error message referring to a server function, but function name appears to be garbage:
JCO.Server could not find server function '剆䍟偉乇'
Solution: You forgot to configure SAP connection to use Unicode. This is how your connection is configured (WRONG):

WRONG

WRONG

Just change connection type to Unicode (RIGHT):

RIGHT

RIGHT

JCO library underpinning the adapter requires use of Unicode connection.

If you want to learn more about using SAP adapter, this developerWorks article is very hepful.

November 22, 2008

WID tips: when a Horse is not a Horse

Filed under: Uncategorized — ivansmirnov @ 2:51 AM

This confusing error message might appear any time you use EMF (Eclipse Modeling Framework), but is especially frequent in WID when developing SCA modules. How would you like this puzzle:
java.lang.ClassCastException: The feature 'fooBar's type 'FooBar' does not permit a value of type 'FooBar'

One typical situation when this error occurs is when serialization of DataObject of declared type FooBar fails because the instance of DataObject in question is not valid. In other words, if the DataObject was serialized into XML, the XML would be invalid according to it’s XSD. For example you might have declared that it is a Horse but forgot to create any Legs. Thus my troubleshooting recommendation for this error message is to inspect DataObject in question and validate it against it’s schema.

A DataObject may be created in several ways, such as implicitly as BO Map output or explicitly by Java API. Immediately upon creation the DataObject is empty, which means it is quite likely not valid (unless you have a very lax schema where everything is optional). Next, your BO Map or Java component runs to completion. SCA runtime does not validate your DataObject at that time. This is good: you do not have to set all fields of the DataObject at the same time. Maybe you do not have all required information yet – it will be collected later in your flow. Interestingly, validation will not occur when message containing the DataObject crosses module boundary. This is true even if your message is apparently serialized – in a JMS binding with “Business Object XML” data binding. This means that invalid object may travel great distances without being discovered, which does not simplify your troubleshooting.

November 21, 2008

WID tips 1: the magic of Clorox

Filed under: Uncategorized — Tags: , — ivansmirnov @ 4:29 AM

In the coming days, I will share a series of tips on working with WebSphere Integration Developer, IBM’s IDE for Business Integration and SOA targeting WebSphere Process Server and it’s little sibling, WebSphere ESB. These are mostly simple items that that cost me some time and aggravation. Hopefully knowing the answers will save somebody else’s time.

Tip 1: Make it clean.

When developing SCA modules in WID, I occasionally run into mild but annoying stability issue. A seemingly innocuous change, usually in an Export or Import, breaks the module.That’s when you start seeing MDB or missing resource errors in Test Environment. Exported EAR file would not install because of resource errors. There is a simple and effective remedy for this situation: clean the module and all nested projects using Project -> Clean. For example, if your SCA module is called MessageReceiver, you’d clean projects MessageReceiver, MessageReceiverApp, MessageReceiverEJB (and MessageReceiverWeb if it exists):

Clean Projects

Clean Projects

This cleaning helps for problems with MDBs that look like this:

[10/23/08 13:52:59:924 EDT] 0000000a SystemErr R Caused by: com.ibm.ws.exception.RuntimeWarning: com.ibm.ejs.container.ContainerException: Bean class could not be found or loaded; nested exception is:
com.ibm.ejs.container.ContainerException: MDB export.SAPInboundInterfaceListenerImpl must implement interface javax.jms.MessageListener
at com.ibm.ws.runtime.component.EJBContainerImpl.processBean(EJBContainerImpl.java:1836)
at com.ibm.ws.runtime.component.EJBContainerImpl.install(EJBContainerImpl.java:2860)
at com.ibm.ws.runtime.component.EJBContainerImpl.start(EJBContainerImpl.java:3720)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:1303)
at com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObjectStart(DeployedApplicationImpl.java:1138)
at com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedModuleImpl.java:569)
at com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:817)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:949)
at com.ibm.ws.runtime.component.ApplicationMgrImpl$AppInitializer.run(ApplicationMgrImpl.java:2122)
at com.ibm.wsspi.runtime.component.WsComponentImpl$_AsynchInitializer.run(WsComponentImpl.java:342)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1473)
Caused by: com.ibm.ejs.container.ContainerException: Bean class could not be found or loaded; nested exception is:
com.ibm.ejs.container.ContainerException: MDB export.SAPInboundInterfaceListenerImpl must implement interface javax.jms.MessageListener
at com.ibm.ejs.container.BeanMetaData.completeInitialization(BeanMetaData.java:2297)
at com.ibm.ws.runtime.component.EJBContainerImpl.createBeanMetaData(EJBContainerImpl.java:2001)
at com.ibm.ws.runtime.component.EJBContainerImpl.processBean(EJBContainerImpl.java:1807)
... 10 more
Caused by: com.ibm.ejs.container.ContainerException: MDB export.SAPInboundInterfaceListenerImpl must implement interface javax.jms.MessageListener
at com.ibm.ejs.container.BeanMetaData.completeInitialization(BeanMetaData.java:1761)
... 12 more

… and for resource reference problems that look like this:

[10/13/08 17:26:01:009 EDT] 00000042 ExceptionUtil E CNTR0020E: EJB threw an unexpected (non-declared) exception during invocation of method "getResource" on bean "BeanId(SAP_DeliveriesFromSAPApp#SAP_DeliveriesFromSAPEJB.jar#Module, null)". Exception data: javax.naming.NameNotFoundException: Name comp/env/sca not found in context "java:".
at com.ibm.ws.naming.ipbase.NameSpace.getParentCtxInternal(NameSpace.java:1767)
at com.ibm.ws.naming.ipbase.NameSpace.lookupInternal(NameSpace.java:1083)
at com.ibm.ws.naming.ipbase.NameSpace.lookup(NameSpace.java:991)
at com.ibm.ws.naming.urlbase.UrlContextImpl.lookup(UrlContextImpl.java:1263)
at com.ibm.ws.naming.java.javaURLContextImpl.lookup(javaURLContextImpl.java:384)
at com.ibm.ws.naming.java.javaURLContextRoot.lookup(javaURLContextRoot.java:204)
at com.ibm.ws.naming.java.javaURLContextRoot.lookup(javaURLContextRoot.java:144)
at javax.naming.InitialContext.lookup(InitialContext.java:363)
at com.ibm.ws.sca.internal.ejb.util.EJBLocator$JndiLocator.locate(EJBLocator.java:464)
at com.ibm.ws.sca.internal.ejb.util.EJBLocator.locate(EJBLocator.java:442)
at com.ibm.ws.sca.internal.ejb.util.JndiAdapter.(JndiAdapter.java:44)
at com.ibm.ws.sca.internal.ejb.util.JndiAdapterFactory.createAdapter(JndiAdapterFactory.java:39)
at org.eclipse.emf.common.notify.impl.AdapterFactoryImpl.adaptNew(AdapterFactoryImpl.java:112)
at org.eclipse.emf.common.notify.impl.AdapterFactoryImpl.adapt(AdapterFactoryImpl.java:98)
at com.ibm.wsspi.sca.ejb.module.impl.ModuleSessionBean.getResource(ModuleSessionBean.java:232)
at com.ibm.wsspi.sca.ejb.module.EJSLocalStatelessModule_43132892.getResource(EJSLocalStatelessModule_43132892.java:437)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at com.ibm.ws.sca.internal.scdl.impl.ManagedModuleImpl.lookupResource(ManagedModuleImpl.java:104)
at com.ibm.ws.sca.internal.jms.AbstractJMSImportHandler.lookupConnectionFactory(AbstractJMSImportHandler.java:450)
at com.ibm.ws.sca.internal.jms.AbstractJMSImportHandler.getConnectionFactory(AbstractJMSImportHandler.java:434)
at com.ibm.ws.sca.internal.jms.AbstractJMSImportHandler.processMessage(AbstractJMSImportHandler.java:237)
at com.ibm.ws.sca.internal.message.impl.MessageDispatcherImpl.processMessage(MessageDispatcherImpl.java:1297)
at com.ibm.ws.sca.internal.message.impl.ManagedMessageImpl.process(ManagedMessageImpl.java:834)
at com.ibm.wsspi.sca.ejb.module.impl.ModuleSessionBean.processUOWMessage(ModuleSessionBean.java:338)
at com.ibm.wsspi.sca.ejb.module.impl.ModuleSessionBean.transactionSupportsActivitySessionSupports(ModuleSessionBean.java:262)
at com.ibm.wsspi.sca.ejb.module.EJSLocalStatelessModule_43132892.transactionSupportsActivitySessionSupports(EJSLocalStatelessModule_43132892.java:403)
at com.ibm.ws.sca.internal.uow.handler.UOWStrategyImpl.transactionAnyActivitySessionAny(UOWStrategyImpl.java:486)
at com.ibm.ws.sca.internal.uow.handler.JoinUOWHandler.processMessage(JoinUOWHandler.java:151)
at com.ibm.ws.sca.internal.message.impl.MessageDispatcherImpl.processMessage(MessageDispatcherImpl.java:1297)
at com.ibm.ws.sca.internal.message.impl.ManagedMessageImpl.process(ManagedMessageImpl.java:834)
at com.ibm.wsspi.sca.ejb.module.impl.ModuleSessionBean.processUOWMessage(ModuleSessionBean.java:338)
at com.ibm.wsspi.sca.ejb.module.impl.ModuleSessionBean.transactionSupportsActivitySessionNotSupported(ModuleSessionBean.java:270)
at com.ibm.wsspi.sca.ejb.module.EJSLocalStatelessModule_43132892.transactionSupportsActivitySessionNotSupported(EJSLocalStatelessModule_43132892.java:335)
at com.ibm.ws.sca.internal.uow.handler.UOWStrategyImpl.deliverAsyncAtCommit(UOWStrategyImpl.java:535)
at com.ibm.ws.sca.internal.uow.handler.DeliverAsyncAtUOWHandler.processMessage(DeliverAsyncAtUOWHandler.java:76)
at com.ibm.ws.sca.internal.message.impl.MessageDispatcherImpl.processMessage(MessageDispatcherImpl.java:1297)
at com.ibm.ws.sca.internal.message.impl.ManagedMessageImpl.process(ManagedMessageImpl.java:834)
at com.ibm.ws.sibx.mediation.flowaction.impl.sca.SCAInvocationAction.invokeAsyncOneWay(SCAInvocationAction.java:481)
at com.ibm.ws.sibx.mediation.flowaction.impl.sca.RetryControl.invokeByStyle(RetryControl.java:331)
at com.ibm.ws.sibx.mediation.flowaction.impl.sca.RetryControl.invokeWithRetry(RetryControl.java:221)
at com.ibm.ws.sibx.mediation.flowaction.impl.sca.OneWayInvocation.complete(OneWayInvocation.java:116)
at com.ibm.ws.sibx.mediation.flowaction.impl.sca.FlowActionFactoryImpl.complete(FlowActionFactoryImpl.java:1012)
at com.ibm.ws.sibx.mediation.flowaction.impl.sca.FlowActionFactoryImpl.create(FlowActionFactoryImpl.java:497)
at com.ibm.ws.sibx.scax.mediation.engine.SCACalloutElement.invoke(SCACalloutElement.java:198)
at com.ibm.ws.sibx.scax.mediation.engine.MediationPrimitive.invokeConnections(MediationPrimitive.java:311)
at com.ibm.ws.sibx.scax.mediation.engine.JavaMediationPrimitive.fireOutputTerminals(JavaMediationPrimitive.java:419)
at com.ibm.ws.sibx.scax.mediation.engine.JavaMediationPrimitive.performInvocation(JavaMediationPrimitive.java:345)
at com.ibm.ws.sibx.scax.mediation.engine.JavaMediationPrimitive.invoke(JavaMediationPrimitive.java:217)
at com.ibm.ws.sibx.scax.mediation.engine.MediationPrimitive.invokeConnections(MediationPrimitive.java:311)
at com.ibm.ws.sibx.scax.mediation.engine.Input.invoke(Input.java:137)
at com.ibm.ws.sibx.scax.mediation.engine.RequestFlow.invokeFlow(RequestFlow.java:132)
at com.ibm.ws.sibx.scax.mediation.engine.MediationFlow.invokeRequestFlow(MediationFlow.java:135)
at com.ibm.wsspi.sibx.mediation.flow.ejb.MediationFlowBean.invokeRequestFlow(MediationFlowBean.java:230)
at com.ibm.wsspi.sibx.mediation.flow.ejb.EJSLocalStatelessMediationFlow_f5ad87fe.invokeRequestFlow(EJSLocalStatelessMediationFlow_f5ad87fe.java:127)
at com.ibm.ws.sibx.scax.mediation.component.ejb.EJBMediationFlowComponentImpl.invokeRequestFlow(EJBMediationFlowComponentImpl.java:223)
at com.ibm.ws.sibx.scax.runtime.handler.MFCImplementationHandler.processMessage(MFCImplementationHandler.java:199)
at com.ibm.ws.sca.internal.message.impl.MessageDispatcherImpl.processMessage(MessageDispatcherImpl.java:1286)
at com.ibm.ws.sca.internal.message.impl.ManagedMessageImpl.process(ManagedMessageImpl.java:834)
at com.ibm.wsspi.sca.ejb.module.impl.ModuleSessionBean.processUOWMessage(ModuleSessionBean.java:338)
at com.ibm.wsspi.sca.ejb.module.impl.ModuleSessionBean.transactionRequiredActivitySessionSupports(ModuleSessionBean.java:303)
at com.ibm.wsspi.sca.ejb.module.EJSLocalStatelessModule_43132892.transactionRequiredActivitySessionSupports(EJSLocalStatelessModule_43132892.java:301)
at com.ibm.ws.sca.internal.uow.handler.UOWStrategyImpl.transactionGlobalActivitySessionAny(UOWStrategyImpl.java:336)
at com.ibm.ws.sca.internal.uow.handler.JoinUOWHandler.processMessage(JoinUOWHandler.java:168)
at com.ibm.ws.sca.internal.message.impl.MessageDispatcherImpl.processMessage(MessageDispatcherImpl.java:1297)
at com.ibm.ws.sca.internal.message.impl.ManagedMessageImpl.process(ManagedMessageImpl.java:834)
at com.ibm.ws.sca.internal.async.impl.AbstractAsyncInboundHandler.processMessage(AbstractAsyncInboundHandler.java:117)
at com.ibm.wsspi.sca.async.bean.impl.ServiceSIBusMessageBean.processMessage(ServiceSIBusMessageBean.java:285)
at com.ibm.wsspi.sca.async.bean.impl.ServiceSIBusMessageBean.access$000(ServiceSIBusMessageBean.java:53)
at com.ibm.wsspi.sca.async.bean.impl.ServiceSIBusMessageBean$1.onMessage(ServiceSIBusMessageBean.java:77)
at com.ibm.wbiserver.manualrecovery.ejb.RecoveryMDBHandler.processMessage(RecoveryMDBHandler.java:126)
at com.ibm.wbiserver.manualrecovery.ejb.RecoveryMDBHandler.onMessage(RecoveryMDBHandler.java:82)
at com.ibm.wsspi.sca.async.bean.impl.ServiceSIBusMessageBean.onMessage(ServiceSIBusMessageBean.java:135)
at sun.reflect.GeneratedMethodAccessor85.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at com.ibm.ejs.container.MessageEndpointHandler.invokeMdbMethod(MessageEndpointHandler.java:1018)
at com.ibm.ejs.container.MessageEndpointHandler.invoke(MessageEndpointHandler.java:747)
at $Proxy16.onMessage(Unknown Source)
at com.ibm.ws.sib.ra.inbound.impl.SibRaEndpointInvokerImpl.invokeEndpoint(SibRaEndpointInvokerImpl.java:156)
at com.ibm.ws.sib.ra.inbound.impl.SibRaDispatcher.dispatch(SibRaDispatcher.java:768)
at com.ibm.ws.sib.ra.inbound.impl.SibRaSingleProcessListener$SibRaWork.run(SibRaSingleProcessListener.java:584)
at com.ibm.ejs.j2c.work.WorkProxy.run(WorkProxy.java:419)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1473)
Wrapped by:
com.ibm.websphere.sca.ServiceRuntimeException: Resource java:comp/env/sca/resource/import/Import1_CF cannot be resovled.: caused by: javax.naming.NameNotFoundException: Name comp/env/sca not found in context "java:".
at com.ibm.ws.sca.internal.ejb.util.JndiAdapter.(JndiAdapter.java:48)
at com.ibm.ws.sca.internal.ejb.util.JndiAdapterFactory.createAdapter(JndiAdapterFactory.java:39)
at org.eclipse.emf.common.notify.impl.AdapterFactoryImpl.adaptNew(AdapterFactoryImpl.java:112)
at org.eclipse.emf.common.notify.impl.AdapterFactoryImpl.adapt(AdapterFactoryImpl.java:98)
at com.ibm.wsspi.sca.ejb.module.impl.ModuleSessionBean.getResource(ModuleSessionBean.java:232)
at com.ibm.wsspi.sca.ejb.module.EJSLocalStatelessModule_43132892.getResource(EJSLocalStatelessModule_43132892.java:437)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at com.ibm.ws.sca.internal.scdl.impl.ManagedModuleImpl.lookupResource(ManagedModuleImpl.java:104)
at com.ibm.ws.sca.internal.jms.AbstractJMSImportHandler.lookupConnectionFactory(AbstractJMSImportHandler.java:450)
at com.ibm.ws.sca.internal.jms.AbstractJMSImportHandler.getConnectionFactory(AbstractJMSImportHandler.java:434)
at com.ibm.ws.sca.internal.jms.AbstractJMSImportHandler.processMessage(AbstractJMSImportHandler.java:237)
at com.ibm.ws.sca.internal.message.impl.MessageDispatcherImpl.processMessage(MessageDispatcherImpl.java:1297)
at com.ibm.ws.sca.internal.message.impl.ManagedMessageImpl.process(ManagedMessageImpl.java:834)
at com.ibm.wsspi.sca.ejb.module.impl.ModuleSessionBean.processUOWMessage(ModuleSessionBean.java:338)
at com.ibm.wsspi.sca.ejb.module.impl.ModuleSessionBean.transactionSupportsActivitySessionSupports(ModuleSessionBean.java:262)
at com.ibm.wsspi.sca.ejb.module.EJSLocalStatelessModule_43132892.transactionSupportsActivitySessionSupports(EJSLocalStatelessModule_43132892.java:403)
at com.ibm.ws.sca.internal.uow.handler.UOWStrategyImpl.transactionAnyActivitySessionAny(UOWStrategyImpl.java:486)
at com.ibm.ws.sca.internal.uow.handler.JoinUOWHandler.processMessage(JoinUOWHandler.java:151)
at com.ibm.ws.sca.internal.message.impl.MessageDispatcherImpl.processMessage(MessageDispatcherImpl.java:1297)
at com.ibm.ws.sca.internal.message.impl.ManagedMessageImpl.process(ManagedMessageImpl.java:834)
at com.ibm.wsspi.sca.ejb.module.impl.ModuleSessionBean.processUOWMessage(ModuleSessionBean.java:338)
at com.ibm.wsspi.sca.ejb.module.impl.ModuleSessionBean.transactionSupportsActivitySessionNotSupported(ModuleSessionBean.java:270)
at com.ibm.wsspi.sca.ejb.module.EJSLocalStatelessModule_43132892.transactionSupportsActivitySessionNotSupported(EJSLocalStatelessModule_43132892.java:335)
at com.ibm.ws.sca.internal.uow.handler.UOWStrategyImpl.deliverAsyncAtCommit(UOWStrategyImpl.java:535)
at com.ibm.ws.sca.internal.uow.handler.DeliverAsyncAtUOWHandler.processMessage(DeliverAsyncAtUOWHandler.java:76)
at com.ibm.ws.sca.internal.message.impl.MessageDispatcherImpl.processMessage(MessageDispatcherImpl.java:1297)
at com.ibm.ws.sca.internal.message.impl.ManagedMessageImpl.process(ManagedMessageImpl.java:834)
at com.ibm.ws.sibx.mediation.flowaction.impl.sca.SCAInvocationAction.invokeAsyncOneWay(SCAInvocationAction.java:481)
at com.ibm.ws.sibx.mediation.flowaction.impl.sca.RetryControl.invokeByStyle(RetryControl.java:331)
at com.ibm.ws.sibx.mediation.flowaction.impl.sca.RetryControl.invokeWithRetry(RetryControl.java:221)
at com.ibm.ws.sibx.mediation.flowaction.impl.sca.OneWayInvocation.complete(OneWayInvocation.java:116)
at com.ibm.ws.sibx.mediation.flowaction.impl.sca.FlowActionFactoryImpl.complete(FlowActionFactoryImpl.java:1012)
at com.ibm.ws.sibx.mediation.flowaction.impl.sca.FlowActionFactoryImpl.create(FlowActionFactoryImpl.java:497)
at com.ibm.ws.sibx.scax.mediation.engine.SCACalloutElement.invoke(SCACalloutElement.java:198)
at com.ibm.ws.sibx.scax.mediation.engine.MediationPrimitive.invokeConnections(MediationPrimitive.java:311)
at com.ibm.ws.sibx.scax.mediation.engine.JavaMediationPrimitive.fireOutputTerminals(JavaMediationPrimitive.java:419)
at com.ibm.ws.sibx.scax.mediation.engine.JavaMediationPrimitive.performInvocation(JavaMediationPrimitive.java:345)
at com.ibm.ws.sibx.scax.mediation.engine.JavaMediationPrimitive.invoke(JavaMediationPrimitive.java:217)
at com.ibm.ws.sibx.scax.mediation.engine.MediationPrimitive.invokeConnections(MediationPrimitive.java:311)
at com.ibm.ws.sibx.scax.mediation.engine.Input.invoke(Input.java:137)
at com.ibm.ws.sibx.scax.mediation.engine.RequestFlow.invokeFlow(RequestFlow.java:132)
at com.ibm.ws.sibx.scax.mediation.engine.MediationFlow.invokeRequestFlow(MediationFlow.java:135)
at com.ibm.wsspi.sibx.mediation.flow.ejb.MediationFlowBean.invokeRequestFlow(MediationFlowBean.java:230)
at com.ibm.wsspi.sibx.mediation.flow.ejb.EJSLocalStatelessMediationFlow_f5ad87fe.invokeRequestFlow(EJSLocalStatelessMediationFlow_f5ad87fe.java:127)
at com.ibm.ws.sibx.scax.mediation.component.ejb.EJBMediationFlowComponentImpl.invokeRequestFlow(EJBMediationFlowComponentImpl.java:223)
at com.ibm.ws.sibx.scax.runtime.handler.MFCImplementationHandler.processMessage(MFCImplementationHandler.java:199)
at com.ibm.ws.sca.internal.message.impl.MessageDispatcherImpl.processMessage(MessageDispatcherImpl.java:1286)
at com.ibm.ws.sca.internal.message.impl.ManagedMessageImpl.process(ManagedMessageImpl.java:834)
at com.ibm.wsspi.sca.ejb.module.impl.ModuleSessionBean.processUOWMessage(ModuleSessionBean.java:338)
at com.ibm.wsspi.sca.ejb.module.impl.ModuleSessionBean.transactionRequiredActivitySessionSupports(ModuleSessionBean.java:303)
at com.ibm.wsspi.sca.ejb.module.EJSLocalStatelessModule_43132892.transactionRequiredActivitySessionSupports(EJSLocalStatelessModule_43132892.java:301)
at com.ibm.ws.sca.internal.uow.handler.UOWStrategyImpl.transactionGlobalActivitySessionAny(UOWStrategyImpl.java:336)
at com.ibm.ws.sca.internal.uow.handler.JoinUOWHandler.processMessage(JoinUOWHandler.java:168)
at com.ibm.ws.sca.internal.message.impl.MessageDispatcherImpl.processMessage(MessageDispatcherImpl.java:1297)
at com.ibm.ws.sca.internal.message.impl.ManagedMessageImpl.process(ManagedMessageImpl.java:834)
at com.ibm.ws.sca.internal.async.impl.AbstractAsyncInboundHandler.processMessage(AbstractAsyncInboundHandler.java:117)
at com.ibm.wsspi.sca.async.bean.impl.ServiceSIBusMessageBean.processMessage(ServiceSIBusMessageBean.java:285)
at com.ibm.wsspi.sca.async.bean.impl.ServiceSIBusMessageBean.access$000(ServiceSIBusMessageBean.java:53)
at com.ibm.wsspi.sca.async.bean.impl.ServiceSIBusMessageBean$1.onMessage(ServiceSIBusMessageBean.java:77)
at com.ibm.wbiserver.manualrecovery.ejb.RecoveryMDBHandler.processMessage(RecoveryMDBHandler.java:126)
at com.ibm.wbiserver.manualrecovery.ejb.RecoveryMDBHandler.onMessage(RecoveryMDBHandler.java:82)
at com.ibm.wsspi.sca.async.bean.impl.ServiceSIBusMessageBean.onMessage(ServiceSIBusMessageBean.java:135)
at sun.reflect.GeneratedMethodAccessor85.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at com.ibm.ejs.container.MessageEndpointHandler.invokeMdbMethod(MessageEndpointHandler.java:1018)
at com.ibm.ejs.container.MessageEndpointHandler.invoke(MessageEndpointHandler.java:747)
at $Proxy16.onMessage(Unknown Source)
at com.ibm.ws.sib.ra.inbound.impl.SibRaEndpointInvokerImpl.invokeEndpoint(SibRaEndpointInvokerImpl.java:156)
at com.ibm.ws.sib.ra.inbound.impl.SibRaDispatcher.dispatch(SibRaDispatcher.java:768)
at com.ibm.ws.sib.ra.inbound.impl.SibRaSingleProcessListener$SibRaWork.run(SibRaSingleProcessListener.java:584)
at com.ibm.ejs.j2c.work.WorkProxy.run(WorkProxy.java:419)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1473)
Caused by: javax.naming.NameNotFoundException: Name comp/env/sca not found in context "java:".
at com.ibm.ws.naming.ipbase.NameSpace.getParentCtxInternal(NameSpace.java:1767)
at com.ibm.ws.naming.ipbase.NameSpace.lookupInternal(NameSpace.java:1083)
at com.ibm.ws.naming.ipbase.NameSpace.lookup(NameSpace.java:991)
at com.ibm.ws.naming.urlbase.UrlContextImpl.lookup(UrlContextImpl.java:1263)
at com.ibm.ws.naming.java.javaURLContextImpl.lookup(javaURLContextImpl.java:384)
at com.ibm.ws.naming.java.javaURLContextRoot.lookup(javaURLContextRoot.java:204)
at com.ibm.ws.naming.java.javaURLContextRoot.lookup(javaURLContextRoot.java:144)
at javax.naming.InitialContext.lookup(InitialContext.java:363)
at com.ibm.ws.sca.internal.ejb.util.EJBLocator$JndiLocator.locate(EJBLocator.java:464)
at com.ibm.ws.sca.internal.ejb.util.EJBLocator.locate(EJBLocator.java:442)
at com.ibm.ws.sca.internal.ejb.util.JndiAdapter.(JndiAdapter.java:44)
... 75 more

« Newer Posts

Blog at WordPress.com.