RuntimeException during appliction Java mapping

HI,
We are facing issue in Interface Determination in  PI Quality system .
Step1:We developed all IR ID objects in DEV system and tested , it is all working fine.
Step2: We moved all our developments into QAS.
Step 3: Tested one of the objects in QAS , we are facing some issue in Interface determination.
We have used parameter in Operation mapping  for RFCu2019s .  when we test this in QAS It is throwing
Operation Mapping
Runtime error
     <Trace level="1" type="B">CL_MAPPING_XMS_PLSRV3-ENTER_PLSRV</Trace>
<Trace level="1" type="T">Mapping-Object-Id:995C3CC70F88314694147FC81DEB10D0 </Trace>
<Trace level="1" type="T">Mapping-SWCV:E179B290F08511DFAAACDF94C0A80049 </Trace>
<Trace level="1" type="T">Mapping-Step:1 </Trace>
<Trace level="1" type="T">Mapping-Type:JAVA_JDK </Trace>
<Trace level="1" type="T">Mapping-Program:com/sap/xi/tf/_XXXxxx_MM_ </Trace>
<Trace level="1" type="T">RuntimeException during appliction Java mapping com/sap/xi/tf/_XXXxxx_MM_
Thrown:
com.sap.aii.utilxi.misc.api.BaseRuntimeException: com.sap.aii.mapping.api.UndefinedParameterException: The input-parameter GeneratedReceiverChannel_RFC does not exist.
at com.sap.aii.mappingtool.tf7.Transformer.start(Transformer.java:148)
at com.sap.aii.mappingtool.tf7.AMappingProgram.transform(AMappingProgram.java:626)
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:71)
at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleMappingRequest(MappingRequestHandler.java:119)
at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleRequest(MappingRequestHandler.java:72)
at com.sap.aii.ibrun.sbeans.mapping.MappingServiceImpl.processFunction(MappingServiceImpl.java

Hi Kumar,
From ur thread and  from nithiya..  my basic understanding is
1) you are using Graphical mapping
2) You are using parametere for  business system  and RFC  channel
3) DEV it was working, QA it is not working.
you can do the following to ensure  your configuration and parametrs in QA , ID are  fine
1)  if you are  using  UDF to perform the RFC look up,
     make sure u have not hard code the communication channel.
2) If u have used standard graphical RFC lookup
go to  QA  ESR -> Operation mapping-> under parameter tab  provide the communication channel name
execute and see , what output you are getting.
seems to me there is a mismatch in communication channel name .
Regards
Biplab

Similar Messages

  • Problem in Java Mapping

    Hi,
          I was trying out a simple Java mapping example.
    Example of source structure is -
    <?xml version="1.0"?>
    <ns0:MT_SRC xmlns:ns0="http://www.sap-press.com/xi/training/00">
    <organization>
    <employee>
    <firstname>Jack</firstname>
    <lastname>Rose</lastname>
    </employee>
    <employee>
    <firstname>Paul</firstname>
    <lastname>McNealy</lastname>
    </employee>
    <employee>
    <firstname>Vaibhav</firstname>
    <lastname>Pandey</lastname>
    </employee>
    </organization>
    </ns0:MT_SRC>
    Example of target structure is -
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:MT_TRGT xmlns:ns0="http://www.sap-press.com/xi/training/00"><Organization><employee><name>JackRose</name></employee><employee><name>PaulMcNealy</name></employee><employee><name>VaibhavPandey</name></employee></Organization></ns0:MT_TRGT>
    and here's the code I'm using
    package com.mapping;
    import java.io.*;
    import java.util.Map;
    import java.util.HashMap;
    import javax.xml.parsers.DocumentBuilder;
    import javax.xml.parsers.DocumentBuilderFactory;
    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.Element;
    import org.w3c.dom.Node;
    import org.w3c.dom.NodeList;
    import com.sap.aii.mapping.api.MappingTrace;
    import com.sap.aii.mapping.api.StreamTransformation;
    public class JavaMap implements StreamTransformation{
         private Map param = null;
            private MappingTrace  trace = null;
            public void setParameter (Map param) {
                this.param = param;
                if (param == null) {
                    this.param = new HashMap();
            public void execute(InputStream in, OutputStream out) {
                   OutputStreamWriter buf_writer = new OutputStreamWriter(out);        
                   InputStreamReader buf_reader = new InputStreamReader(in);
                   String mat = new String();
                   String extmat = new String();
                   try {
                        buf_writer.write("<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\" ?>" ,0,56);
                        buf_writer.write("<ns0:MT_TRGT xmlns:ns0=\"http://www.sap-press.com/xi/training/00\">");
                        buf_writer.write("<Organization>",0,20);
                        buf_writer.flush();
                  } catch(IOException e){};
                  try {
                       DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();          
                       factory.setValidating(false);          
                       DocumentBuilder builder = factory.newDocumentBuilder();          
                       Document doc = builder.parse(in);
                        String fname = null;
                        String lname = null;
                        doc.getDocumentElement().normalize();
                        //System.out.println("Root element " + doc.getDocumentElement().getNodeName());
                        NodeList nodeLst = doc.getElementsByTagName("employee");
                        //System.out.println("Information of all employees");
                        for (int s = 0; s < nodeLst.getLength(); s++) {
                        Node fstNode = nodeLst.item(s);
                        if (fstNode.getNodeType() == Node.ELEMENT_NODE) {
                             buf_writer.write("<employee>");     
                        Element fstElmnt = (Element) fstNode;
                        NodeList fstNmElmntLst = fstElmnt.getElementsByTagName("firstname");
                        Element fstNmElmnt = (Element) fstNmElmntLst.item(0);
                        NodeList fstNm = fstNmElmnt.getChildNodes();
                        //System.out.println("First Name : " + ((Node) fstNm.item(0)).getNodeValue());
                        fname = fstNm.item(0).getNodeValue();
                        NodeList lstNmElmntLst = fstElmnt.getElementsByTagName("lastname");
                        Element lstNmElmnt = (Element) lstNmElmntLst.item(0);
                        NodeList lstNm = lstNmElmnt.getChildNodes();
                        //System.out.println("Last Name : " + ((Node) lstNm.item(0)).getNodeValue());
                        lname = lstNm.item(0).getNodeValue();
                        buf_writer.write("<name>"fname" "lname"</name>");
                        buf_writer.write("</employee>");
                        buf_writer.write("</Organization>");
                        buf_writer.write("</ns0:MT_TRGT>");
                        TransformerFactory tFactory = TransformerFactory.newInstance();
                     Transformer transformer = tFactory.newTransformer();
                     transformer.setOutputProperty("indent", "yes");
                     DOMSource source = new DOMSource(doc);
                     StreamResult result = new StreamResult(out);
                     transformer.transform(source, result);
                        } catch (Exception e) {
                        e.printStackTrace();
    However, when I'm testing my Interface mapping, I'm getting the following error -
    Call method execute of the application Java mapping com.mapping.JavaMap
    Error during appliction Java mapping com/mapping/JavaMap
    java.lang.StringIndexOutOfBoundsException at java.lang.String.getChars(String.java:672)
    Could anyone please help me out with this?
    Thanks and Regards,
    Shiladitya

    HI,
    It looks to be that your JavaMap class have one field whihc will be not getting the proper value as input thus its creating the array Index out of bound exception.
    Please can you verify if you have assigned the proper String size for all the fields.
    Or probably you are getting the blank value which have created the execption.
    Also can you narrow down and let me know about the line String.getChars(String.java:672)
    Here you have used the try and catch option but may be the exact line no. can give better idea about the problem.
    Thanks
    swarup

  • Getting Java mapping errors when testing my Interface mapping

    Hi,
    I'm trying to test my interface mapping from IR, I keep getting these exceptions. All I'm doing in my interface mapping is I have two mapping programs a XSLT mapping with java helper functions with the XSL and a message mapping. In the test it pass thru the XSLT mapping but fails at Message mapping and throws the following exception. Any help on this is really appreciated.
    10:03:26 Start of test
    Call XSLT processor with stylsheet com/earthlink/xi/mapping/xmlc_to_crm_resp.xsl.
    START APPLICATION TRACE ***
    Response:
    0
    END APPLICATION TRACE ***
    Returned form XSLT processor.
    Call method execute of the application Java mapping com.sap.xi.tf._MM_XMLC_RESP_
    Error during appliction Java mapping com/sap/xi/tf/_MM_XMLC_RESP_
    java.lang.NullPointerException at com.sap.aii.mappingtool.tf3.AMappingProgram.exceptionCaught$(AMappingProgram.java:59) at com.sap.aii.mappingtool.tf3.Transformer.checkParserException(Transformer.java:182) at com.sap.aii.mappingtool.tf3.Transformer.start(Transformer.java:149) at com.sap.aii.mappingtool.tf3.AMappingProgram.execute(AMappingProgram.java:102) at com.sap.aii.ibrep.server.mapping.ibrun.RepJavaMapping.execute(RepJavaMapping.java:73) 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) 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)
    10:03:26 End of test

    Joe,
    most likely your XSLT is outputting a not well-formed XML message.
    Remove message mapping from the mapping list and execute it again, to check output.
    Also, for mapping debugging in java enhanced function inside XSLT mappings, use the following:
    1st, you need to pass the "inputparam" parameter from the XSLT runtime to the Java function (it needs to be one of the input parameters for the executed java function).
    In the Java code itself, implement the following code:
    AbstractTrace trace = (AbstractTrace) param.get(StreamTransformationConstants.MAPPING_TRACE);
    trace.addInfo("Log your message here!");
    where <i>param</i> is the input parameter refering to the <i>inputparam</i> from XSLT.
    The AbstractTrace and StreamTransformationConstants classes can be found in the aii_map_api.jar file (used in Java mappings).
    Regards,
    Henrique.

  • Issue in conversion ABAP to java mapping during PI upgrade

    Hi All,
    We are upgrading one interface from ABAP mapping to Graphical/Java mapping in PI upgrade.(7.1 dual stack to 7.4 version)
    In ABAP mapping there is character conversion like below.
      encoding    = '1164'
          replacement = '?'
    We want to implement the same functionality either through Java or graphical mapping . But we are not sure what are the range  of characters that need to be converted to '?' and also what is the most optimized way to achieve this functionality.
    Below are few sample of characters coming in the file:
    б,л,к,У,М,л,и,о,ф..etc

    hi all,
    the issue got resolved with a JAVA replace function
    String r = str.replaceAll("\\P{InBasic_Latin}", "?");
    Thanks all for your inputs.
    Regards,
    Anamika

  • Dynamic nuber of fields during java map

    my src structure
    <appointment>
    <empno> 1 </empno>
    <empno>2 </empno>
    </appointment>
    empno is 0..unbounded.
    how do we know how may times this empno element is coming in the source
    I have a setempno method and getempno method inside appointment class.
    private String[] empno = null;
    public void setempno (String o){
                   empno<i> = o;
              public String getempno (int i){
                   return empno<i>;
    but as i initialized empno[] = null; it is taking null and could not retrive how many empno are coming.

    Iam not using message mapping, iam using java mapping .
    my src structure
    <appointment>
    <empno> 1 </empno>
    <empno>2 </empno>
    </appointment>
    empno is 0..unbounded.
    appointment is 0..unbounded
    as I said Iam SAX parser, i have setter and getter methods, to set the values.
    what shud be written to capture all the elements under appointment.

  • Issue with java mapping in a multi-mapping scenario

    Hi
        We have  a 1:n multiple mapping scenario in XI and the source is R3 proxy and target side is files. So, creating multiple file from a single message from R3 .
    R3 --> XI --> Multiple files
    Structure of the output of the multi-mapping is
    - <ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">
    - <ns0:Message1>
    <Transaction>
    </Transaction>
    <Transaction>
    </Transaction></ns0:Message1>
    </ns0:Messages>
    wherein each Transaction node represents a file.
    Now, we need to introduce a constant /string like
    <!DOCTYPE Transaction PUBLIC \"-//XXXXXX//DTD BatchReceiptAuthorization//EN\" \"http://dtd.XXXXXXX.com/dtds/ReceiptAuthorization.dtd\">
    on each of the files at the very beginning - i.e within each transaction node , in the above structure, we need the above DTD string to be written.  To do this, we added a java mapping as the second mapping after the message mapping that creates this string. Is this the right approach and would it produce what we are expecting ?
    import java.io.BufferedReader;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.io.OutputStream;
    import java.util.Map;
    import com.sap.aii.mapping.api.StreamTransformation;
    import com.sap.aii.mapping.api.StreamTransformationException;
    import com.sap.aii.mapping.api.StreamTransformationConstants;
    import com.sap.aii.mapping.api.DynamicConfiguration;
    import com.sap.aii.mapping.api.AbstractTrace;
    public class ModifyRootAndDelay implements StreamTransformation {
         AbstractTrace myTrace;
    public void execute(InputStream input, OutputStream output) throws StreamTransformationException {
              try{
                   BufferedReader reader = new BufferedReader(new InputStreamReader(input));
                   String NameSpacePrefix = "<!DOCTYPE Transaction PUBLIC \"-//innotrac//DTD BatchReceiptAuthorization//EN\" \"http://dtd.innotrac.com/dtds/ReceiptAuthorization.dtd\">";
                   String sLine = null;
                   StringBuffer XmlMsg= new StringBuffer();
                   String Result,PayloadBody;
                   int indexOfFirst;
                   while ((sLine = reader.readLine()) != null) {
                        XmlMsg.append(sLine);
                   String StartingTag = XmlMsg.toString();
                   indexOfFirst = StartingTag.indexOf("<MerchantID>") ;
                   PayloadBody=new String(XmlMsg.substring(indexOfFirst));
                   Result=NameSpacePrefix.concat(PayloadBody);
                   output.write(Result.getBytes());
              /*     Thread.sleep(200000); */
              }catch(Exception e){
                   myTrace.addWarning("Exception raised in the JavaMapping:modifyNamespace.java""\n The Exception Message: " e.getMessage());
                   throw new RuntimeException(e.getMessage()) ;
            }     public void setParameter(Map param) {
              myTrace = (AbstractTrace) param
                        .get(StreamTransformationConstants.MAPPING_TRACE);

    Hi XI Gurus
                       In my scenario, I sent the inputstream that is being passed to the Java execute method - to trace and I see that the whole of the xml file - as shown below  - which is the output of message mapping ( from the first mapping step ) in sent to the execute method of the java mapping a single call
    <ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">
    <ns0:Message1>
    <Transaction> </Transaction>
    <Transaction> </Transaction>
    </ns0:Message1>
    <ns0:Messages>
    So, I modified Java mapping program to look for multiple occurences of <Transaction> tag and prefix them with my constant DTD Literal - which is the primary reason , why I had to use Java mappings after the message mapping.
    Now, I get an error is XI- SXMB_MONI
    - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
      <SAP:Category>XIServer</SAP:Category>
      <SAP:Code area="MAPPING" />
      <SAP:P1>unexpected symbol; expected '<', '</', entity refe</SAP:P1>
      <SAP:P2>rence, character data, CDATA section, processing i</SAP:P2>
      <SAP:P3>0</SAP:P3>
      <SAP:P4>113</SAP:P4>
      <SAP:AdditionalText />
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack>The exception occurred (program: CL_XMS_MAIN===================CP, include CL_XMS_MAIN===================CM00A, line: 609)</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>
    Should I create multiple outputs - as many as the numberof target split files ( of type outputstream ) from the execute method in the java program ?

  • Problem in java mapping - request reject when enter to the XI

    hello
    I have WS 2 RFC with JAVA MAPPING. I try to run it and recieve an error in the sxmb:
      <?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="1">
      <SAP:Category>XIServer</SAP:Category>
      <SAP:Code area="MAPPING">JCO_SYSTEM_FAILURE</SAP:Code>
      <SAP:P1>Exception in method processFunction.</SAP:P1>
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack>&quot;SYSTEM FAILURE&quot; during JCo call. Exception in method processFunction.</SAP:Stack>
      <SAP:Retry>N</SAP:Retry>
      </SAP:Error>
    in the xml spy the return is:
                             <text><![CDATA[
    com.sap.aii.af.ra.ms.api.DeliveryException: XIServer:JCO_SYSTEM_FAILURE:
         at com.sap.aii.adapter.xi.ms.XIEventHandler.onTransmit(XIEventHandler.java:455)
         at com.sap.aii.af.ra.ms.impl.core.queue.CallConsumer.onMessage(CallConsumer.java:133)
         at com.sap.aii.af.ra.ms.impl.core.queue.Queue.run(Queue.java:850)
         at com.sap.aii.af.ra.ms.runtime.MSWorkWrapper.run(MSWorkWrapper.java:56)
         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:102)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:172)
              ]]></text>
    any suggestion why the xi doesnt recieve the request:
    Thanks
    Kfir

    Test RFC destination AI_RUNTIME_JCOSERVER. You may delete and recreate it.
    how exactly do I test it? in the XID or the SAP DEV?
    how can I delete and recreate?
    since I never did it, details will be appreciated.
    Kfir

  • Java mapping for XSD Validation

    Hello,
    I have developed a Java mapping to validate an XML based on XSD.
    I works fine and generates a message with error details.
    I would like to create a report with all errors encountered during this Validation and to stop this message from being sent to the partner.
    But this Java mapping stops at first error encountered and generates an error message with first error only even though document has more errors further.
    Can anyone please let me know if there is an option to log all errors without allowing the message to go through?
    Thanks.
    Best Regards,
    Shweta

    Yes, as abhishek mentioned when you validate the instance document (XML) using standard parsers then they validate based on the spec provided in XSD and they stop at the first error. The link given using dom parser via java code will also stop at the first error.
    If you really want to validate the entire instance document then you might have to create a custom validator class which does validation for each and every fields and store it in an object like Vector or List or Map object.  Then when you throw exception you can retrieve that Map object  in the catch block and read all the individual error messages and display in log. This requires additional effort. In this case you dont rely on parser validation. Completely custom based.
    Example:
    Vector errorList = new Vector();
    if the field name is  SSN and if you see any alpha characters you add error for that field in the errorList
    If(SSN.matches("[a-zA-Z]")){
        do nothing
    }else{
        errorList.add("The fieldName SSN contains other than alpha characters");
    Like that you have to add error string mesg in the errorList object and return the errorList at the end.

  • LINKAGE ERROR in Java Mapping

    Hi Friends,
    I am getting LINKAGE ERROR when executing JAVA mapping as its not able to reference AbstractTransform class provided by SAP PI API.
    This problem occurs in particular environment for this particular mapping. For other environments this is working fine.
    I assume it has something to do with Java Library reference which is mis-configured during transport. Can anyone let me know how and where the library path is configured for Imported Achieves in SAP PI 7.1.
    We are using java 1.5 for building and creating java achieves.
    Many thanks,
    SK

    Hi Sumant,
      This error occurs when the jdk version of XI server and the library version you used to develop the mapping are incompatible. Make sure you use the same version as of the server
    have a look in SAP Note 755302
    Regds,
    Pinangshuk.

  • Java skills for XI java mapping

    I don't want to be novice in Java, wanted to know what is the minimum Java knowledge needed for doing medium complex java mapping. I have done C++ programming during grad school, comfortable with ABAP programming. Please point to books to gain "XI java mapping for dummies". I've started with sun tutorial, but it covers all topics which is difficult to achieve in a short period as my intention was to cover as much XI with java skill to do java mapping.  Also I hear SAX and DOM parsers for mapping between source and target in the forum but don't have sufficient background. Thanks in advance

    Hi,
    You can go thro the java mapping code in these blogs:
    Java mapping blog series:
    /people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-i
    /people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-ii
    /people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-iii
    /people/stefan.grube/blog/2006/10/23/testing-and-debugging-java-mapping-in-developer-studio
    /people/rahul.nawale2/blog/2006/07/18/java-mapping-an-alternate-way-of-reading-a-csv-file
    /people/venkataramanan.parameswaran/blog/2006/12/12/java-mapping-to-handle-flat-files-in-sap-xi
    Regarding SAX and DOM there are lot of threads discussing the same issue.
    In Java Mapping Whether to SAX or DOM ?
    Regards,
    P.Venkat

  • Without BPM:Call RFC using JCO in interface mapping using java mapping

    Hi all
    I have a very small scenario where REQUEST from the customer comes via Web Service all i have to do is to read the request using SOAP adapter and call an interface mapping(lets say the name is IM_TEST) inside which there is a JAVA MAPPING program written which will call an RFC in CRM using JCO.
    Now this was really simple and i cud test the Interface mapping successfully, but the problem is when loading the scenario in integration directory i have certain things to do
    1. to set the SENDER AGREEMENT which i did correctly
    2. set the RECEIVER DETERMINATION, INTERFACE DETERMINATION AND RECEIVER AGREEMENT now here i am stuck because there is no receiver in my case as the RFC is called inside the mapping only.
    can i call one more message mapping in IM_TEST which will write file onto the XI directory and then in RECEIVER DETERMINATION, INTERFACE DETERMINATION AND RECEIVER AGREEMENT i can mention the reciever as FTP.
    I tried it but i gives the following error
    Runtime exception occurred during execution of application mapping program com/sap/xi/tf/_MM_TEST_WRITE_FILE: com.sap.aii.utilxi.misc.api.BaseRuntimeException; Parsing an empty source. Root element expected!
    Please help me how to complete the scenario so that customer can run it end to end.
    <REMOVED BY MODERATOR>
    Edited by: Prateek Raj Srivastava on May 12, 2010 1:44 PM

    Stefen
    What do i do then...actually this is the project requirement. They want a very fast response from PI and thats why they wnt us to omit BPM and the Graphical mapping from the scenario.
    I am able to test the interface mapping which calls the the Java mapping inside which there is an RFC call, but i cannot implement it end - to - end as there is no receiver business system in this case. The only business system i have is the SOAP sender.
    I am really troubled now, please help me with a solution.
    Is there any other possible way through which the process can become very fast whic hcan meet their requirement.
    Regards
    Naina

  • Java mapping runtime issue

    Hi,
    I have currently created a java mapping which unzips files and transforms plain text/falt files to xml according to a specific structure... So far so good. This stuff works perfectly when testing interface mapping in the repository. However at runtime it does not work, and this is where you clever guys come into the picture:-)
    It should be mentioned that the zip-file is dropped on a MQ-queue and picked up in XI and passed on to a BPM - the only thing the BPM does is to perform the java mapping and afterwards send one of the messages to R/3 and the other to CRM.
    The concrete error given at runtime in the PE is:
    Error handling for work item 000000718016
    Work item 000000718016: Object CL_SWF_XI_MSG_BROKER method CALL_TRANSFORMATION cannot be executed
    Parsing error before mapping: unexpected end-of-file (line 1, column 1)
    Hope somone can help me on this matter,
    Best regards,
    Daniel
    PS: In case it is of interest/use the java code used is this:
    package dk.post.xi.unzipAndConvert;
    import java.io.*;
    import java.util.Map;
    import java.util.HashMap;
    import java.util.zip.ZipEntry;
    import java.util.zip.ZipInputStream;
    import com.sap.aii.mapping.api.MappingTrace;
    import com.sap.aii.mapping.api.StreamTransformation;
    import com.sap.aii.mapping.api.StreamTransformationConstants;
    import com.sap.aii.mapping.api.StreamTransformationException;
    public class UnzipMain implements StreamTransformation {
         private MappingTrace mappingTrace = null;
         private Map param = null;
         private StringBuffer currentXmlRecord = new StringBuffer();
        private StringBuffer currentPlainRecord = new StringBuffer();
        private int[][] dataRanges = null;
        private char[] charsInCurrentRange = new char[650];
         private String[] xmlTagNames = null;
         /* (non-Javadoc)
    @see com.sap.aii.mapping.api.StreamTransformation#setParameter(java.util.Map)
    Method must be implemented when class is implementing streamTransformation
           public void setParameter(Map param) {
            this.param = param;
            if (param == null) {
               this.param = new HashMap();
    (non-Javadoc)
    @see com.sap.aii.mapping.api.StreamTransformation#execute(java.io.InputStream, java.io.OutputStream)
    Main function -- called by XI to start execution of java mapping
           public final void execute(InputStream in, OutputStream out)
                throws StreamTransformationException
                //if no input, then cancel program execution
                if (in == null) {
                     throw new RuntimeException("Something wrong with input zip file - is null");
                //input <> null. Begin upzip operation
                try {
                     //test is only relevant outside of XI
                     if (param != null) {
                          mappingTrace = (MappingTrace) param.get(StreamTransformationConstants.MAPPING_TRACE );
                  ZipInputStream zip = null;
                     try {
                          zip = new ZipInputStream(in);
                          ZipEntry ze = null;
                          out.write("<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?><ns0:Messages xmlns:ns0=\"http://sap.com/xi/XI/SplitAndMerge\">".getBytes());
                          while ((ze = zip.getNextEntry()) != null) {
                               writeDebugInfo("File: " + ze.getName() + " with compressed size: " + ze.getCompressedSize());
                               scrutinize(zip,(ZipEntry) ze, out);
                          out.write("</ns0:Messages>".getBytes());
                     finally {
                          if (zip != null)
                               zip.close();
                          out.flush();
                          out.close();
                } catch (Exception e) {
                     throw new RuntimeException(e + "\nSomething went wrong...");
           //Unzip flat files and convert to xml
           private void scrutinize(ZipInputStream inStream,ZipEntry zipEntry, OutputStream outstream) throws Exception {
                long start = System.currentTimeMillis();
              InputStreamReader inStreamReader = null;
              BufferedReader buffReader = null;
              byte[] xmlBytes = null;
              try {
                   inStreamReader = new InputStreamReader(inStream);
                   buffReader = new BufferedReader(inStreamReader);
                 boolean masterData = zipEntry.getName().equals("PD-01-STAMDATA.DAT");
                 boolean creditData = zipEntry.getName().equals("PD-02-KREDITVURDERING.DAT");
                 String currentLine = null;
                 if (masterData) {
                      writeDebugInfo("- Begin reading and converting every line of MasterData...");     //out-comment this outside of XI, or compilation will fail (functionality is only available in XI)
                      outstream.write("<ns0:Message1><ns1:masterData_MT xmlns:ns1=\"http://pdk/xi/kob/importDataToSap\">".getBytes());
                        while ((currentLine = buffReader.readLine()) != null) {
                           //convert one line of credit data plain into an xml record structure
                           makeXmlRecord(currentLine,true);
                           //Write record XML to XI's outputstream (appends)
                           xmlBytes = currentXmlRecord.toString().getBytes();
                           outstream.write(xmlBytes);
                      outstream.write("</ns1:masterData_MT></ns0:Message1>".getBytes());
                      writeDebugInfo("- Finished reading and converting every line of MasterData...");     //out-comment this outside of XI, or compilation will fail (functionality is only available in XI)
                 if (creditData) {
                      writeDebugInfo("- Begin reading and converting every line of CreditData...");
                      outstream.write("<ns0:Message2><ns1:creditData_MT xmlns:ns1=\"http://pdk/xi/kob/importDataToSap\">".getBytes());
                      while ((currentLine = buffReader.readLine()) != null) {
                           //convert one line of credit data plain into an xml record structure
                           makeXmlRecord(currentLine,false);
                           //Write record XML to XI's outputstream (appends)
                           xmlBytes = currentXmlRecord.toString().getBytes();
                           outstream.write(xmlBytes);
                      outstream.write("</ns1:creditData_MT></ns0:Message2>".getBytes());
                      writeDebugInfo("- Finished reading and converting every line of CreditData...");
              } finally {
                   long timeUsed = System.currentTimeMillis() - start;
                   writeDebugInfo(zipEntry.getName() + "  - Write took: " + timeUsed + " ms");
                   writeDebugInfo("Final statement entered...\n");
           //check for invalid xml chars (plus a few other strange chars) in a plain text record and if any are found update the ranges of so they correspond to the new length of a record
           private int[][] checkRange(String currentPlainLine, boolean isMasterData) {
                int counter = 0;
                int beginRange = 0;
                int endRange = 0;
                //populate array with proper data ranges/intervals according to how data is to be split
                dataRanges = isMasterData ? new int[][] {{0,2},{2,12},{12,44},{44,47},{47,50},{50,295},{295,298},{298,356},{356,426},{426,496},{496,499},{499,506},{506,510},{510,518},{518,540},{540,546},{546,552},{552,558},{558,564},{564,570},{570,576},{576,582},{582,588},{588,594},{594,604}} : new int[][] {{0,2},{2,12},{12,20},{20,23},{23,26},{26,29},{29,44}};
                //ensure stringbuffer is empty
                currentPlainRecord.delete(0,currentPlainRecord.length());
                //insert the current plain text line into stringbuffer
                currentPlainRecord.append(currentPlainLine);
              //loop through outer array (array of ranges)
              for (int i = 0; i <= (dataRanges.length-1); i++) {
                   beginRange = dataRanges<i>[0];
                   counter = beginRange;
                   endRange = dataRanges<i>[1];
                   //loop through stringbuffer, based on the value-pairs of ranges/intervals in array of arrays
                   while (counter < endRange) {
                        switch (currentPlainRecord.charAt(counter)) {
                             case '&':
                                  currentPlainRecord.insert(counter+1,"amp;");          //insert 'amp;' after '&', so that syntax conforms to xml syntax requirements (&amp;)
                                  counter += 5;                                                   //increment counter so that it continues after insertet characters
                                  updateRange(counter,4);                                        //update the array of ranges so that is corresponds to the new range
                                  break;
                             case '\'':
                                  currentPlainRecord.replace(counter,counter+1,"&");     //replace '\'' with '&'
                                  currentPlainRecord.insert(counter+1,"apos;");          //insert 'apos;' after '\'', so that syntax conforms to xml syntax requirements (&apos;)
                                  counter += 6;                                                   //increment counter so that it continues after insertet characters
                                  updateRange(counter,5);                                        //update the array of ranges so that is corresponds to the new range
                                  break;
                             case '"':
                                  currentPlainRecord.replace(counter,counter+1,"&");     //replace '"' with '&'
                                  currentPlainRecord.insert(counter+1,"quot;");          //insert 'quot;' after '"', so that syntax conforms to xml syntax requirements (&quot;)
                                  counter += 6;                                                   //increment counter so that it continues after insertet characters
                                  updateRange(counter,5);                                        //update the array of ranges so that is corresponds to the new range
                                  break;
                             case '<':
                                  currentPlainRecord.replace(counter,counter+1,"&");     //replace '<' with '&'
                                  currentPlainRecord.insert(counter+1,"lt;");               //insert 'lt;' after '&', so that syntax conforms to xml syntax requirements (&lt;)
                                  counter += 4;                                                   //increment counter so that it continues after insertet characters
                                  updateRange(counter,3);                                        //update the array of ranges so that is corresponds to the new range
                                  break;
                             case '>':
                                  currentPlainRecord.replace(counter,counter+1,"&");     //replace '>' with '&'
                                  currentPlainRecord.insert(counter+1,"gt;");               //insert 'gt;' after '&', so that syntax conforms to xml syntax requirements (&gt;)
                                  counter += 4;                                                   //increment counter so that it continues after insertet characters
                                  updateRange(counter,3);                                        //update the array of ranges so that is corresponds to the new range
                                  break;
                             case 0x7F:
                                  currentPlainRecord.replace(counter,counter+1," ");     //replace 0x7F with ' '
                                  writeDebugInfo("-- Corrected the character 0x7F ('') to ' '");
                                  counter++;
                                  break;
                             case '‘':
                                  currentPlainRecord.replace(counter,counter+1," ");     //replace 0x91 ('‘') with ' '
                                  writeDebugInfo("-- Corrected the character '‘' to ' '");
                                  counter++;
                                  break;
                             case '›':
                                  currentPlainRecord.replace(counter,counter+1," ");     //replace 0x9B ('›') with ' '
                                  writeDebugInfo("-- Corrected the character 0x9B to ' '");                              counter++;
                                  break;
                             case '†':
                                  currentPlainRecord.replace(counter,counter+1," ");     //replace '†' with ' '
                                  writeDebugInfo("-- Corrected the character '†' to ' '");
                                  counter++;
                                  break;
                             default :
                                  counter++;
                                  break;
                return dataRanges;
           //update array of ranges so that is corresponds to the new range
           private void updateRange(int currentRange, int updateRangeBy) {
              for (int k = currentRange; k < dataRanges.length; k++) {
                   if (k != currentRange) {     //never update begin interval for the current range - only for the remaining intervals
                             dataRanges[k][0] += updateRangeBy;
                   dataRanges[k][1] += updateRangeBy;     //always update end intervals
           //convert one flat record line to a xml record structure
         private void makeXmlRecord(String currentPlainLine,boolean isMasterData) {
              dataRanges = checkRange(currentPlainLine,isMasterData);
              //clear StringBuffer
              currentXmlRecord.delete(0,currentXmlRecord.length());
              //get the correct set of xml tags to be used when performing mapping between plain text and xml
              if (isMasterData) {
                   xmlTagNames = new String[] {"dum1","kob_no","dum2","corp_status","legal_form","dum3","pr_protec_code","dum4","uri","email","emp_no_grp_code","exact_no_emp","dum5","founding_date","dum6","main_industry_code","industry_code1","industry_code2","industry_code3","industry_code4","industry_code5","industry_code6","industry_code7","industry_code8","dum7"};
              } else {
                   xmlTagNames = new String[] {"dum1","kob_no","rating_date","rating_value","risc_grp_code","currency","max_credit"};
              //copy all chars in stringBuffer to the specified char[]
              currentPlainRecord.getChars(0,currentPlainRecord.length(),charsInCurrentRange,0);
              //populate XML record structure
              currentXmlRecord.append("<record>");
              for (int i = 0; i < xmlTagNames.length; i++) {
                   currentXmlRecord.append("<" + xmlTagNames<i> + ">");
                   currentXmlRecord.append(charsInCurrentRange,dataRanges<i>[0],(dataRanges<i>[1])-(dataRanges<i>[0]));
                   currentXmlRecord.append("</" + xmlTagNames<i> + ">");
              currentXmlRecord.append("</record>");
         //write debug information to correct "place"
         private void writeDebugInfo(String debugInfo) {
              if (mappingTrace == null) {
                   System.out.println("Debug: " + debugInfo);
              } else {
                   mappingTrace.addInfo("Debug: " + debugInfo);

    Hi Alex,
    Thanks for your reply. First of all I was wondering if I missed something somewhere in my generel understanding of XI and BPM's!? - I kind of sense some irony/sarkasm in beginning of your reply:-) As far as I know BPM should have no trouble receing non-xml (in my case zip-files)!?
    Anyways here goes:
    1. Yes, this is also my impression that is should be possible somehow (we do currently run sp14). However, I havent yet figured out how to do it in this case. When trying to create interface mapping between the three involved software components, I get a 'MESS_MULTI_MAP_IF_WRONG_SWCV' three times. I've searched around without being able to find any information on the error. I does seem, though, like the problem is that all objects aren't in the same software component!! But this approach is of course the prefered one...
    2. Well - you got me there. Kind of expected someone to point that out:-) This is of course something to be looked into also in order to "improve"/"enhance" the program - though it, as already pointed out, works perfectly as is.
    3. This part I have also thought about - though quickly moved away from the idea, but that is only due to lacking insight/knowhow on the subject. Interesting weblog you have written, something so I will investigate further when  time allows for it:-)
    Best regards,
    Daniel

  • Java mapping for Dynamic File name: stuctures?

    Hi,
    Scenario:  Sender AS2 adapter --> PI --> Receiver File (NFS) Adapter. Just a file pass through, no mapping
    Requirement: Want to have the receiver file name as C1.yymmdd.C2 where C1 and C2 are contants and yymmdd is current date.
    I was told in sdn forum that I have to write java mapping and provided the sample code also. However, I am not sure how and where to use that sample code. Could you please help on following questions:
    1) What is the source and target data type structures for mapping?
    2) Where do I develop java mapping? How do I import to PI?
    3) How do I get access to SAP Netweaver Developer Studio? Can I download it to my laptop? or if I dont have access, can I use any other tool to develop? ( NetBeans, Eclipse ??) and how?
    4) what are the files and libraries that we need to import to java mapping? (e.g.,  Import aii_map_api.jar library)
    5) How to generate .jar file?
    If someone has already developed java mapping (.jar file) ready to import into PI, please provide the same.
    Thanks in advance
    - Riya Patil

    Hi Sarvesh,
    Is this UDF work if I dont select ASMP on sender side? (We tested selecting ASMP on both sender & receiver file adapters, it works fine and it works without UDF also).
    In my requirement I have to use sender AS2 adpter, please confirm if I can use this UDF without selecting ASMP on sender side.
    I have done the following tests:
    Test-1) Select ASMP with 'File Name' on both sender and receiver file adapters without any mapping (UDF)
    It works great. No UDF or mapping required. It is just pass through of file having the receiver file name same as in sender channel.
    Test-2) Select ASMP with 'File Name', only on receiver file adapter without any mapping (UDF)
    It is obvious, it doesn't work. I am getting the following error:
    Could not process due to error: com.sap.aii.adapter.file.configuration.DynamicConfigurationException: The Adapter Message Property 'FileName' was configured as mandatory element, but there is no 'DynamicConfiguration' element in the XI Message header
    Test-3) Select ASMP with 'File Name', only on receiver file adapter with mapping (using DynamicConfiguratio UDF)
    We are getting the following error message in SXMB_MONI:
    Fatal Error: com.sap.engine.lib.xml.parser.Parser~
    <SAP:Stack>com.sap.aii.utilxi.misc.api.BaseRuntimeException thrown during application mapping com/sap/xi/tf/_MM_Filename_: Fatal Error: com.sap.engine.lib.xml.parser.Parser~</SAP:Stack>
    Here is the code we have in UDF:
    DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
    DynamicConfigurationKey key = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/File","FileName");
    String SourceFileName = "C1." + a + ".C2";
    conf.put(key, SourceFileName);
    return " ";
    So looks like UDF is not working and it is failing in mapping. If I could make it work, I think there is good chance that I can see DynamicConfiguration under SOAP Header, which what required for the error we see in out test-2.
    Can someone please help me to straighten this UDF and make it work.
    Thanks in advance.
    - Riya Patil

  • 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)

  • RFCLookup in Java Mapping

    Hello Gurus,
    I'm performing a RFCLookUp in Java Mapping with PI 7.1 (I can't use a Message Mapping), the XML I use to do the request is:
    <n:ZHRBAPINOMINA xmlns:n="urn:sap-com:document:sap:rfc:functions">
                <PERNR>30</PERNR>
    </n:ZHRBAPINOMINA>
    The error i'm getting is:
    error while processing the request to rfc-client: com.sap.aii.adapter.rfc.afcommunication.RfcAFWException:
    error while processing message to remote system:com.sap.aii.adapter.rfc.core.client.RfcClientException: could not get functionname from XML requst:
    com.sap.aii.adapter.rfc.RfcAdapterException: failed to read funtionname from XML document:
    missing namespace declaration(2)
    What could cause this error?
    Thanks in advance.
    Xavi.

    Hello Raj,
    we are using a java mapping because we have to encript a pdf file with a password.
    We are calling the adapter in the java mapping, see wha we are doing:
    public static String RFCLookup( String sTabla , String sValue , String sName )
             String sAux1;
            DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
            DocumentBuilder builder;
            factory.setNamespaceAware( false );
            factory.setValidating( false );
            XmlUtil xuUtil = new XmlUtil();
           try
                builder = factory.newDocumentBuilder();
            catch( Exception e )
                return "1";
            Document docReq;
            try
                // Building up RFC Request Document
                docReq = builder.newDocument();
                //Element eOutputRoot = xuUtil.createNode( docReq, "ZHRBAPINOMINA" );
                Node eOutputRoot = docReq.createElementNS("urn:sap-com:document:sap:rfc:functions", "ns:ZHRBAPINOMINA");
                //eOutputRoot.setAttribute( "xmlns:ns1" , "urn:sap-com:document:sap:rfc:functions" );
                eOutputRoot.appendChild( xuUtil.createNode( docReq , sValue , sName  ) );
                //eOutputRoot.appendChild( xuUtil.createNode( docReq , "TABLE_NAME" , sTabla ) );
                docReq.appendChild( eOutputRoot );
            catch( Exception e )
                return "2";
            // Lookup the
            Payload result;
            try
                InputStream is = new ByteArrayInputStream( docReq.toString().getBytes() );
                XmlPayload payload = LookupService.getXmlPayload( is );
                trace.addWarning("traza 1 ");
                result = accessor.call( payload );
                trace.addWarning("traza 2 ");
                if (result == null)
                     trace.addWarning("result of RFC call is null");
                     return "2.5";              
            catch( LookupException e )
                //Close accessor
                if( accessor != null )
                    try
                        accessor.close();
                    catch( LookupException ex )
                         trace.addWarning("Error during lookup1 - " + e);
                        return "3";
                trace.addWarning("Error during lookup2 - " + e);
                return "4";
            // Parsing RFC Response Document
            Document docRsp;
            try
                docRsp = builder.parse( result.getContent() );
            catch( Exception e )
                return "5";
            return "6";
            //return docRsp;
    In the execute method we are claling the RFC adapter:
    Channel channel = LookupService.getChannel( service, channelName );
    accessor = LookupService.getRfcAccessor( channel );
    We don't know why we have these errors, with old versions like XI 3.0 we didn't have errors.
    Do you know what could be?
    Many thanks.
    Xavi.

Maybe you are looking for

  • How to do comparison in a loop.

    Hi all,   TYPES: BEGIN OF ZROUTE,          VBELN TYPE VBELN,          ROUTE TYPE ROUTE,         END OF ZROUTE.   DATA : IT_ZROUTE TYPE STANDARD TABLE OF ZROUTE,          WA_ZROUTE TYPE ZROUTE.       LOOP AT I_XVTTP_TAB INTO LW_XVTTP.         WA_ZROUT

  • Video mirroring not working iPad composite cable

    I have a brand new iPad 3 with iOS 5.1 and I can't get my video out over to my tv via my composite cable. It says device not supported when I plug it in but I've read in other forums to ignore that notification. When I attempt to play video it only p

  • Import SWF created in Catalyst

    The Catalyst program I created photo gallery and exporting him into swf. Then I put it into a new project (web pages) in the Catalyst Import function. In the program I see him as a SWF Asset, but the test (Run) even when exporting to the SWF, the ori

  • E-Mail field on "Address" tab not editable in SU3

    We were considering allowing end users to change their email address (stored on their user master record) via transaction SU3; however, in testing, even with SAP_ALL assigned, that field is not open for editing.  We are using CUA, but that field is s

  • "Files shared by these updates has no valid signature" How can I download I-tune software update

    I have a problem with installing the version 5 of the I-Pad software. It says "Files shared by these updates has no valid signature. It will not be installed. Thanks, Annie