SOAP: call failed: java.io.EOFException

Hi all,
I have build a proxy to soap scenario that generates errors during runtime. The scenario
consists of an ABAP program consuming a webservice through PI. The communication
channel shows the following errorlog:
- Message processing started
- request entering
- SOAP: call failed: java.io.EOFException: Connection closed by remote host.
- Message processing failed. Cause: com.sap.engine.interfaces.messaging.api.exception.
MessagingException: java.io.EOFException: Connection closed by remote host.
Does anyone know the cause of this error?
Thanks in advance.
Regards,
Ivo

Hi Ravi,
although I was able to reach the URL through a webbrowser, this problem was indeed caused by unavailability of the webservice. I just tried the connection without making any changes in PI and everything is working fine now.
Case closed.
Regards,
Ivo

Similar Messages

  • SOAP: call failed: java.io.EOFException: Connection closed by remote host

    Hi folks,
    my friday crusher:
    We have a sync RFC-PI-SOAP scenario.
    All is working fine in Dev system.
    After moving into Test following error is displayed as the SOAP response message:
    - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
      <SAP:Category>XIAdapterFramework</SAP:Category>
      <SAP:Code area="MESSAGE">GENERAL</SAP:Code>
      <SAP:P1 />
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
    <SAP:AdditionalText>com.sap.engine.interfaces.messaging.api.exception.MessagingException: java.io.EOFException: Connection closed by remote host.</SAP:AdditionalText>
      <SAP:Stack />
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>
    Also Channel Monitoring says:
    Message-Verarbeitung fehlgeschlagen. Grund: com.sap.engine.interfaces.messaging.api.exception.MessagingException: java.io.EOFException: Connection closed by remote host.
    Couldn´t find any hints in SDN and the web to this issue.
    Does anyone of you has made experiences with that problem?
    Maybe it´s a system parameter for time out SOAP connections....?
    Many thanks for your help
    -and-
    have a great weekend!
    Cheers
    André

    Very strange!
    But I have the solution:
    I have looked into channel monitoring / RWB again.
    There I saw, this PI is using two clusters on two application servers.
    Everytime the SOAP call is executed through the frist cluster, all was fine.
    But no SOAP call was successfully executed by the second cluster.
    Fortuity? No!
    The second cluster node / app server wasn´t registered for internet access in the used proxy server.
    So it wasn´t an PI issue.
    Now, all is fine & I´m happy!
    Thanks @all for helping!
    Cheers,
    André

  • SOAP: call failed: java.lang.NullPointerException

    Hi,
    We are geeting the error in RWB -->
    SOAP: call failed: java.lang.NullPointerException
    We checked the communication channel and interface and all are working fine.
    Can anybody suggest?
    Regards,
    Akki..................

    Hi,
    use this link to find the answer..
    SOAP adapter
    Regards,
    Amitanshu

  • SOAP: call failed: java.io.IOException: unable to create a socket ??

    Hi
    I am getting the following error in PI for one of my sync interfaces.
    SOAP: call failed: java.io.IOException: unable to create a socket
    The interface works most of the time, but i get this error couple of times a day.
    Regards,
    XIer

    Hav you able to resolve this issue? Please let me know what was cause of this "unable to create a socket"
    Thanks,
    Sagar

  • Error SOAP: call failed: java.io.IOException: Read timed out; HTTP 200 OK

    Hi PI gurus,
      Need some suggestions on one issue below -
      Scenario - proxy (SAP) to SOAP (Web based system)
      In the RWB Communication Channel Monitirong we are receiving the below error
      " Error SOAP: call failed: java.io.IOException: Read timed out; HTTP 200 OK"
    the request from XI system is going to target system and printing the lables (as per the functionality) with no issues but the comminication channel is giving the above error and this is causing the repeated sending the same request to target sytem and the data is printing repeateadly. This issues is occuring in Quality environment.
    Strangley the same Interface with the same connectivity details is working fine in Development environment. But not working in Quality environment. Checked the firewalls settings on both in XI and Target system side and confirmed that everything is fine.
    Below are the Logs both from Quality and developement are as follows
    Quality ( Failure Case) 
    17.03.2011 07:19:59 Success SOAP: request message entering the adapter with user J2EE_GUEST
    17.03.2011 07:25:03 Error SOAP: call failed: java.io.IOException: Read timed out; HTTP 200 OK
    Development     (Success ful)
    17.03.2011 07:27:55 Success SOAP: request message entering the adapter with user J2EE_GUEST
    17.03.2011 07:27:58 Success SOAP: completed the processing
    When we checked with basis team on user id J2EE_GUEST,  they confirmed that they are same in Development and Quality.
    I repeat,, that the same target url and everthing is same in XI Configuration
    Thanks in Advance. Points would be rewared for the best solution.
    Thanks,
    Jitender

    HI Jitender,
          If your scenariois working in DEV and if it is not working in QAS.Could you please check if both the systems are at same patch levels..
    Please refer below notes :1551161,817894,952402.
    Cheers!!!
    Naveen.

  • SOAP: call failed: java.io.IOException

    Hi gurus,
    I was executing several stress-tests for an interface between to non-SAP systems over PI, that both use async SOAP adapter communication.
    The requirement is to transfer up to 70mb files with single files. I executed the tests successfully with a 50MB message size and lower, and then I tried with a 70MB message, but the message failed and got this error in the adapter log:
    SOAP: call failed: java.io.IOException: invalid content type for SOAP: TEXT/HTML; HTTP 500 Internal Server Error
    I believe this is coming from the adapter itself and not from the receiving system. I have checked the binary message data from the messaging system and it looks perfectly fine.
    Any ideas why this is happening? Is there a limitation for message sizes with the SOAP adapter?
    I also checked the messaging system configuration settings in the AS Java but could not find anythig related to the SOAP adapter.
    Thanks in advance.
    Regards,
    S. Gökhan TOPÇ

    Hi Gokhan,
    I believe this is coming from the adapter itself and not from the receiving system. I have checked the binary message data from the messaging system and it looks perfectly fine.
    I believe this is a client-side error, as your request was not properly addressed and the SOAP service was not reached.
    Any ideas why this is happening? Is there a limitation for message sizes with the SOAP adapter?
    Well, SAP's message size limit is huge but a lot depends on your receiving server's capabilities and network connections. So, you might not be able to reach the SAP's tested message size. In my project, I am able to do a max of 55 megs through SOAP.
    Hope this helps.
    regards,
    Neetesh

  • SOAP Receiver adapter error. SOAP CALL Failed

    Hi ,
        I am implementing scenario R/3->RFC adapter->XI->SOAP REceiver adapter->Web Service (Synchronous). I am getting the error.
    SOAP: call failed
    SOAP: error occured: java.net.ConnectException: Connection timed out
    Message log is as below.
    Any clue ?
    Thanks & Regards,
    Mathew
    2005-10-31 18:59:58
    Success
    output
    1130810398454
    The message was successfully received by the messaging system. Profile: XI URL: http://host:Port/MessagingSystem/receive/AFW/XI
    2005-10-31 18:59:58
    Success
    output
    1130810398458
    Using connection AFW. Trying to put the message into the request queue.
    2005-10-31 18:59:58
    Success
    output
    1130810398458
    Message successfully put into the queue.
    2005-10-31 18:59:58
    Success
    output
    1130810398459
    The message was successfully retrieved from the request queue.
    2005-10-31 18:59:58
    Success
    output
    1130810398459
    The message status set to DLNG.
    2005-10-31 18:59:58
    Success
    output
    1130810398460
    Delivering to channel: CC_CALCULATOR
    2005-10-31 18:59:58
    Success
    output
    1130810398564
    SOAP: request message entering the adapter
    2005-10-31 19:03:07
    Success
    output
    1130810587497
    SOAP: call failed
    2005-10-31 19:03:07
    Error
    output
    1130810587497
    SOAP: error occured: java.net.ConnectException: Connection timed out
    2005-10-31 19:03:07
    Error
    output
    1130810587498
    Exception caught by adapter framework: Connection timed out

    Hi Mathew,
    Check if the webservice is availble??? Based on the error below, it looks like the message is timing out at the Adapter Engine level waiting for the connection to make the webservice call...
    Prasad

  • SOAP: call failed: invalid content type for SOAP: TEXT/HTML

    Scenario: Idoc(R3) - -> XI (BPM) <-> webservice
    I have tested the web service through a browser and XMLSPY, and this works.
    There are no firewall issues.
    I have used the TCPGateway to trace the messages. I receive the following error:Connection refused: connect
    What is the problem?
    Why can I call the web service through a browser/XMLSPY and not through the SOAP adapter?
    Best Regards
    Niels Færch

    Ref: /people/shabarish.vijayakumar/blog/2008/01/08/troubleshooting--rfc-and-soap-scenarios-updated-on-20042009
    First verify your address. it can cause the invalid content type for SOAP: TEXT/HTML error
    <i>I have used the TCPGateway to trace the messages. I receive the following error:Connection refused: connect</i>
    >> also check if your network has a proxy. in that case you wud need to provide that details in your SOAP adapter

  • SOAP Call Failed

    Hi All,
    Please help me in the below issue.
    I am using SOAP addapter
    Trasnport protocal: HTTP
    Message Ptotocal: XI 3.0
    Addressing Type:HTTP Destination
    HTTP Destination : XXXX --> this was configured in the PI.
    Connecton type: H
    HTTP Connection to ABAP System
    Message was sucessufully from PI and I am able to see the message in the PI MONI, but the message was not reaching the ECC.
    While checking the Channel I am facing the below issue.
    SOAP tried to access destination XXX of type HTTP which does not currently exist in the destination server.
    You can create destinations in the NWA under configuration management infrastructure-destinations
    Kindly suggest me the solution.
    Thanks & Regards,
    Mahi

    Hi,
    PI 7.3
    Input File Type: File
    Output File type: Proxy
    3rdparty --> pi --> to ECC
    SFTP in the sender side of the 3rd party
    SOAP is the connectivity between the system UPXI and PI
    ECC -->  SOAP
                   Trasnport protocal: HTTP
                Message Ptotocal: XI 3.0
    If you need any further deatils please let me know.
    Mahi

  • ** SOAP to SOAP call - HTTP 404 not found - invalid content type

    Hi friends,
    We have one scenario SOAP to SOAP call. It is synchronous interface. We are calling the WSDL.
    For some of the messages (not all), we are getting the error in SXMB_MONI
    com.sap.engine.interfaces.messaging.api.exception.MessagingException: java.io.IOException: invalid content type for SOAP: TEXT/HTML; HTTP 404 Not Found
    In the sender & receiver SOAP communication channel also, same error : SOAP: call failed: java.io.IOException: invalid content type for SOAP: TEXT/HTML; HTTP 404 Not Found
    Friends, this error is not coming for all messages. For some of the messages it is coming. For example,
    10:50 - Message Processed Successfully
    10:54 - Message Processed Successfully
    10:59 - Error
    11:05 - Message Processed Successfully
    By looking threads and blogs, I implemented MessagesTransformBean in the receiver CC and added the  parameter Transform.ContentType as 'text/xml;charset=utf-8'.
    After implementing this also, error is coming for some of the messages.
    Can you kindly clarify friends, what could be the problem?
    Kind regards,
    Jegathees P.

    I'm in agreement with Stefan...
    If the problem is intermittent then the system is overloaded at certain times. You would probably need to do some JVM analysis to see the resource usage & look at increasing the memory.
    Regards, Trevor

  • SOAP Call Failure

    Hi All,
    We are facing the below error in receiver SOAP channel.. We are on PI7.1 ..Are there any installation checks that needs to be looked at as we are facing lot of inconsistencies with SOAP...
    What may be the cause of the below error...Also please let me know what all checks are needed as there are inconsistencies with SOAP adapter...
    SOAP: call failed: java.net.SocketException: Connection reset
    Delivering the message to the application using connection SOAP_http://sap.com/xi/XI/System failed, due to: com.sap.engine.interfaces.messaging.api.exception.MessagingException: java.net.SocketException: Connection reset.

    Hi Amit,
    Having the same issue :
    SOAP: call failed: java.net.SocketException: Connection reset
    has your issue been solved and how ?
    Regards,

  • SOAP  Call to SAP RFC

    Hi,
    I have a scenario in which I am calling a RFC from SOAP client. RFC has been exposed as a web service. The RFC takes a table parameter. The Table param is Not Optional.
    Everything works fine except when I try to send an invalid value in the Export Param to the RFC. The SOAP Call Fails and I get a fault Message.
    If there is an invalid value in the Export Param the Table Parameter is Null. So is that the reason why the SOAP call fails??
    Any help regarding this would be appreciate. Tried searching OSS but could not find anything on this.
    Here is the Fault Message:
    <SOAP:Envelope xmlns:SOAP='http://schemas.xmlsoap.org/soap/envelope/'>
      <SOAP:Body>
        <SOAP:Fault>
          <faultcode>SOAP:Server</faultcode>
          <faultstring>failed to call the adapter engine</faultstring>
          <detail>
            <s:SystemError xmlns:s='http://sap.com/xi/WebService/xi2.0'>
              <context>XIAdapter</context>
              <code>DeliveryException</code>
              <text><![CDATA[
    com.sap.aii.af.mp.module.ModuleException
         at com.sap.aii.af.mp.soap.ejb.XISOAPAdapterBean.process(XISOAPAdapterBean.java:697)
         at com.sap.aii.af.mp.module.ModuleLocalLocalObjectImpl3.process(ModuleLocalLocalObjectImpl3.java:103)
         at com.sap.aii.af.mp.ejb.ModuleProcessorBean.process(ModuleProcessorBean.java(Compiled Code))
         at com.sap.aii.af.mp.processor.ModuleProcessorLocalLocalObjectImpl0.process(ModuleProcessorLocalLocalObjectImpl0.java(Compiled Code))
         at com.sap.aii.af.mp.soap.web.MessageServlet.doPost(MessageServlet.java:513)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java(Compiled Code))
         at javax.servlet.http.HttpServlet.service(HttpServlet.java(Compiled Code))
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java(Compiled Code))
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java(Compiled Code))
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java(Inlined Compiled Code))
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java(Compiled Code))
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java(Compiled Code))
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java(Compiled Code))
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java(Inlined Compiled Code))
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java(Compiled Code))
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java(Compiled Code))
         at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java(Compiled Code))
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java(Compiled Code))
         at java.security.AccessController.doPrivileged1(Native Method)
         at java.security.AccessController.doPrivileged(AccessController.java(Compiled Code))
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java(Compiled Code))
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java(Compiled Code))
    Caused by: com.sap.aii.messaging.srt.BubbleException: failed to call the adapter engine [null "null"]; nested exception caused by: com.sap.aii.af.ra.ms.api.DeliveryException: Application:EXCEPTION_DURING_EXECUTE:
         at com.sap.aii.af.mp.soap.ejb.AFCallerApplication.perform(AFCallerApplication.java:122)
         at com.sap.aii.messaging.srt.ApplicationBubble.onMessage(ApplicationBubble.java:29)
         at com.sap.aii.messaging.srt.ExtensionBubble.onMessage(ExtensionBubble.java:56)
         at com.sap.aii.af.mp.soap.ejb.XISOAPAdapterBean.process(XISOAPAdapterBean.java:576)
         ... 21 more
    Caused by: com.sap.aii.af.ra.ms.api.DeliveryException: Application:EXCEPTION_DURING_EXECUTE:
         at com.sap.aii.adapter.xi.ms.XIEventHandler.onTransmit(XIEventHandler.java(Compiled Code))
         at com.sap.aii.af.ra.ms.impl.core.queue.CallConsumer.onMessage(CallConsumer.java:123)
         at com.sap.aii.af.ra.ms.impl.core.queue.Queue.run(Queue.java(Compiled Code))
         at com.sap.engine.frame.core.thread.Task.run(Task.java(Compiled Code))
         at com.sap.engine.core.thread.impl5.SingleThread.execute(SingleThread.java(Compiled Code))
         at com.sap.engine.core.thread.impl5.SingleThread.run(SingleThread.java(Compiled Code))
              ]]></text>
            </s:SystemError>
          </detail>
        </SOAP:Fault>
      </SOAP:Body>
    </SOAP:Envelope>
    Thanks
    Ashish

    Hi Ashish,
    Were you able to resolve this problem? I am facing a similar situation.
    After doing all the steps necessary when I try to send a request to the soap_sender channel I get a message unable to post:error 500
    ANy help would be appreciated.
    Thanks

  • SOAP call failling

    Hi ,
    I am using a SOAP Receiver adapter to send a message. I am getting the below error when i try to call the soap adapter.
    SOAP: call failed: com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 1 of 1-byte UTF-8 sequence.
    SOAP: error occured: com.sap.engine.interfaces.messaging.api.exception.MessagingException: com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 1 of 1-byte UTF-8 sequence.

    Hi Sneha,
    Please check Target URL, enter the complete address (URL) of the Web service provider that you want to send the message to. I searched and searched this error and all i could is that there could be a problem with wsdl.
    Regards
    joel

  • Log4j:ERROR setFile(null,true) call failed.

    Hello
    I have Log4j.properties
    log4j.rootCategory = DEBUG, file ,ImportFileAppender , console
    log4j.appender.stdout.threshold = ERROR
    log4j.appender.stdout = org.apache.log4j.ConsoleAppender
    log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
    log4j.appender.stdout.layout.ConversionPattern = %d{ABSOLUTE} %5p [%t] %c - %m%n
    log4j.appender.file.threshold = DEBUG
    log4j.appender.file.File = ${qtl.log.location}
    log4j.appender.file.MaxFileSize = 10MB
    log4j.appender.file.MaxBackupIndex = 10
    log4j.appender.file = org.apache.log4j.RollingFileAppender
    log4j.appender.file.layout = org.apache.log4j.PatternLayout
    log4j.appender.file.layout.ConversionPattern =%-5p|%-80m|%d%n
    log4j.appender.ImportFileAppender.threshold = DEBUG
    log4j.appender.ImportFileAppender.File = ${qtl.log.import}
    log4j.appender.ImportFileAppender = org.apache.log4j.RollingFileAppender
    log4j.appender.ImportFileAppender.layout = org.apache.log4j.PatternLayout
    log4j.appender.ImportFileAppender.layout.ConversionPattern = %-5p|%-80m|%d%n
    and i am giving ${qtl.log.location} through java file like this
    private static String LOG_4J_PROPERTY_FILE = "/src/com/impact/qtl12/commons/log4j.properties";
    logFileName     = "log-" + new SimpleDateFormat("yyyyMMdd-hhmm").format(new Date()) + ".log";
              logFilePath = dirString + "\\" + logFileName;;
    System.setProperty("qtl.log.location", logFilePath); //replacing ${qtl.log.location} by the logFilePath in log4j.properties String directory = System.getProperty("user.dir");
    PropertyConfigurator.configure(directory + LOG_4J_PROPERTY_FILE);
    when i run my program i get error of this type
    log4j:ERROR setFile(null,true) call failed.
    java.io.FileNotFoundException:
         at java.io.FileOutputStream.openAppend(Native Method)
         at java.io.FileOutputStream.<init>(Unknown Source)
         at java.io.FileOutputStream.<init>(Unknown Source)
         at org.apache.log4j.FileAppender.setFile(FileAppender.java:289)
         at org.apache.log4j.RollingFileAppender.setFile(RollingFileAppender.java:165)
         at org.apache.log4j.FileAppender.activateOptions(FileAppender.java:163)
         at org.apache.log4j.config.PropertySetter.activate(PropertySetter.java:256)
         at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:132)
         at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:96)
         at org.apache.log4j.PropertyConfigurator.parseAppender(PropertyConfigurator.java:654)
         at org.apache.log4j.PropertyConfigurator.parseCategory(PropertyConfigurator.java:612)
         at org.apache.log4j.PropertyConfigurator.configureRootCategory(PropertyConfigurator.java:509)
         at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:415)
         at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:316)
         at org.apache.log4j.PropertyConfigurator.configure(PropertyConfigurator.java:324)
         at com.impact.qtl12.imports.UI.CSVFile.QTL.main(QTL.java:964)
    log4j:ERROR setFile(null,true) call failed.
    Edited by: Mayur Mitkari on Jan 2, 2013 12:53 AM
    Edited by: Mayur Mitkari on Jan 2, 2013 12:54 AM
    Edited by: Mayur Mitkari on Jan 2, 2013 12:55 AM

    Mayur Mitkari wrote:
    I checked it out the directory existsReally? You have a directory 'src' in the root of your filesystem?
    /src/com/...EDIT: never mind, moving along, I missed a bit of code there... In my own defense, use \ formatting tags to make it slightly more inviting to read it.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • XI AF API call failed. Module exception: Java Mapping

    Hi Experts,
    I have faced a typical error for one of my interface. The Scenario is SOAP to SOAP and we are performing SOAP Lookup  before sending the data to Target web service. We are using one Java Mapping  'FileIns_lookupLoad.java --- com/fi/' and performing the SOAP Lookup from within the code. In the Lookup Communication channel we are using 'Axis' as message protocol and passing couple of values through Module Key parameters. We have same ESR and ID objects in Development, Quality and Production (as per Version ID and History).
    Now the problem is Lookup is failing only in Development but Quality and Production is working fine. I have replaced Quality CC URL with the development WSDL URL, but that worked fine. That means Development Web Service is good. We are getting the below error in Dev:
    <SAP:Stack>StreamTransformationException triggered by application mapping program com/fi/FileIns_lookupLoad; Look Up Failed</SAP:Stack>
    Trace : *
    <Trace level="1"
    type="T"> Some Thing Wrong in LookUpError when calling an adapter by using the communication channel CC_IN_SOAP_GEInsuranceLoadLookup1 (Party: , Service: BusService_GE, Object ID: 4214805c52893ef9b0b3f0ef0902fe9e) XI AF API call failed. Module exception: 'while trying to invoke the method org.apache.axis.types.URI.toString() of an object returned from com.sap.xi.XI.Message._30.QualifiedName.getNamespace()'. Cause Exception: 'while trying to invoke the method org.apache.axis.types.URI.toString() of an object returned from com.sap.xi.XI.Message._30.QualifiedName.getNamespace()'. </Trace>
      <Trace level="1" type="T">*** END APPLICATION TRACE ***</Trace>
      <Trace level="1" type="T">Java mapping com/fi/FileIns_lookupLoad has thrown a StreamTransformationException. Thrown: com.sap.aii.mapping.api.StreamTransformationException: Look Up Failed at com.fi.FileIns_lookupLoad.execute(FileIns_lookupLoad.java:282) at com.fi.FileIns_lookupLoad.transform(FileIns_lookupLoad.java:74) 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.SequenceMapping.executeStep.................................................
    ................................................................................<Trace level="1" type="T">Application mapping program com/fi/FileIns_lookupLoad throws a stream transformation exception: Look Up Failed Thrown: com.sap.aii.ib.core.mapping.execution.ApplicationException: Application mapping program com/fi/FileIns_lookupLoad throws a stream transformation exception: Look Up Failed at com.sap.aii.ib.server.mapping.execution.JavaMapping.executeStep(JavaMapping.java:95) at com.sap.aii.ib.server.mapping.execution.Mapping.execute(Mapping.java:60) at com.sap.aii.ib.server.mapping.execution.SequenceMapping.executeStep(SequenceMapping.java:40) at com.sap.aii.ib.server.mapping.execution.Mapping.execute
    I have already checked with Basis and as per them JDK and Java versions are identical in Dev, QAS and Prod. It seems something is wrong with 'XI AF API' which we are calling from the channel. If we totally ignore Lookup process and send direct data, it is working fine. Target CC is also using Axis.
    Sequence in CC: afreq ->xireq ->wssec2 ->xires ->afres
    For any more information please let me know.
    Thanks,
    Nabendu.

    Hi Anupam,
    The Java Mapping code is same in Dev , QAS and Prod. Also the versions of the JAR is same.
    Please find the code below.
    package com.fi;
    import java.util.HashMap;
    import com.sap.aii.mapping.api.AbstractTrace;
    import com.sap.aii.mapping.api.AbstractTransformation;
    import com.sap.aii.mapping.api.StreamTransformation;
    import com.sap.aii.mapping.api.StreamTransformationConstants;
    import com.sap.aii.mapping.api.MappingTrace;
    import com.sap.aii.mapping.api.StreamTransformationException;
    import com.sap.aii.mapping.api.DynamicConfiguration;
    import com.sap.aii.mapping.api.DynamicConfigurationKey;
    import com.sap.aii.mapping.api.TransformationInput;
    import com.sap.aii.mapping.api.TransformationOutput;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.util.*;
    import javax.xml.parsers.DocumentBuilder;
    import javax.xml.parsers.DocumentBuilderFactory;
    import javax.xml.parsers.ParserConfigurationException;
    import javax.xml.transform.Result;
    import javax.xml.transform.Source;
    import javax.xml.transform.Transformer;
    import javax.xml.transform.TransformerConfigurationException;
    import javax.xml.transform.TransformerException;
    import javax.xml.transform.TransformerFactory;
    import javax.xml.transform.dom.DOMSource;
    import javax.xml.transform.OutputKeys;
    import javax.xml.transform.stream.StreamResult;
    import org.w3c.dom.*;
    import org.w3c.dom.views.AbstractView;
    import org.xml.sax.SAXException;
    import java.io.ByteArrayInputStream;
    import com.sap.aii.mapping.lookup.*;
    /*import com.sap.aii.utilxi.hmis.server.HmisEnvironment.Accessor;
    //import com.sap.aii.utilxi.lock.api.LockServiceException;
    //import com.pmintl.pppimes.RFCLookup.javamapping.*;
    //import java.io.FileInputStream;
    //import java.io.FileOutputStream;*/
    import java.text.DateFormat;
    import java.text.SimpleDateFormat;
    //import java.text.ParseException;
    import java.util.Date;
    import java.io.*;
    public class FileIns_lookupLoad extends AbstractTransformation{
            private Map param = null;
            private AbstractTrace trace = getTrace();
            String senderService = null;
           String inParamChannel = null;
           String inParamBusService = null;
              //3. Each JAVA Mapping using program 7.1 API must implement the method
              // transform(TransformationInput in, TransformationOutput out)
              // as oppose to execute Method in earlier version.
               public void transform(TransformationInput arg0, TransformationOutput arg1) throws StreamTransformationException {
              // TODO Auto-generated method stub
              //4. An info message is added to trace. An instance of trace of object is obtained by calling
              // the getTrace method of class AbstractTransformation
                    inParamChannel = arg0.getInputParameters().getString("COMM_CHANNEL");
                    inParamBusService = arg0.getInputParameters().getString("BUS_SERVICE");
                    getTrace().addInfo("Input Parameter: " + inParamChannel);
                    getTrace().addInfo("Input Parameter: " + inParamBusService);
                    this.execute(arg0.getInputPayload().getInputStream(),
                          arg1.getOutputPayload().getOutputStream());
              //5. Input payload is obtained by using arg0.getInputPayload().getInputStream()
          * @param args
         public static void main(String[] args) {
                // TODO Auto-generated method stub
         public void execute(InputStream in, OutputStream out)
                   throws StreamTransformationException {
              // TODO Auto-generated method stub
              try
                   //Get The Trace
    //               trace = (AbstractTrace)param.get(StreamTransformationConstants.MAPPING_TRACE );
                   trace = getTrace();
                  getTrace().addInfo("Java Mapping Started");
                   DocumentBuilderFactory ifactory = DocumentBuilderFactory.newInstance();
                   DocumentBuilder ibuilder = ifactory.newDocumentBuilder();
                   Document IDoc  = ibuilder.parse(in);
                   Document TDoc = ibuilder.newDocument();
                   String mrnVal = "";
                   trace.addInfo("Preparing Target Doc");
                   Element message = TDoc.createElementNS("urn:Medtronic.com:CATS_Patient_Transactions","n1:Mt_Insurance");
                   Node tRoot = TDoc.appendChild(message);
                   //trace.addInfo(tRoot.getNodeName());
                   Element sRoot = (Element)IDoc.getFirstChild();
                   //trace.addInfo(sRoot.getNodeName());
                   NodeList nl = sRoot.getChildNodes();
               // trace.addInfo("Len"+nl.getLength());
    ////               for(int i=0;i<nl.getLength();i++)
    //                    Node n1 = TDoc.importNode(nl.item(i), true);
    //                    trace.addInfo("Adding Child Nodes");
    //                    trace.addInfo(nl.item(i).getNodeName());
    //                    tRoot.appendChild(n1);
                   NodeList lmrn = sRoot.getElementsByTagName("Mrn");
                   if(lmrn != null)
                        Node n1 = TDoc.importNode(lmrn.item(0), true);
                        Element e1 = (Element)lmrn.item(0);
                        //trace.addInfo(e1.getNodeName());
                        mrnVal = e1.getTextContent();
                        tRoot.appendChild(n1);
                   NodeList lfsc = sRoot.getElementsByTagName("Fsc");
                   if(lfsc != null)
                        for(int i=0;i<lfsc.getLength();i++){
                             Element n1=TDoc.createElement(lfsc.item(i).getNodeName());
                             tRoot.appendChild(n1);
                             Node fieldch = TDoc.createElement("Fields");
                             n1.appendChild(fieldch);
                             NodeList chl = lfsc.item(i).getChildNodes();
                             trace.addInfo("len11"+chl.getLength());
                             for(int j=0;j<chl.getLength();j++){
                                  if(!chl.item(j).getNodeName().equals("FscNumber")&&!chl.item(j).getNodeName().equals("Priority")){
                                       if(chl.item(j).hasChildNodes()){
                                            trace.addInfo(chl.item(j).getNodeName());
                                       Element fscfield = TDoc.createElement("FSCField");
                                       fieldch.appendChild(fscfield);
                                       NodeList FUQl = chl.item(j).getChildNodes();
                                       for(int p =0;p<FUQl.getLength();p++){
                                            //trace.addInfo(" i: "+i+" J: "+j+" P: "+p);
                                            if(FUQl.item(p).getNodeName().equals("FUQNumber")){
                                                 //Node tFUQ = TDoc.createElement("FUQNumber");
                                                 //tFUQ.setTextContent(FUQl.item(p).getTextContent());
                                                 fscfield.setAttribute("FUQNumber", FUQl.item(p).getTextContent());
                                            if(FUQl.item(p).getNodeName().equals("Value")){
                                                 Node tVal = TDoc.createElement("Value");
                                                 tVal.setTextContent(FUQl.item(p).getTextContent());
                                                 fscfield.appendChild(tVal);
                                                 //Node tName = TDoc.createElement("Field");
                                                 //tName.setTextContent(chl.item(j).getNodeName());
                                                 fscfield.setAttribute("Field", chl.item(j).getNodeName());
    //                                   Node fuqch = chl.item(j).getFirstChild();
    //                                   Node valch = fuqch.getNextSibling();
    //                                   if(fuqch!=null){
    //                                        Node tFUQ = TDoc.createElement("FUQNumber");
    //                                        tFUQ.setTextContent(fuqch.getTextContent());
    //                                        fscfield.appendChild(tFUQ);
    //                                   if(valch!=null){
    //                                        Node tVal = TDoc.createElement("Value");
    //                                        tVal.setTextContent(valch.getTextContent());
    //                                        fscfield.appendChild(tVal);
    //                                        Node tName = TDoc.createElement("Filed");
    //                                        tName.setTextContent(chl.item(j).getNodeName());
    //                                        fscfield.appendChild(tName);
                                  else{
                                       //Node numch =TDoc.importNode(chl.item(j), true);
                                       //Element e1 =(Element)n1;
                                       if(chl.item(j).getNodeName().equals("FscNumber")){
                                            n1.setAttribute("Number", chl.item(j).getTextContent());
                                       if(chl.item(j).getNodeName().equals("Priority")){
                                            n1.setAttribute("Priority", chl.item(j).getTextContent());
                             //tRoot.appendChild(lfsc.item(0));
    //                         Element e1 = (Element)lfsc.item(0);
    //                         trace.addInfo(e1.getNodeName());
    //                         mrnVal = e1.getNodeValue();
    /////Start of Look Up Code////
                   //Preparing Input String
                   String lookUpRequest = "<LoadPatientFullInsuranceDetail><Mrn>"+mrnVal+"</Mrn></LoadPatientFullInsuranceDetail>";
                   trace.addInfo("Request");
                   trace.addInfo(lookUpRequest);
                        SystemAccessor acc;
                        Channel channel;
                        Payload lookupResult;     
                        try
                             channel = LookupService.getChannel(inParamBusService, inParamChannel);
                             trace.addInfo("Got the channel");
                             acc = LookupService.getSystemAccessor(channel);
                             trace.addInfo("Got The Channel and Accessor");
                             InputStream ist = new ByteArrayInputStream(lookUpRequest.getBytes());
                             XmlPayload payload = LookupService.getXmlPayload(ist);
                             if(acc != null){
                                  trace.addInfo("Got The Channel and Accessor");
                                  trace.addInfo("Executing The Webservice");
                                  lookupResult = acc.call(payload);
                                  trace.addInfo("End of Executing The Webservice");
                                  trace.addInfo(lookupResult.toString());
                             if(lookUpRequest!=null){
                                  trace.addInfo("Responce is not null");
                                  InputStream rist = lookupResult.getContent();
                                  Document lresDoc = ibuilder.parse(rist);
                                  Node n1 = lresDoc.getFirstChild();
                                  trace.addInfo(n1.getNodeName());
                                  if(n1.getNodeName().endsWith("LoadPatientFullInsuranceDetailResponse"))
                                       Node ch1 = n1.getFirstChild();
                                       trace.addInfo(ch1.getNodeName());
                                       NodeList lookupnl = ch1.getChildNodes();
                                       //trace.add
                                       for(int i=0;i<lookupnl.getLength();i++)
                                            Node n2 = TDoc.importNode(lookupnl.item(i), true);
                                            trace.addInfo("Adding Child Nodes");
                                            trace.addInfo(lookupnl.item(i).getNodeName());
                                            tRoot.appendChild(n2);
                                  else{
                                  throw new StreamTransformationException("Error in Look Up"+n1.getTextContent());
                                   //while(ch1.hasChildNodes() && !ch1.getNodeName().equals("FSCS")){
                             else{
                                  trace.addWarning("Responce is null");
                                 throw new LookupException();
                        catch(LookupException le)
                             trace.addWarning("Some Thing Wrong in LookUp"+le.getMessage());
                             throw new StreamTransformationException("Look Up Failed");                         
                           Transformer transformer = TransformerFactory.newInstance().newTransformer();
    //                       StreamResult reqResult = new StreamResult(new StringWriter());
                           DOMSource source = new DOMSource(TDoc);
                           Result result = new StreamResult(out);
                           transformer.transform(source,result);
              catch(StreamTransformationException ste)
               throw new StreamTransformationException(ste.getMessage());
              catch(Exception e){
                   trace.addInfo(e.getMessage());
              finally{

Maybe you are looking for

  • T.code for checking stock at WM level

    Hi Gurus,                I want to check the warehouse stock at Storage type level in previous week,Can any one give me T.Code where we can satisfy this requirement Regards Narayana

  • How to change the variable value format in Ip workbooks

    Dear Experts, How to add zeros to a vaiable value before passing to a planning function in BEx analyzer? eg: 'ZPRCTR_VAR1' (For Infoobject 0PROFIT_CTR) User enters value 20 for 'ZPRCTR_VAR1' , but the system know only '0000000020'. I wrote a user exi

  • Why can't I log into my account?

    I don't understand why you can't log into your account when it's the least they can do since there is a non existent customer service. I just need to pay my final bill so I can rid of this sad idea of superior service. Thankfully I have upgraded to a

  • Mapping of SD process in University Project.

    Hello Experts, For University process I need to consider the standard sd process which can be considered for implementation project. Here the main issue is, I wont be using IS - HER. So, I need guideline for the std. SD scenario which can be consider

  • Move OAF personalizations and extensions from one instance to anothe

    Please tell me steps how to move Personlizations from one Instance to another Instance Regards, Vivek Gautam