XSLT Mapping : RFC Lookup using java helper class

Hi All,
I am doing RFC Lookup in xslt mapping using java helper class. I have found blog for the same (http://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/05a3d62e-0a01-0010-14bc-adc8efd4ee14) However this blog is very advanced.
Can anybody help me with step by step approach for the same?
My basic questions are not answered in the blog as:
1) where to add the jar file of the java class used in xslt mapping.
I have added zip file of XSLT mapping in imported archived and using that in mapping.
Thanks in advace.
Regards,
Rohan

Hi,
Can u please have look at this in detail , u can easily point out yourself the problem...
http://help.sap.com/saphelp_nw04/helpdata/en/55/7ef3003fc411d6b1f700508b5d5211/content.htm
Please observe the line,
xmlns:javamap="java:com.company.group.MappingClass
in XSLT mapping..
The packagename of class and class name and XSLT namespace should be matching...
Babu
Edited by: hlbabu123 on Sep 29, 2010 6:04 PM

Similar Messages

  • RFC Lookup using Java Mapping program - Examples

    Dear Experts,
    I am working on a scenario which is using 1:N mapping. For deciding the target message I have to use RFC Lookup to call the backend ERP system and there are 2 ERP systems involved in this integration. As I am using Java Mapping and never did a RFC Lookup in Java. I kindly request you to give me some examples which I could use for my RFC calls in my Java Mapping. Simple example will do.
    Client is adamant to use Java mapping, I could achieve this easily using XSLT or Graphical Mapping.
    Advance Thanks,
    Pradeep

    Hello,
    why don't you use Extended Receiver Determination Defining Extended (Dynamic) Receiver Determination - Integration Directory - SAP Library?
    What you can do is create a Message Mapping between your source message and Receivers message type. In this message mapping you can use your RFC to generate the target message.
    For example, lets say we have the function ZFM_GET_INTERFACE_INFO used to generate the List of Receivers given a source message. You could create a Message Mapping as below:
    In this case, the RFCLookup box look as below:
    The receiver determination configuration would look as follows:
    Afterwards, you will need two specific message mappings for the two ERP systems.
    Summarizing, you'll need:
    1.- A Message Mapping: Source Message to Receivers Message Type (This one uses the RFC Lookup)
    2.- A Message Mapping: Source Message to Target Message for ERP 1
    3.- A Message Mapping: Source Message to Target Message for ERP 2
    In Integration Directory you'll have 1 Receiver Determination(Source system, Target System determined Dynamically) and 2 Interface Determinations (Source System to ERP1, Source System to ERP2), etc.
    I hope you find it useful.
    Regards!

  • RFC lookup with java proxy class, how do I use "fromXml()"?

    Hi,
    I'm trying to do an RFC lookup in XI using java proxy classes (SAP Enterprise Connector).
    The XMLPayload comes from a java proxy class which has been converted to xml using a method called
    .fromXml() for this. I just don't know how to use and I can't find any documentation for it.
    Would very much appreciate if someone could provide me with an example of how to use this class
    Best Regards
    Olof Trönnberg

    http://xstream.codehaus.org/javadoc/com/thoughtworks/xstream/XStreamer.html#fromXML(com.thoughtworks.xstream.io.HierarchicalStreamDriver,%20java.io.Reader)

  • RFC Lookup using Java Mapping issues

    Dear Experts,
    I am trying to use RFC Lookup in my Java program but for some reason I am getting a null point exception on the result variable when the program is executing the following code(rfcin = result.getContent();). Could anyone give me some advise on this issue please? screen print of the code attached with this email.
    Advance Thanks,
    Pradeep

    Thanks Steve,
    Please find the dump after the proposed change.
                    java.lang.RuntimeException:
                    com.sap.aii.mapping.lookup.LookupException: Plain
                    exception:Error when calling an adapter by using the
                    communication channel ccRFCReceiverNPI (Party: , Service:
                    BS_ECD, Object ID: 00b61d6e4363334d8bd052dfb9c2c09a) The
                    channel with object ID 00b61d6e4363334d8bd052dfb9c2c09a could
                    not be found in the Integration Server Java Cache. Check if
                    the channel exists in the Integration Builder Directory and
                    execute a refresh of the Java Cache.
    com.sap.aii.mapping.lookup.LookupException:
                    Error when calling an adapter by using the communication
                    channel ccRFCReceiverNPI (Party: , Service: BS_ECD, Object ID:
                    00b61d6e4363334d8bd052dfb9c2c09a) The channel with object ID
                    00b61d6e4363334d8bd052dfb9c2c09a could not be found in the
                    Integration Server Java Cache. Check if the channel exists in
                    the Integration Builder Directory and execute a refresh of the
                    Java Cache.
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorInternal.getProxy(SystemAccessorInternal.java:130)
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorInternal.<init>(SystemAccessorInternal.java:46)
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorHmiServer.getConnection(SystemAccessorHmiServer.java:265)
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorHmiServer.process(SystemAccessorHmiServer.java:69)
    at
                    com.sap.aii.utilxi.hmis.server.HmisServiceImpl.invokeMethod(HmisServiceImpl.java:139)
    at
                    com.sap.aii.utilxi.hmis.server.HmisServer.process(HmisServer.java:224)
    at
                    com.sap.aii.utilxi.hmis.web.HmisServletImpl.processRequestByHmiServer(HmisServletImpl.java:370)
    at
                    com.sap.aii.utilxi.hmis.web.HmisServletImpl.processRequestByHmiServer(HmisServletImpl.java:271)
    at
                    com.sap.aii.utilxi.hmis.web.workers.HmisInternalClient.doWork(HmisInternalClient.java:70)
    at
                    com.sap.aii.utilxi.hmis.web.HmisServletImpl.doWork(HmisServletImpl.java:570)
    at
                    com.sap.aii.utilxi.hmis.web.HmisServletImpl.doPost(HmisServletImpl.java:711)
    at
                    javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
    at
                    javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
    at
                    com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.runServlet(FilterChainImpl.java:202)
    at
                    com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:103)
    at
                    com.sap.engine.services.servlets_jsp.server.servlet.AuthenticationFilter.doFilter(AuthenticationFilter.java:126)
    at
                    com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:79)
    at
                    com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:432)
    at
                    com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:210)
    at
                    com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:441)
    at
                    com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:430)
    at
                    com.sap.engine.services.servlets_jsp.filters.DSRWebContainerFilter.process(DSRWebContainerFilter.java:38)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.servlets_jsp.filters.ServletSelector.process(ServletSelector.java:81)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.servlets_jsp.filters.ApplicationSelector.process(ApplicationSelector.java:276)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.WebContainerInvoker.process(WebContainerInvoker.java:81)
    at
                    com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.ResponseLogWriter.process(ResponseLogWriter.java:60)
    at
                    com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.DefineHostFilter.process(DefineHostFilter.java:27)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.MonitoringFilter.process(MonitoringFilter.java:29)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.SessionSizeFilter.process(SessionSizeFilter.java:26)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.MemoryStatisticFilter.process(MemoryStatisticFilter.java:57)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.DSRHttpFilter.process(DSRHttpFilter.java:43)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.server.Processor.chainedRequest(Processor.java:475)
    at
                    com.sap.engine.services.httpserver.server.Processor$FCAProcessorThread.process(Processor.java:269)
    at
                    com.sap.engine.services.httpserver.server.rcm.RequestProcessorThread.run(RequestProcessorThread.java:56)
    at
                    com.sap.engine.core.thread.execution.Executable.run(Executable.java:122)
    at
                    com.sap.engine.core.thread.execution.Executable.run(Executable.java:101)
    at
                    com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:328)
    Caused
                    by:
                    com.sap.aii.ibrun.server.cache.channel.ChannelReader$CachedChannelNotFoundException:
                    The channel with object ID 00b61d6e4363334d8bd052dfb9c2c09a
                    could not be found in the Integration Server Java Cache. Check
                    if the channel exists in the Integration Builder Directory and
                    execute a refresh of the Java Cache.
    at
                    com.sap.aii.ibrun.server.cache.channel.ChannelPersistor.read(ChannelPersistor.java:56)
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorInternal.getProxy(SystemAccessorInternal.java:109)
                    53 more
    at
                    ConsignmentTrackingMapping.execute(ConsignmentTrackingMapping.java:272)
    at
                    ConsignmentTrackingMapping.transform(ConsignmentTrackingMapping.java:46)
    at
                    com.sap.aii.ib.server.mapping.execution.JavaMapping.executeStep(JavaMapping.java:92)
    at
                    com.sap.aii.ib.server.mapping.execution.Mapping.execute(Mapping.java:60)
    at
                    com.sap.aii.ib.server.mapping.execution.MappingHandler.map(MappingHandler.java:87)
    at
                    com.sap.aii.ib.server.mapping.execution.MappingHandler.map(MappingHandler.java:54)
    at
                    com.sap.aii.ibrep.server.mapping.rt.MappingHandlerAdapter.run(MappingHandlerAdapter.java:139)
    at
                    com.sap.aii.ibrep.server.mapping.exec.ExecuteIfMapCommand.execute(ExecuteIfMapCommand.java:33)
    at
                    com.sap.aii.ib.server.mapping.exec.CommandManager.execute(CommandManager.java:43)
    at
                    com.sap.aii.ibrep.server.mapping.ServerMapService.execute(ServerMapService.java:40)
    at
                    com.sap.aii.ibrep.server.mapping.MapServiceBean.execute(MapServiceBean.java:40)
    at
                    sun.reflect.GeneratedMethodAccessor640.invoke(Unknown Source)
    at
                    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at
                    java.lang.reflect.Method.invoke(Method.java:597)
    at
                    com.sap.engine.services.ejb3.runtime.impl.RequestInvocationContext.proceedFinal(RequestInvocationContext.java:47)
    at
                    com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:166)
    at
                    com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatesTransition.invoke(Interceptors_StatesTransition.java:19)
    at
                    com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
    at
                    com.sap.engine.services.ejb3.runtime.impl.Interceptors_Resource.invoke(Interceptors_Resource.java:47)
    at
                    com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
    at
                    com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.doWorkWithAttribute(Interceptors_Transaction.java:37)
    at
                    com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.invoke(Interceptors_Transaction.java:21)
    at
                    com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
    at
                    com.sap.engine.services.ejb3.runtime.impl.Interceptors_MethodRetry.invoke(Interceptors_MethodRetry.java:46)
    at
                    com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
    at
                    com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:189)
    at
                    com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatelessInstanceGetter.invoke(Interceptors_StatelessInstanceGetter.java:16)
    at
                    com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
    at
                    com.sap.engine.services.ejb3.runtime.impl.Interceptors_SecurityCheck.invoke(Interceptors_SecurityCheck.java:25)
    at
                    com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
    at
                    com.sap.engine.services.ejb3.runtime.impl.Interceptors_ExceptionTracer.invoke(Interceptors_ExceptionTracer.java:17)
    at
                    com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
    at
                    com.sap.engine.services.ejb3.runtime.impl.DefaultInvocationChainsManager.startChain(DefaultInvocationChainsManager.java:138)
    at
                    com.sap.engine.services.ejb3.runtime.impl.DefaultEJBProxyInvocationHandler.invoke(DefaultEJBProxyInvocationHandler.java:164)
    at
                    $Proxy1181.execute(Unknown Source)
    at
                    sun.reflect.GeneratedMethodAccessor639.invoke(Unknown Source)
    at
                    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at
                    java.lang.reflect.Method.invoke(Method.java:597)
    at
                    com.sap.engine.services.rmi_p4.P4DynamicSkeleton.dispatch(P4DynamicSkeleton.java:240)
    at
                    com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:459)
    at
                    com.sap.engine.services.rmi_p4.server.ServerDispatchImpl.run(ServerDispatchImpl.java:69)
    at
                    com.sap.engine.services.rmi_p4.P4Message.process(P4Message.java:72)
    at
                    com.sap.engine.services.rmi_p4.P4Message.execute(P4Message.java:43)
    at
                    com.sap.engine.services.cross.fca.FCAConnectorImpl.executeRequest(FCAConnectorImpl.java:983)
    at
                    com.sap.engine.services.rmi_p4.P4Message.process(P4Message.java:59)
    at
                    com.sap.engine.services.cross.fca.MessageReader.run(MessageReader.java:55)
    at
                    com.sap.engine.core.thread.execution.Executable.run(Executable.java:122)
    at
                    com.sap.engine.core.thread.execution.Executable.run(Executable.java:101)
    at
                    com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:328)
    Caused
                    by: com.sap.aii.mapping.lookup.LookupException: Plain
                    exception:Error when calling an adapter by using the
                    communication channel ccRFCReceiverNPI (Party: , Service:
                    BS_ECD, Object ID: 00b61d6e4363334d8bd052dfb9c2c09a) The
                    channel with object ID 00b61d6e4363334d8bd052dfb9c2c09a could
                    not be found in the Integration Server Java Cache. Check if
                    the channel exists in the Integration Builder Directory and
                    execute a refresh of the Java Cache.
    com.sap.aii.mapping.lookup.LookupException:
                    Error when calling an adapter by using the communication
                    channel ccRFCReceiverNPI (Party: , Service: BS_ECD, Object ID:
                    00b61d6e4363334d8bd052dfb9c2c09a) The channel with object ID
                    00b61d6e4363334d8bd052dfb9c2c09a could not be found in the
                    Integration Server Java Cache. Check if the channel exists in
                    the Integration Builder Directory and execute a refresh of the
                    Java Cache.
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorInternal.getProxy(SystemAccessorInternal.java:130)
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorInternal.<init>(SystemAccessorInternal.java:46)
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorHmiServer.getConnection(SystemAccessorHmiServer.java:265)
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorHmiServer.process(SystemAccessorHmiServer.java:69)
    at
                    com.sap.aii.utilxi.hmis.server.HmisServiceImpl.invokeMethod(HmisServiceImpl.java:139)
    at
                    com.sap.aii.utilxi.hmis.server.HmisServer.process(HmisServer.java:224)
    at
                    com.sap.aii.utilxi.hmis.web.HmisServletImpl.processRequestByHmiServer(HmisServletImpl.java:370)
    at
                    com.sap.aii.utilxi.hmis.web.HmisServletImpl.processRequestByHmiServer(HmisServletImpl.java:271)
    at
                    com.sap.aii.utilxi.hmis.web.workers.HmisInternalClient.doWork(HmisInternalClient.java:70)
    at
                    com.sap.aii.utilxi.hmis.web.HmisServletImpl.doWork(HmisServletImpl.java:570)
    at
                    com.sap.aii.utilxi.hmis.web.HmisServletImpl.doPost(HmisServletImpl.java:711)
    at
                    javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
    at
                    javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
    at
                    com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.runServlet(FilterChainImpl.java:202)
    at
                    com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:103)
    at
                    com.sap.engine.services.servlets_jsp.server.servlet.AuthenticationFilter.doFilter(AuthenticationFilter.java:126)
    at
                    com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:79)
    at
                    com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:432)
    at
                    com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:210)
    at
                    com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:441)
    at
                    com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:430)
    at
                    com.sap.engine.services.servlets_jsp.filters.DSRWebContainerFilter.process(DSRWebContainerFilter.java:38)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.servlets_jsp.filters.ServletSelector.process(ServletSelector.java:81)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.servlets_jsp.filters.ApplicationSelector.process(ApplicationSelector.java:276)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.WebContainerInvoker.process(WebContainerInvoker.java:81)
    at
                    com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.ResponseLogWriter.process(ResponseLogWriter.java:60)
    at
                    com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.DefineHostFilter.process(DefineHostFilter.java:27)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.MonitoringFilter.process(MonitoringFilter.java:29)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.SessionSizeFilter.process(SessionSizeFilter.java:26)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.MemoryStatisticFilter.process(MemoryStatisticFilter.java:57)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.DSRHttpFilter.process(DSRHttpFilter.java:43)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.server.Processor.chainedRequest(Processor.java:475)
    at
                    com.sap.engine.services.httpserver.server.Processor$FCAProcessorThread.process(Processor.java:269)
    at
                    com.sap.engine.services.httpserver.server.rcm.RequestProcessorThread.run(RequestProcessorThread.java:56)
    at
                    com.sap.engine.core.thread.execution.Executable.run(Executable.java:122)
    at
                    com.sap.engine.core.thread.execution.Executable.run(Executable.java:101)
    at
                    com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:328)
    Caused
                    by:
                    com.sap.aii.ibrun.server.cache.channel.ChannelReader$CachedChannelNotFoundException:
                    The channel with object ID 00b61d6e4363334d8bd052dfb9c2c09a
                    could not be found in the Integration Server Java Cache. Check
                    if the channel exists in the Integration Builder Directory and
                    execute a refresh of the Java Cache.
    at
                    com.sap.aii.ibrun.server.cache.channel.ChannelPersistor.read(ChannelPersistor.java:56)
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorInternal.getProxy(SystemAccessorInternal.java:109)
                    53 more
    at
                    com.sap.aii.ibrep.server.lookup.LookupServiceProvider$RemoteClientDelegator.<init>(LookupServiceProvider.java:102)
    at
                    com.sap.aii.ibrep.server.lookup.LookupServiceProvider$RemoteClientDelegator.<init>(LookupServiceProvider.java:88)
    at
                    com.sap.aii.ibrep.server.lookup.LookupServiceProvider$RemoteClient.getSystemAccessor(LookupServiceProvider.java:75)
    at
                    com.sap.aii.mapping.lookup.LookupService.getSystemAccessor(LookupService.java:138)
    at
                    ConsignmentTrackingMapping.execute(ConsignmentTrackingMapping.java:254)
                    48 more
    Caused by:
                    com.sap.aii.utilxi.hmi.api.HmiMethodFault: Plain
                    exception:Error when calling an adapter by using the
                    communication channel ccRFCReceiverNPI (Party: , Service:
                    BS_ECD, Object ID: 00b61d6e4363334d8bd052dfb9c2c09a) The
                    channel with object ID 00b61d6e4363334d8bd052dfb9c2c09a could
                    not be found in the Integration Server Java Cache. Check if
                    the channel exists in the Integration Builder Directory and
                    execute a refresh of the Java Cache.
    com.sap.aii.mapping.lookup.LookupException:
                    Error when calling an adapter by using the communication
                    channel ccRFCReceiverNPI (Party: , Service: BS_ECD, Object ID:
                    00b61d6e4363334d8bd052dfb9c2c09a) The channel with object ID
                    00b61d6e4363334d8bd052dfb9c2c09a could not be found in the
                    Integration Server Java Cache. Check if the channel exists in
                    the Integration Builder Directory and execute a refresh of the
                    Java Cache.
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorInternal.getProxy(SystemAccessorInternal.java:130)
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorInternal.<init>(SystemAccessorInternal.java:46)
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorHmiServer.getConnection(SystemAccessorHmiServer.java:265)
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorHmiServer.process(SystemAccessorHmiServer.java:69)
    at
                    com.sap.aii.utilxi.hmis.server.HmisServiceImpl.invokeMethod(HmisServiceImpl.java:139)
    at
                    com.sap.aii.utilxi.hmis.server.HmisServer.process(HmisServer.java:224)
    at
                    com.sap.aii.utilxi.hmis.web.HmisServletImpl.processRequestByHmiServer(HmisServletImpl.java:370)
    at
                    com.sap.aii.utilxi.hmis.web.HmisServletImpl.processRequestByHmiServer(HmisServletImpl.java:271)
    at
                    com.sap.aii.utilxi.hmis.web.workers.HmisInternalClient.doWork(HmisInternalClient.java:70)
    at
                    com.sap.aii.utilxi.hmis.web.HmisServletImpl.doWork(HmisServletImpl.java:570)
    at
                    com.sap.aii.utilxi.hmis.web.HmisServletImpl.doPost(HmisServletImpl.java:711)
    at
                    javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
    at
                    javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
    at
                    com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.runServlet(FilterChainImpl.java:202)
    at
                    com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:103)
    at
                    com.sap.engine.services.servlets_jsp.server.servlet.AuthenticationFilter.doFilter(AuthenticationFilter.java:126)
    at
                    com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:79)
    at
                    com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:432)
    at
                    com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:210)
    at
                    com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:441)
    at
                    com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:430)
    at
                    com.sap.engine.services.servlets_jsp.filters.DSRWebContainerFilter.process(DSRWebContainerFilter.java:38)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.servlets_jsp.filters.ServletSelector.process(ServletSelector.java:81)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.servlets_jsp.filters.ApplicationSelector.process(ApplicationSelector.java:276)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.WebContainerInvoker.process(WebContainerInvoker.java:81)
    at
                    com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.ResponseLogWriter.process(ResponseLogWriter.java:60)
    at
                    com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.DefineHostFilter.process(DefineHostFilter.java:27)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.MonitoringFilter.process(MonitoringFilter.java:29)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.SessionSizeFilter.process(SessionSizeFilter.java:26)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.MemoryStatisticFilter.process(MemoryStatisticFilter.java:57)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.DSRHttpFilter.process(DSRHttpFilter.java:43)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.server.Processor.chainedRequest(Processor.java:475)
    at
                    com.sap.engine.services.httpserver.server.Processor$FCAProcessorThread.process(Processor.java:269)
    at
                    com.sap.engine.services.httpserver.server.rcm.RequestProcessorThread.run(RequestProcessorThread.java:56)
    at
                    com.sap.engine.core.thread.execution.Executable.run(Executable.java:122)
    at
                    com.sap.engine.core.thread.execution.Executable.run(Executable.java:101)
    at
                    com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:328)
    Caused
                    by:
                    com.sap.aii.ibrun.server.cache.channel.ChannelReader$CachedChannelNotFoundException:
                    The channel with object ID 00b61d6e4363334d8bd052dfb9c2c09a
                    could not be found in the Integration Server Java Cache. Check
                    if the channel exists in the Integration Builder Directory and
                    execute a refresh of the Java Cache.
    at
                    com.sap.aii.ibrun.server.cache.channel.ChannelPersistor.read(ChannelPersistor.java:56)
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorInternal.getProxy(SystemAccessorInternal.java:109)
                    53 more
    at
                    com.sap.aii.utilxi.hmi.api.HmiMethodFault.parseGdi(HmiMethodFault.java:156)
    at
                    com.sap.aii.utilxi.hmi.core.msg.HmiResponse.setState(HmiResponse.java:190)
    at
                    com.sap.aii.utilxi.hmi.core.msg.HmiResponse.parseGdi(HmiResponse.java:141)
    at
                    com.sap.aii.utilxi.hmi.api.HmiHttpJDKClient.sendRequestAndReceiveResponse(HmiHttpJDKClient.java:257)
    at
                    com.sap.aii.utilxi.hmi.api.HmiClientAdapter.invokeMethod(HmiClientAdapter.java:92)
    at
                    com.sap.aii.ibrep.server.lookup.SystemAccessorHmiClient.<init>(SystemAccessorHmiClient.java:52)
    at
                    com.sap.aii.ibrep.server.lookup.SystemAccessorHmiClient.getInstance(SystemAccessorHmiClient.java:73)
    at
                    com.sap.aii.ibrep.server.lookup.LookupServiceProvider$RemoteClientDelegator.<init>(LookupServiceProvider.java:98)
                    52 more
    Root Cause:
    com.sap.aii.mapping.lookup.LookupException:
                    Plain exception:Error when calling an adapter by using the
                    communication channel ccRFCReceiverNPI (Party: , Service:
                    BS_ECD, Object ID: 00b61d6e4363334d8bd052dfb9c2c09a) The
                    channel with object ID 00b61d6e4363334d8bd052dfb9c2c09a could
                    not be found in the Integration Server Java Cache. Check if
                    the channel exists in the Integration Builder Directory and
                    execute a refresh of the Java Cache.
    com.sap.aii.mapping.lookup.LookupException:
                    Error when calling an adapter by using the communication
                    channel ccRFCReceiverNPI (Party: , Service: BS_ECD, Object ID:
                    00b61d6e4363334d8bd052dfb9c2c09a) The channel with object ID
                    00b61d6e4363334d8bd052dfb9c2c09a could not be found in the
                    Integration Server Java Cache. Check if the channel exists in
                    the Integration Builder Directory and execute a refresh of the
                    Java Cache.
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorInternal.getProxy(SystemAccessorInternal.java:130)
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorInternal.<init>(SystemAccessorInternal.java:46)
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorHmiServer.getConnection(SystemAccessorHmiServer.java:265)
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorHmiServer.process(SystemAccessorHmiServer.java:69)
    at
                    com.sap.aii.utilxi.hmis.server.HmisServiceImpl.invokeMethod(HmisServiceImpl.java:139)
    at
                    com.sap.aii.utilxi.hmis.server.HmisServer.process(HmisServer.java:224)
    at
                    com.sap.aii.utilxi.hmis.web.HmisServletImpl.processRequestByHmiServer(HmisServletImpl.java:370)
    at
                    com.sap.aii.utilxi.hmis.web.HmisServletImpl.processRequestByHmiServer(HmisServletImpl.java:271)
    at
                    com.sap.aii.utilxi.hmis.web.workers.HmisInternalClient.doWork(HmisInternalClient.java:70)
    at
                    com.sap.aii.utilxi.hmis.web.HmisServletImpl.doWork(HmisServletImpl.java:570)
    at
                    com.sap.aii.utilxi.hmis.web.HmisServletImpl.doPost(HmisServletImpl.java:711)
    at
                    javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
    at
                    javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
    at
                    com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.runServlet(FilterChainImpl.java:202)
    at
                    com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:103)
    at
                    com.sap.engine.services.servlets_jsp.server.servlet.AuthenticationFilter.doFilter(AuthenticationFilter.java:126)
    at
                    com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:79)
    at
                    com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:432)
    at
                    com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:210)
    at
                    com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:441)
    at
                    com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:430)
    at
                    com.sap.engine.services.servlets_jsp.filters.DSRWebContainerFilter.process(DSRWebContainerFilter.java:38)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.servlets_jsp.filters.ServletSelector.process(ServletSelector.java:81)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.servlets_jsp.filters.ApplicationSelector.process(ApplicationSelector.java:276)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.WebContainerInvoker.process(WebContainerInvoker.java:81)
    at
                    com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.ResponseLogWriter.process(ResponseLogWriter.java:60)
    at
                    com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.DefineHostFilter.process(DefineHostFilter.java:27)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.MonitoringFilter.process(MonitoringFilter.java:29)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.SessionSizeFilter.process(SessionSizeFilter.java:26)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.MemoryStatisticFilter.process(MemoryStatisticFilter.java:57)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.DSRHttpFilter.process(DSRHttpFilter.java:43)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.server.Processor.chainedRequest(Processor.java:475)
    at
                    com.sap.engine.services.httpserver.server.Processor$FCAProcessorThread.process(Processor.java:269)
    at
                    com.sap.engine.services.httpserver.server.rcm.RequestProcessorThread.run(RequestProcessorThread.java:56)
    at
                    com.sap.engine.core.thread.execution.Executable.run(Executable.java:122)
    at
                    com.sap.engine.core.thread.execution.Executable.run(Executable.java:101)
    at
                    com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:328)
    Caused
                    by:
                    com.sap.aii.ibrun.server.cache.channel.ChannelReader$CachedChannelNotFoundException:
                    The channel with object ID 00b61d6e4363334d8bd052dfb9c2c09a
                    could not be found in the Integration Server Java Cache. Check
                    if the channel exists in the Integration Builder Directory and
                    execute a refresh of the Java Cache.
    at
                    com.sap.aii.ibrun.server.cache.channel.ChannelPersistor.read(ChannelPersistor.java:56)
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorInternal.getProxy(SystemAccessorInternal.java:109)
                    53 more
    at
                    com.sap.aii.ibrep.server.lookup.LookupServiceProvider$RemoteClientDelegator.<init>(LookupServiceProvider.java:102)
    at
                    com.sap.aii.ibrep.server.lookup.LookupServiceProvider$RemoteClientDelegator.<init>(LookupServiceProvider.java:88)
    at
                    com.sap.aii.ibrep.server.lookup.LookupServiceProvider$RemoteClient.getSystemAccessor(LookupServiceProvider.java:75)
    at
                    com.sap.aii.mapping.lookup.LookupService.getSystemAccessor(LookupService.java:138)
    at
                    ConsignmentTrackingMapping.execute(ConsignmentTrackingMapping.java:254)
    at
                    ConsignmentTrackingMapping.transform(ConsignmentTrackingMapping.java:46)
    at
                    com.sap.aii.ib.server.mapping.execution.JavaMapping.executeStep(JavaMapping.java:92)
    at
                    com.sap.aii.ib.server.mapping.execution.Mapping.execute(Mapping.java:60)
    at
                    com.sap.aii.ib.server.mapping.execution.MappingHandler.map(MappingHandler.java:87)
    at
                    com.sap.aii.ib.server.mapping.execution.MappingHandler.map(MappingHandler.java:54)
    at
                    com.sap.aii.ibrep.server.mapping.rt.MappingHandlerAdapter.run(MappingHandlerAdapter.java:139)
    at
                    com.sap.aii.ibrep.server.mapping.exec.ExecuteIfMapCommand.execute(ExecuteIfMapCommand.java:33)
    at
                    com.sap.aii.ib.server.mapping.exec.CommandManager.execute(CommandManager.java:43)
    at
                    com.sap.aii.ibrep.server.mapping.ServerMapService.execute(ServerMapService.java:40)
    at
                    com.sap.aii.ibrep.server.mapping.MapServiceBean.execute(MapServiceBean.java:40)
    at
                    sun.reflect.GeneratedMethodAccessor640.invoke(Unknown Source)
    at
                    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at
                    java.lang.reflect.Method.invoke(Method.java:597)
    at
                    com.sap.engine.services.ejb3.runtime.impl.RequestInvocationContext.proceedFinal(RequestInvocationContext.java:47)
    at
                    com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:166)
    at
                    com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatesTransition.invoke(Interceptors_StatesTransition.java:19)
    at
                    com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
    at
                    com.sap.engine.services.ejb3.runtime.impl.Interceptors_Resource.invoke(Interceptors_Resource.java:47)
    at
                    com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
    at
                    com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.doWorkWithAttribute(Interceptors_Transaction.java:37)
    at
                    com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.invoke(Interceptors_Transaction.java:21)
    at
                    com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
    at
                    com.sap.engine.services.ejb3.runtime.impl.Interceptors_MethodRetry.invoke(Interceptors_MethodRetry.java:46)
    at
                    com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
    at
                    com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:189)
    at
                    com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatelessInstanceGetter.invoke(Interceptors_StatelessInstanceGetter.java:16)
    at
                    com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
    at
                    com.sap.engine.services.ejb3.runtime.impl.Interceptors_SecurityCheck.invoke(Interceptors_SecurityCheck.java:25)
    at
                    com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
    at
                    com.sap.engine.services.ejb3.runtime.impl.Interceptors_ExceptionTracer.invoke(Interceptors_ExceptionTracer.java:17)
    at
                    com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
    at
                    com.sap.engine.services.ejb3.runtime.impl.DefaultInvocationChainsManager.startChain(DefaultInvocationChainsManager.java:138)
    at
                    com.sap.engine.services.ejb3.runtime.impl.DefaultEJBProxyInvocationHandler.invoke(DefaultEJBProxyInvocationHandler.java:164)
    at
                    $Proxy1181.execute(Unknown Source)
    at
                    sun.reflect.GeneratedMethodAccessor639.invoke(Unknown Source)
    at
                    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at
                    java.lang.reflect.Method.invoke(Method.java:597)
    at
                    com.sap.engine.services.rmi_p4.P4DynamicSkeleton.dispatch(P4DynamicSkeleton.java:240)
    at
                    com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:459)
    at
                    com.sap.engine.services.rmi_p4.server.ServerDispatchImpl.run(ServerDispatchImpl.java:69)
    at
                    com.sap.engine.services.rmi_p4.P4Message.process(P4Message.java:72)
    at
                    com.sap.engine.services.rmi_p4.P4Message.execute(P4Message.java:43)
    at
                    com.sap.engine.services.cross.fca.FCAConnectorImpl.executeRequest(FCAConnectorImpl.java:983)
    at
                    com.sap.engine.services.rmi_p4.P4Message.process(P4Message.java:59)
    at
                    com.sap.engine.services.cross.fca.MessageReader.run(MessageReader.java:55)
    at
                    com.sap.engine.core.thread.execution.Executable.run(Executable.java:122)
    at
                    com.sap.engine.core.thread.execution.Executable.run(Executable.java:101)
    at
                    com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:328)
    Caused
                    by: com.sap.aii.utilxi.hmi.api.HmiMethodFault: Plain
                    exception:Error when calling an adapter by using the
                    communication channel ccRFCReceiverNPI (Party: , Service:
                    BS_ECD, Object ID: 00b61d6e4363334d8bd052dfb9c2c09a) The
                    channel with object ID 00b61d6e4363334d8bd052dfb9c2c09a could
                    not be found in the Integration Server Java Cache. Check if
                    the channel exists in the Integration Builder Directory and
                    execute a refresh of the Java Cache.
    com.sap.aii.mapping.lookup.LookupException:
                    Error when calling an adapter by using the communication
                    channel ccRFCReceiverNPI (Party: , Service: BS_ECD, Object ID:
                    00b61d6e4363334d8bd052dfb9c2c09a) The channel with object ID
                    00b61d6e4363334d8bd052dfb9c2c09a could not be found in the
                    Integration Server Java Cache. Check if the channel exists in
                    the Integration Builder Directory and execute a refresh of the
                    Java Cache.
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorInternal.getProxy(SystemAccessorInternal.java:130)
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorInternal.<init>(SystemAccessorInternal.java:46)
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorHmiServer.getConnection(SystemAccessorHmiServer.java:265)
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorHmiServer.process(SystemAccessorHmiServer.java:69)
    at
                    com.sap.aii.utilxi.hmis.server.HmisServiceImpl.invokeMethod(HmisServiceImpl.java:139)
    at
                    com.sap.aii.utilxi.hmis.server.HmisServer.process(HmisServer.java:224)
    at
                    com.sap.aii.utilxi.hmis.web.HmisServletImpl.processRequestByHmiServer(HmisServletImpl.java:370)
    at
                    com.sap.aii.utilxi.hmis.web.HmisServletImpl.processRequestByHmiServer(HmisServletImpl.java:271)
    at
                    com.sap.aii.utilxi.hmis.web.workers.HmisInternalClient.doWork(HmisInternalClient.java:70)
    at
                    com.sap.aii.utilxi.hmis.web.HmisServletImpl.doWork(HmisServletImpl.java:570)
    at
                    com.sap.aii.utilxi.hmis.web.HmisServletImpl.doPost(HmisServletImpl.java:711)
    at
                    javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
    at
                    javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
    at
                    com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.runServlet(FilterChainImpl.java:202)
    at
                    com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:103)
    at
                    com.sap.engine.services.servlets_jsp.server.servlet.AuthenticationFilter.doFilter(AuthenticationFilter.java:126)
    at
                    com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:79)
    at
                    com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:432)
    at
                    com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:210)
    at
                    com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:441)
    at
                    com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:430)
    at
                    com.sap.engine.services.servlets_jsp.filters.DSRWebContainerFilter.process(DSRWebContainerFilter.java:38)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.servlets_jsp.filters.ServletSelector.process(ServletSelector.java:81)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.servlets_jsp.filters.ApplicationSelector.process(ApplicationSelector.java:276)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.WebContainerInvoker.process(WebContainerInvoker.java:81)
    at
                    com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.ResponseLogWriter.process(ResponseLogWriter.java:60)
    at
                    com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.DefineHostFilter.process(DefineHostFilter.java:27)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.MonitoringFilter.process(MonitoringFilter.java:29)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.SessionSizeFilter.process(SessionSizeFilter.java:26)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.MemoryStatisticFilter.process(MemoryStatisticFilter.java:57)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.filters.DSRHttpFilter.process(DSRHttpFilter.java:43)
    at
                    com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at
                    com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at
                    com.sap.engine.services.httpserver.server.Processor.chainedRequest(Processor.java:475)
    at
                    com.sap.engine.services.httpserver.server.Processor$FCAProcessorThread.process(Processor.java:269)
    at
                    com.sap.engine.services.httpserver.server.rcm.RequestProcessorThread.run(RequestProcessorThread.java:56)
    at
                    com.sap.engine.core.thread.execution.Executable.run(Executable.java:122)
    at
                    com.sap.engine.core.thread.execution.Executable.run(Executable.java:101)
    at
                    com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:328)
    Caused
                    by:
                    com.sap.aii.ibrun.server.cache.channel.ChannelReader$CachedChannelNotFoundException:
                    The channel with object ID 00b61d6e4363334d8bd052dfb9c2c09a
                    could not be found in the Integration Server Java Cache. Check
                    if the channel exists in the Integration Builder Directory and
                    execute a refresh of the Java Cache.
    at
                    com.sap.aii.ibrun.server.cache.channel.ChannelPersistor.read(ChannelPersistor.java:56)
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorInternal.getProxy(SystemAccessorInternal.java:109)
                    53 more
    at
                    com.sap.aii.utilxi.hmi.api.HmiMethodFault.parseGdi(HmiMethodFault.java:156)
    at
                    com.sap.aii.utilxi.hmi.core.msg.HmiResponse.setState(HmiResponse.java:190)
    at
                    com.sap.aii.utilxi.hmi.core.msg.HmiResponse.parseGdi(HmiResponse.java:141)
    at
                    com.sap.aii.utilxi.hmi.api.HmiHttpJDKClient.sendRequestAndReceiveResponse(HmiHttpJDKClient.java:257)
    at
                    com.sap.aii.utilxi.hmi.api.HmiClientAdapter.invokeMethod(HmiClientAdapter.java:92)
    at
                    com.sap.aii.ibrep.server.lookup.SystemAccessorHmiClient.<init>(SystemAccessorHmiClient.java:52)
    at
                    com.sap.aii.ibrep.server.lookup.SystemAccessorHmiClient.getInstance(SystemAccessorHmiClient.java:73)
    at
                    com.sap.aii.ibrep.server.lookup.LookupServiceProvider$RemoteClientDelegator.<init>(LookupServiceProvider.java:98)
                    52 more
    Root Cause:
    com.sap.aii.utilxi.hmi.api.HmiMethodFault:
                    Plain exception:Error when calling an adapter by using the
                    communication channel ccRFCReceiverNPI (Party: , Service:
                    BS_ECD, Object ID: 00b61d6e4363334d8bd052dfb9c2c09a) The
                    channel with object ID 00b61d6e4363334d8bd052dfb9c2c09a could
                    not be found in the Integration Server Java Cache. Check if
                    the channel exists in the Integration Builder Directory and
                    execute a refresh of the Java Cache.
    com.sap.aii.mapping.lookup.LookupException:
                    Error when calling an adapter by using the communication
                    channel ccRFCReceiverNPI (Party: , Service: BS_ECD, Object ID:
                    00b61d6e4363334d8bd052dfb9c2c09a) The channel with object ID
                    00b61d6e4363334d8bd052dfb9c2c09a could not be found in the
                    Integration Server Java Cache. Check if the channel exists in
                    the Integration Builder Directory and execute a refresh of the
                    Java Cache.
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorInternal.getProxy(SystemAccessorInternal.java:130)
    at
                    com.sap.aii.ibrun.server.lookup.SystemAccessorInternal.<init>(SystemAccessorInternal.java:46)

  • Java Error in RFC Lookup in XSLT Mapping usinf Java helper class

    Hi All,
    I am doing RFC Lookup in XSLT Mapping using Java Helper class.
    The Lookup works fine when called one RFC at a time However my requirement is I want to do 2 Lookups.
    Both Lookups works when done individually however when I call both lookups in one mapping I get following error "javax.xml.transform.TransformerException: DOMSource whose Node is null."
    Following is the code I have written in XSLT for the lookup:
         <xsl:template name="Lookup_1">
              <xsl:param name="STDPN"/>
                   <rfc:RFC_READ_TABLE>
                        <QUERY_TABLE>KNA1</QUERY_TABLE>
                        <OPTIONS><item><TEXT>
                                  <xsl:value-of select="$STDPN"/>
                             </TEXT></item>
                        </OPTIONS>
                        <FIELDS>
                             <item>
                                  <FIELDNAME>KUNNR</FIELDNAME>
                             </item>
                        </FIELDS>
                   </rfc:RFC_READ_TABLE>
              </xsl:variable>
              <xsl:variable name="response" xmlns:lookup="java:urn.mt.pi" select="lookup:execute($request, 'BS_D, 'cc_RfcLookup', $inputparam)"/>
              <xsl:element name="STDPN">
                   <xsl:value-of select="$response//DATA/item/WA"/>
              </xsl:element>
         </xsl:template>
         <xsl:template name="Lookup_2">
              <xsl:param name="BELNR"/>
                   <xsl:variable name="Query">AGMNT = '<xsl:value-of select="$BELNR"/>'</xsl:variable>
                   <xsl:variable name="request1">
                        <rfc:RFC_READ_TABLE>
                             <QUERY_TABLE>ZTABLE</QUERY_TABLE>
                             <OPTIONS><item><TEXT>
                                  <xsl:value-of select="$Query"/>
                                  </TEXT></item>
                             </OPTIONS>
                             <FIELDS>
                                  <item>
                                       <FIELDNAME>KUNAG</FIELDNAME>
                                  </item>
                             </FIELDS>
                        </rfc:RFC_READ_TABLE>
                   </xsl:variable>
                   <xsl:variable name="response1" xmlns:lookup="java:urn.mt.pi" select="lookup:execute($request1, 'BS_D','cc_RfcLookup', $inputparam)"/>
                   <xsl:element name="BELNR">
                        <xsl:value-of select="$response1//DATA/item/WA"/>
                   </xsl:element>
         </xsl:template>
    My Question: Am I doing anything wrong? Or Is it possible to call multiple lookups in one XSLT?
    Thanks and Regards,
    Atul

    Hi Atul,
    I had the same problem like you had.
    The main Problem is that with the example code the request variable is created as NodeList object. In XSLT a variable is somekind of a constant and can't be changed. As the request object is empty after the first request the programm fails at the following line:
    Source source = new DOMSource(request.item(0));
    So I've created a workaround for this problem.
    In the call of the template I've put the request as a parameter object at the template call:
    <xsl:with-param name="req">
    <rfc:PLM_EXPLORE_BILL_OF_MATERIAL xmlns:rfc="urn:sap-com:document:sap:rfc:functions">
      <APPLICATION>Z001</APPLICATION>
      <FLAG_NEW_EXPLOSION>X</FLAG_NEW_EXPLOSION>
      <MATERIALNUMBER><xsl:value-of select="value"/></MATERIALNUMBER>
      <PLANT>FSD0</PLANT>
      <VALIDFROM><xsl:value-of select="//Recordset/Row[name='DTM-031']/value"/></VALIDFROM>
      <BOMITEM_DATA/>
    </rfc:PLM_EXPLORE_BILL_OF_MATERIAL>
    </xsl:with-param>
    With this change the request will be provided as a String object and not as a NodeList object.
    Afterwards the RfcLookup.java has to be changed to the following:
    package com.franke.mappings;
    import java.io.ByteArrayInputStream;
    import java.io.ByteArrayOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.PrintWriter;
    import java.io.StringWriter;
    import java.util.Map;
    import javax.xml.parsers.DocumentBuilder;
    import javax.xml.parsers.DocumentBuilderFactory;
    import javax.xml.transform.Source;
    import javax.xml.transform.Transformer;
    import javax.xml.transform.TransformerFactory;
    import javax.xml.transform.dom.DOMSource;
    import javax.xml.transform.stream.StreamResult;
    import org.w3c.dom.Document;
    import org.w3c.dom.Node;
    import org.w3c.dom.NodeList;
    import com.sap.aii.mapping.lookup.Channel;
    import com.sap.aii.mapping.api.StreamTransformationConstants;
    import com.sap.aii.mapping.api.AbstractTrace;
    import com.sap.aii.mapping.lookup.RfcAccessor;
    import com.sap.aii.mapping.lookup.LookupService;
    import com.sap.aii.mapping.lookup.XmlPayload;
    * @author Thorsten Nordholm Søbirk, AppliCon A/S
    * Helper class for using the XI Lookup API with XSLT mappings for calling RFCs.
    * The class is generic in that it can be used to call any remote-enabled
    * function module in R/3. Generation of the XML request document and parsing of
    * the XML response is left to the stylesheet, where this can be done in a very
    * natural manner.
    * TD:
    * Changed the class that request is sent as String, because of IndexOutOfBound-exception
    * When sending multiple requests in one XSLT mapping.
    public class RfcLookup {
         * Execute RFC lookup.
         * @param request RFC request - TD: changed to String
         * @param service name of service
         * @param channelName name of communication channel
         * @param inputParam mapping parameters
         * @return Node containing RFC response
         public static Node execute( String request,
                 String service,
                 String channelName,
                 Map inputParam)
              AbstractTrace trace = (AbstractTrace) inputParam.get(StreamTransformationConstants.MAPPING_TRACE);
              Node responseNode = null;
              try {
                  // Get channel and accessor
                  Channel channel = LookupService.getChannel(service, channelName);
                  RfcAccessor accessor = LookupService.getRfcAccessor(channel);
                   // Serialise request NodeList - TD: Not needed anymore as request is String
                   /*TransformerFactory factory = TransformerFactory.newInstance();
                   Transformer transformer = factory.newTransformer();
                   Source source = new DOMSource(request.item(0));
                   ByteArrayOutputStream baos = new ByteArrayOutputStream();
                   StreamResult streamResult = new StreamResult(baos);
                   transformer.transform(source, streamResult);*/
                    // TD: Add xml header and remove linefeeds for the request string
                    request = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"+request.replaceAll("[\r\n]+", ""); 
                    // TD: Get byte Array from request String to send afterwards
                    byte[] requestBytes = request.getBytes();
                   // TD: Not used anymore as request is String
                    //byte[] requestBytes = baos.toByteArray();
                    trace.addDebugMessage("RFC Request: " + new String(requestBytes));
                    // Create input stream representing the function module request message
                    InputStream inputStream = new ByteArrayInputStream(requestBytes);
                    // Create XmlPayload
                    XmlPayload requestPayload =LookupService.getXmlPayload(inputStream);
                    // Execute lookup
                    XmlPayload responsePayload = accessor.call(requestPayload);
                    InputStream responseStream = responsePayload.getContent();
                    TeeInputStream tee = new TeeInputStream(responseStream);
                    // Create DOM tree for response
                    DocumentBuilder docBuilder =DocumentBuilderFactory.newInstance().newDocumentBuilder();
                    Document document = docBuilder.parse(tee);
                    trace.addDebugMessage("RFC Response: " + tee.getStringContent());
                    responseNode = document.getFirstChild();
              } catch (Throwable t) {
                   StringWriter sw = new StringWriter();
                   t.printStackTrace(new PrintWriter(sw));
                   trace.addWarning(sw.toString());
              return responseNode;
         * Helper class which collects stream input while reading.
         static class TeeInputStream extends InputStream {
               private ByteArrayOutputStream baos;
               private InputStream wrappedInputStream;
               TeeInputStream(InputStream inputStream) {
                    baos = new ByteArrayOutputStream();
                    wrappedInputStream = inputStream;
               * @return stream content as String
               String getStringContent() {
                    return baos.toString();
              /* (non-Javadoc)
              * @see java.io.InputStream#read()
              public int read() throws IOException {
                   int r = wrappedInputStream.read();
                   baos.write(r);
                   return r;
    Then you need to compile and upload this class and it should work.
    I hope that this helps you.
    Best regards
    Till

  • Code Sample: Easy RFC Lookup From XSLT Mappings Using a Java Helper Class

    Hi everyone,
    This is just a shameless plug for my article: <a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/05a3d62e-0a01-0010-14bc-adc8efd4ee14">Easy RFC Lookup From XSLT Mappings Using a Java Helper Class</a>. I hope you're interested in reading it, and I welcome your comments in this thread.
    Kind regards,
    Thorsten

    Hi Stefan. Thanks for your post. I have already done that. It still does not work. As a base for my java helper class I have usesd Thorstens code.
    The problem is quite confusing. I will try to ouline both issues here.
    First of all, when try to test from within the Operation Mapping, I always get a java error saying it cannot find the communication channel (it is there and working because I have tested it with the RFCLookup in graphical mapping). I have found a way to work around this, and that is to uncheck the "Use SAP XMLToolkit" checkbox --> switch to test tab, enter my ReceiverService in the parameter tab (header parameter) --> switch back to Definition tab, check the "Use SAP XMLToolkit" checkbox --> switch to Test tab and run the test. Then the XSLT and call to java helper class will work. Of course this is not really something you want to do all the time. Maybe there is a bug.
    Secondly, it never works when I try to do it "live". I am using a file adapter to pick up one file, convert it and a file adapter to drop the converted file. I get the following error code in SXMB_MONI.
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    <!--  Request Message Mapping   -->
    <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
      <SAP:Category>Application</SAP:Category>
      <SAP:Code area="MAPPING">TRANSFORMER_CONF_EX</SAP:Code>
      <SAP:P1>ATJ_Accounting2XML_Accounting.xsl</SAP:P1>
      <SAP:P2>http://rd.accounting.logica.com</SAP:P2>
      <SAP:P3>fd552c30-bad9-11dd-9761-c21dac1b818c</SAP:P3>
      <SAP:P4>-1</SAP:P4>
      <SAP:AdditionalText />
      <SAP:Stack>TransformerConfigurationException triggered while loading XSLT mapping ATJ_Accounting2XML_Accounting.xsl; http://rd.accounting.logica.comfd552c30-bad9-11dd-9761-c21dac1b818c-1</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>
    Using an XSLT without a call to a java helper class, works just fine.
    I am totally at a loss here. Any more input would be much appreciated.
    /Patrik

  • XSLT mapping with Java helper classes

    Hi,
    I'm trying to implement a XSLT mapping to convert my request to a specific soap request message format for this I'm calling some methods from a java helper class. I have imported the jar file into the archives. When I tried to test the interface it keeps complaing there is some exception but doesn't give me the exact error. Has any one called any java helper classes with in XSLT mapping, if so I would appreciate if you could help me with this. Here is the code from xsl.
    <wsse:Security soapenv:actor="http://schemas.xmlsoap.org/soap/actor/next" soapenv:mustUnderstand="0" xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/07/secext"   xmlns:UserToken="java:com.company.test.mapping.UserTokenMap">
    <wsse:UsernameToken>
        <wsse:Username xsi:type="soapenc:string" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
          <xsl:value-of select="UserToken:getUsername()"/>
        </wsse:Username>
        <wsse:Password wsse:Type="wsse:PasswordDigest" xsi:type="soapenc:string" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
        <xsl:value-of select="UserToken:getPasswordDigest()"/>
        </wsse:Password>
        <wsse:Nonce xsi:type="soapenc:string" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
        <xsl:value-of select="UserToken:getNonce()"/>
        </wsse:Nonce>
        <wsu:Created xsi:type="soapenc:string" xmlns:wsu="http://schemas.xmlsoap.org/ws/2002/07/utility" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
        <xsl:value-of select="UserToken:getCreateDate()"/>
    </wsu:Created>
    </wsse:UsernameToken>
    </wsse:Security>
    Thanks,
    Joe

    Hi,
    I'm getting following exception when I refer to the java class with in my XSLT mapping. Any one encountered the same problem.
    com.sap.engine.services.ejb.exceptions.BaseRemoteException:
    Exception in method transform.
         at com.sap.aii.ibrep.sbeans.mapping.MapServiceRemoteObjectImpl0.transform(MapServiceRemoteObjectImpl0.java:218)
         at com.sap.aii.ibrep.sbeans.mapping.MapServiceRemoteObjectImpl0p4_Skel.dispatch(MapServiceRemoteObjectImpl0p4_Skel.java:104)
         at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:320)
         at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:198)
         at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:129)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
         at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(Native
    Method)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)
    Caused by: java.lang.UnsupportedClassVersionError:
    com/earthlink/xi/mapping/UserTokenMap (Unsupported
    major.minor version 49.0)
         at java.lang.ClassLoader.defineClass0(Native
    Method)
         at java.lang.ClassLoader.defineClass(ClassLoader.java:539)
         at java.lang.ClassLoader.defineClass(ClassLoader.java:448)
         at com.sap.aii.ibrep.server.mapping.ibrun.RepMappingLoader.findClass(RepMappingLoader.java:175)
         at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
         at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
         at com.sap.engine.lib.xsl.xpath.JLBLibrary.<init>(JLBLibrary.java:33)
         at com.sap.engine.lib.xsl.xpath.LibraryManager.getFunction(LibraryManager.java:69)
         at com.sap.engine.lib.xsl.xpath.ETFunction.evaluate(ETFunction.java:98)
         at com.sap.engine.lib.xsl.xpath.XPathProcessor.innerProcess(XPathProcessor.java:56)
         at com.sap.engine.lib.xsl.xpath.XPathProcessor.process(XPathProcessor.java:43)
         at com.sap.engine.lib.xsl.xpath.XPathProcessor.process(XPathProcessor.java:51)
         at com.sap.engine.lib.xsl.xslt.XSLValueOf.process(XSLValueOf.java:76)
         at com.sap.engine.lib.xsl.xslt.XSLNode.processFromFirst(XSLNode.java:296)
         at com.sap.engine.lib.xsl.xslt.XSLElement.process(XSLElement.java:248)
         at com.sap.engine.lib.xsl.xslt.XSLNode.processFromFirst(XSLNode.java:296)
         at com.sap.engine.lib.xsl.xslt.XSLElement.process(XSLElement.java:248)
         at com.sap.engine.lib.xsl.xslt.XSLNode.processFromFirst(XSLNode.java:296)
         at com.sap.engine.lib.xsl.xslt.XSLElement.process(XSLElement.java:248)
         at com.sap.engine.lib.xsl.xslt.XSLNode.processFromFirst(XSLNode.java:296)
         at com.sap.engine.lib.xsl.xslt.XSLElement.process(XSLElement.java:248)
         at com.sap.engine.lib.xsl.xslt.XSLNode.processFromFirst(XSLNode.java:296)
         at com.sap.engine.lib.xsl.xslt.XSLElement.process(XSLElement.java:248)
         at com.sap.engine.lib.xsl.xslt.XSLNode.processFromFirst(XSLNode.java:296)
         at com.sap.engine.lib.xsl.xslt.XSLTemplate.process(XSLTemplate.java:272)
         at com.sap.engine.lib.xsl.xslt.XSLStylesheet.process(XSLStylesheet.java:463)
         at com.sap.engine.lib.xsl.xslt.XSLStylesheet.process(XSLStylesheet.java:431)
         at com.sap.engine.lib.xsl.xslt.XSLStylesheet.process(XSLStylesheet.java:394)
         at com.sap.engine.lib.jaxp.TransformerImpl.transformWithStylesheet(TransformerImpl.java:398)
         at com.sap.engine.lib.jaxp.TransformerImpl.transform(TransformerImpl.java:240)
         at com.sap.aii.ibrep.server.mapping.ibrun.RepMappingTransformer.transform(RepMappingTransformer.java:150)
         at com.sap.aii.ibrep.server.mapping.ibrun.RepXSLTMapping.execute(RepXSLTMapping.java:81)
         at com.sap.aii.ibrep.server.mapping.ibrun.RepSequenceMapping.execute(RepSequenceMapping.java:54)
         at com.sap.aii.ibrep.server.mapping.ibrun.RepMappingHandler.run(RepMappingHandler.java:80)
         at com.sap.aii.ibrep.server.mapping.rt.MappingHandlerAdapter.run(MappingHandlerAdapter.java:107)
         at com.sap.aii.ibrep.server.mapping.ServerMapService.transformInterfaceMapping(ServerMapService.java:127)
         at com.sap.aii.ibrep.server.mapping.ServerMapService.transform(ServerMapService.java:104)
         at com.sap.aii.ibrep.sbeans.mapping.MapServiceBean.transform(MapServiceBean.java:40)
         at com.sap.aii.ibrep.sbeans.mapping.MapServiceRemoteObjectImpl0.transform(MapServiceRemoteObjectImpl0.java:167)
         ... 10 more
    ; nested exception is:
         java.lang.UnsupportedClassVersionError:
    com/earthlink/xi/mapping/UserTokenMap (Unsupported
    major.minor version 49.0)

  • SALERT_CREATE RFC in PI Mapping (RFC LookUps) to triggering Alerts:

    Hi
    I got a questions on using SALERT_CREATE RFC in PI Mapping (RFC LookUps) to triggering Alerts:
    1) Should I import RFC (SAP PI server) into SAP PI ESB?
    2) Should I maintain the details of SAP PI in the RFC receiver channel ?
    3) Can I use this RFC for RFC Lookups  like any other RFC (ECC)?
    I really appreciate for your help on this
    Thanks
    Vasu

    >>Should I import RFC (SAP PI server) into SAP PI ESB?
    No, this is not required, in your UDF, you just need to build the same structure as the RFC expects so to make it easier, you can import the RFC and see how its structure looks like but the real RFC is not used in RFC Lookup.
    >>Should I maintain the details of SAP PI in the RFC receiver channel ?
    In general,you need to maintain the details of the SAP system where the RFC is stored, it could be PI/ECC or any other system.
    Since you specify Alert information in this RFC lookup, the details will be of PI system.
    >>Can I use this RFC for RFC Lookups like any other RFC (ECC)?
    This RFC is used only to build the structure in UDF, it is not used in anything else.
    Note: Since you have mentioned writing UDF, i am assuming you are using PI 7.0. If you are on PI 7.1, you don't need to write UDF for it. There is  already a standard function for RFC Lookup.
    Thanks
    Aamir

  • RFC Lookup using RFC_READ_TABLE

    Hi,
    I'm doing RFC lookup using RFC_READ_TABLE to read data from table "LIPS". I am getting the following error with the XML signature
    DVEBMGS01/j2ee/cluster/server0/./temp/classpath_resolver/Mapb16b89b090ec11debb52001e0b450820/source/com/sap/xi/tf/_MM_GetCompanyDetails_.java:72: ';' expected String rfcXML = "<?xml version="1.0" encoding="UTF-8"?><ns0:RFC_READ_TABLE xmlns:ns0="urn:sap-com:document:sap:rfc:functions"><QUERY_TABLE>"+ DBTABLE + "</QUERY_TABLE><DATA></DATA><FIELDS><item><FIELDNAME>"+ FIELDS "</FIELDNAME></item></FIELDS><OPTIONS><item><TEXT>" WHERE_CLAUSE +"</TEXT></item></OPTIONS></ns0:RFC_READ_TABLE>" ; ^ 1 error.
    Please let me know how this works
    Regards,
    Ravi

    Hi Ravi,
    This seems to me like a syntax error. Fix that and it should work fine.
    Regards,
    Neetesh

  • Is there any practical reason to use DB helper class?

    Is there any practical reason to use database helper class ( e.g. database.bookDB in Duke's bookstore)in servlet design? What if I setup a DB connection for every servlet?

    to ken_robinson
    I am currently setup DataSurece in servlet init().Usually (I know WebLogic is this way), if you configure the DataSource through the app server's configuration app, it is available to all applications.
    The most efficient way to look up the DataSource in a particular app is have a ServletContextListener lookup the DataSource from JNDI and set it in the Context as an Attribute. Each servlet would then, in it's init() method, get the DataSource from the ServletContext (faster than using JNDI for each Servlet. The ServletContextListener requires the container you are running in support the 2.3 spec. If it does not, simply use a startup servlet (servlet that is loaded when the app is loaded) and do the same thing.

  • Is there any advantage to use database helper class

    Is there any advantage to use database helper class ( e.g. database.bookDB in Duke's bookstore)in servlet design? What if I setup a DB connection for every servlet?

    If there is not much relation between servlets.For example one servlet working on authentication againist user name/password in database another one work on searching book by keywords?
    and if we want to have servlets written by difference programmers?

  • Create RFC Function using Java Program

    hi
    I am trying to create a small utility in java that extracts data from SAP system and loads it to local Db
    For extracting data from SAP we have a custom ABAP function (RFC) running on SAP server that is called from Java using JCO3 APIs
    Installation of this utility on client side involves -
    1.     Installing RFC on Clientu2019s SAP instance
    2.     Installing / Configuring Java code on Clientu2019s machine
    Is there a way to install / create a RFC function using java -JCO APIs so that Step-1 can be omitted?
    I had browsed through a sample provided in examples installed with JCO3 but its very trivial example can someone point to a exhaustive link or explain how this can be achieved using Java program
    Thanks

    Hi Amit
    I am not sure I understand the question. You want to create an RFC in Java? If this is correct why not create a Remote Method in java for example as EJB or Web Service which is more standard than creating an RFC.
    On the other hand if you want to create a RFC client in Java (a Program which calls a RFC in SAP ABAP system) you can use JCo APIs (which can be either standalone or on the NW Java server) or JRA (from NW 7.1 onwards).
    Regards
    Partha

  • Transaction propogation to java helper class

              Hi
              EJB A calls EJB B and EJB B does certain numbr of updates/insert. If one them
              fails everything rollsback in second EJB. This works fine.
              But instead of EJB B being an EJB the initial design was a regular java helper
              class. EJB A creates a new instance of this java class and calls a method on this
              class. The EJB A is set to be transactional (Required). The java class get a DB
              connection from TX datasource and does the same operation as EJB B that I described
              above. I tried to throw an exception to the EJB A and catching the Exception did
              a setRollbackOnly() in EJB A and the transaction does not rollback. I was under
              the impression that even if DB operations are done in a java class they are still
              under the same transaction and thus container is still under control of it if
              it is a container managed transaction. it does not look like it is teh case.
              Is there any requirement that DB connection obtained /operation made need to be
              inside the EJB method itself and not in the java helper class. Does this means
              that the transaction gets suspended on the duration of execution of the java helper
              class. I was under the impression that they are all under the same transaction
              context and it applies to that as well. Any help on this is greatly appreciated.
              

    Well, that's the only way. The container has to start the transaction in its
              invocation wrapper for CMT EJBs and then terminate the transaction (commit or
              rollback) after the method has exited (either normally or by throwing an
              exception). Anything that happens inside the call to the business method is in
              the transaction...
              --dejan
              Toad wrote:
              > That's good to know but somewhat surprising.
              >
              > "Deyan D. Bektchiev" <[email protected]> wrote in message
              > news:[email protected]...
              > > The transaction is associate with the thread that the EJB method executes
              > in so
              > > any calls in the same threads are part of the transaction.
              > > So even if you have a separate class that functions as a connection
              > factory (in
              > > the end getting the connections from a TX datasource) those connections
              > still
              > > would be part of the transaction.
              > >
              > > You can test that if you do
              > > System.out.println(weblogic.transaction.TxHelper.getTransaction()) and you
              > > should see the current transaction.
              > >
              > >
              > > --dejan
              > >
              > > Toad wrote:
              > >
              > > > I'm thinking the key to the failure to rollback is that the helper bean
              > > > "gets a connection" which is effectively stepping outside the confines
              > of
              > > > your CMP model. How would the container know that you hand-carved a
              > > > connection or even a set of connections and executed several
              > transactions
              > > > independently? That would be no mean feat if it wasn't specifically
              > designed
              > > > in.
              > > >
              > > > "Priya Vasudevan" <[email protected]> wrote in message
              > > > news:[email protected]...
              > > > >
              > > > > Hi
              > > > >
              > > > > EJB A calls EJB B and EJB B does certain numbr of updates/insert. If
              > one
              > > > them
              > > > > fails everything rollsback in second EJB. This works fine.
              > > > >
              > > > > But instead of EJB B being an EJB the initial design was a regular
              > java
              > > > helper
              > > > > class. EJB A creates a new instance of this java class and calls a
              > method
              > > > on this
              > > > > class. The EJB A is set to be transactional (Required). The java class
              > get
              > > > a DB
              > > > > connection from TX datasource and does the same operation as EJB B
              > that I
              > > > described
              > > > > above. I tried to throw an exception to the EJB A and catching the
              > > > Exception did
              > > > > a setRollbackOnly() in EJB A and the transaction does not rollback. I
              > was
              > > > under
              > > > > the impression that even if DB operations are done in a java class
              > they
              > > > are still
              > > > > under the same transaction and thus container is still under control
              > of it
              > > > if
              > > > > it is a container managed transaction. it does not look like it is teh
              > > > case.
              > > > >
              > > > > Is there any requirement that DB connection obtained /operation made
              > need
              > > > to be
              > > > > inside the EJB method itself and not in the java helper class. Does
              > this
              > > > means
              > > > > that the transaction gets suspended on the duration of execution of
              > the
              > > > java helper
              > > > > class. I was under the impression that they are all under the same
              > > > transaction
              > > > > context and it applies to that as well. Any help on this is greatly
              > > > appreciated.
              > > > >
              > >
              

  • Cannot resovle the Symbol error in UDF - Java mapping - RFC Lookup ?

    Hi Friends ,
    We are working on Java mapping  -  UDF for RFC Lookup . It is giving the Cannot resolve Symbol for all imported archive java class files even if we give again all imported files in import section of UDF we are still getting the same cannot resolve error  .
    We are using SP 12 of XI 3.0 . What could be the reason ?
    Thanks.,
    V.Rangarajan

    Hi,
    Can you try to open imported archive in IR and check if the path(folder structure like com.abc.xyz.etc) for classes is same as in import statement in UDF.Since we had experienced the same problem.
    Thanks.
    Regards,
    Shweta

  • XI: How To Use JAVA generic Class to  perform SAP data Lookup........

    Hello All,
    I want to create a generic class which is used to perorm SAP data lookup.
    I don't want to use Jco or RFC channel..
    Is there any other way to do this?
    waiting for Reply 
    thank in advance.
    - AKSHAY.

    Hi,
    use RFC channel
    you can wrap it up like this:
    /people/morten.wittrock/blog/2006/03/30/wrapping-your-mapping-lookup-api-code-in-easy-to-use-java-classes
    why do you want to create something diffucult to maintin and non standard if
    you can use the RFC API ?
    Regards,
    michal
    <a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions"><b>XI / PI FAQ - Frequently Asked Questions</b></a>

Maybe you are looking for