MessageId missing in SOAP message header

I am trying to execute a SAP (IDoc) -> XI -> SAP (ABAP Proxy). The SAP machines are 6.2, the XI machine is 6.4. I have generated and tested the ABAP proxy, works without issue. Per previous threads I also tested the message mapping in the repository, also works successfully. When I review the SXI_Monitor in XI, the message is received successfully, mapped successfully, but errors in the Adater Call step. There is no message listed as received in the sxi_monitor on the recevier SAP system. Error Message is as follows:
  <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <!--  Call Adapter
  -->
- <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
  <SAP:Category>XIProtocol</SAP:Category>
  <SAP:Code area="PARSER">ITEM_MISSING</SAP:Code>
  <SAP:P1>/MessageHeader/MessageId</SAP:P1>
  <SAP:P2 />
  <SAP:P3 />
  <SAP:P4 />
  <SAP:AdditionalText />
  <SAP:ApplicationFaultMessage namespace="" />
  <SAP:Stack>XML tag /MessageHeader/MessageId missing in SOAP message header (SAP XI Extension)</SAP:Stack>
  <SAP:Retry>M</SAP:Retry>
  </SAP:Error>
Looking at the message in the monitor it does have a message id assigned. Only other interesting thing is in the trace section where it says :
  <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_LOG_TO_PERSIST" />
  <Trace level="1" type="System_Error">Error exception return from pipeline processing!</Trace>
  <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_TO_PERSIST" />
All other messages are successful in this persistence(send to file, Idoc, etc).
What is the issue?

Hi Darin,
Check your receiver communication channel.  Make sure that the protocol is set to XI 2.0 for 6.2.
Hope that helps.
Best Regards,
Doo

Similar Messages

  • Header missing in SOAP message header (SAP XI Extension)

    Hi Experts,
    We are implementing interface MasterDataUpdateConfirmation_Out between 2 SAP ERP systems. The middleware is SAP PI.
    SAP PI team requested a change in this interface Stack - Replace Stack ABAP by Stack Java. The changes were made.
    However, now we get an error in the interface in the SAP ERP sender system, but the message arrives to SAP PI where is processed without errors and also arrives to SAP ERP receive system and the message is also processes without errors.
    The error we have in XML message in SAP ERP sender system is:
    XML element {http://schemas.xmlsoap.org/soap/envelope/}Header missing in
    SOAP message header (SAP XI Extension)
    Exception of class CX_XMS_SYSERR_PARSER
    Can anyone please help us? We have no ideia what to do.
    Thanks in advance,
    RS

    Hi again,
    I don't know if it is important, but the communication is asynchronous and the sender system is SAP ECC 6.0.
    Thanks!

  • Envelope missing in SOAP message header (SAP XI Extension)

    I have scenario where in I am sending a file from XI to PCK. BUt i am getting a following error.
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Call Adapter
      -->
    - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
      <SAP:Category>XIProtocol</SAP:Category>
      <SAP:Code area="PARSER">ITEM_MISSING</SAP:Code>
      <SAP:P1>Envelope</SAP:P1>
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack>XML tag Envelope missing in SOAP message header (SAP XI Extension)</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>
    I am enclosing the file i am trying to send.
    <?xml version="1.0" encoding="UTF-8" ?>
    - <ns0:CFP_SENDER_MT xmlns:ns0="HTTP://PCKXI.WORLDBANK.ORG">
    - <SEND>
      <TF_Number>12</TF_Number>
      <TF_Desc>1212</TF_Desc>
      </SEND>
      </ns0:CFP_SENDER_MT>
    Can somebody please enlighten me about this error? Points would be rewarded immediately
    Regards,
    Manish

    Dear Manish,
    quite often the reason for this kind of error
    is the fact that the receiver of the XI message is
    returning a http response to the Integration Server.
    As of XI3.0 SP21 / PI7.0 SP13 this response
    is also properly parsed and visible in the error
    header of the XI message.
    For almost all prior support package levels an
    advanced correction is available as per OSS note:
    1064346 Improved error output for connection problems
    Please check whether this applies to your system.
    If so, you will see detailed information on the error
    in the error header object of the XI message as soon
    as this issue re-occurs.
    Best Regards,
    Harald Keimer
    XI Development Support
    SAP AG, Walldorf

  • Posting XML via HTTP post returns "Envelope missing in SOAP message header"

    Hi,
    I am trying to post a simple XML message directly to the integration server using an html document, where the form that contains the XML message is a simple
    <b><FORM action="http://servername:8000/sap/xi/engine?type=entry" method="post"></b>
    So, I add my xml message like this:
    <?xml version="1.0" encoding="UTF-8">
    <ns:PlantMaintenanceMessageType xmlns:ns="http://sap.com/demo/plantmaintenance">
          <EquipmentID>SLIEQUIP5</EquipmentID>
          <FunctionalLocation>KB</FunctionalLocation>
          <Date/>
          <Time/>
    </ns:PlantMaintenanceMessageType>
    but I get a message back from the Integration Server as:
    <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
      <SAP:Category>XIProtocol</SAP:Category>
      <SAP:Code area="PARSER">ITEM_MISSING</SAP:Code>
      <SAP:P1>Envelope</SAP:P1>
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:ApplicationFaultMessage namespace="" />
      <b><SAP:Stack>XML tag Envelope missing in SOAP message header (SAP XI Extension)</SAP:Stack></b>
      </SAP:Error>
    Seems like I am missing the Envelope so my Integration Server can understand my post. What does the Envelope look like or should conatain so that the Integration Server accepts my XML file ?
    Thanks !

    This is the trace
      <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Call Adapter
      -->
    - <SAP:Trace xmlns:SAP="http://sap.com/xi/XI/Message/30">
      <Trace level="1" type="T">Party normalization: sender</Trace>
      <Trace level="1" type="T">Sender scheme external =</Trace>
      <Trace level="1" type="T">Sender agency external =</Trace>
      <Trace level="1" type="T">Sender party external =</Trace>
      <Trace level="1" type="T">Sender party normalized =</Trace>
      <Trace level="1" type="B" name="CL_XMS_HTTP_HANDLER-HANDLE_REQUEST" />
    - <!--  ************************************
      -->
      <Trace level="1" type="T">XMB was called with URL /sap/xi/engine?type=entry</Trace>
      <Trace level="2" type="T">Request Line = POST /sap/xi/engine?type=entry HTTP/1.1</Trace>
      <Trace level="2" type="T">Host = sapqxh:8020</Trace>
      <Trace level="2" type="T">Server protocol = HTTP/1.1</Trace>
      <Trace level="2" type="T">Remote address = 10.228.137.106</Trace>
      <Trace level="1" type="T">COMMIT is done by XMB !</Trace>
      <Trace level="1" type="B" name="CL_XMS_MAIN-ENTER_XMS" />
    - <!--  ************************************
      -->
      <Trace level="1" type="B" name="CL_XMS_MAIN-SET_START_PIPELINE" />
    - <!--  ************************************
      -->
      <Trace level="3" type="T">XMB was called with external pipeline PID = ENTRY</Trace>
      <Trace level="3" type="T">Getting type of XMB...</Trace>
      <Trace level="1" type="B" name="SXMBCONF-SXMB_GET_XMB_USE" />
      <Trace level="2" type="T">XMB kind = CENTRAL</Trace>
      <Trace level="3" type="T">Start pipeline found</Trace>
      <Trace level="2" type="T">Switch to external start pipeline PID = CENTRAL</Trace>
    - <Trace level="1" type="B" name="CL_XMS_TROUBLESHOOT-ENTER_PLSRV">
      <Trace level="3" type="T">No triggers found. OK.</Trace>
      </Trace>
      <Trace level="1" type="T">****************************************************</Trace>
      <Trace level="1" type="T">* *</Trace>
      <Trace level="1" type="T">* *</Trace>
      <Trace level="1" type="T">XMB entry processing</Trace>
      <Trace level="3" type="T">system-ID = QXH</Trace>
      <Trace level="3" type="T">client = 220</Trace>
      <Trace level="3" type="T">language = E</Trace>
      <Trace level="3" type="T">user = PISUPER</Trace>
      <Trace level="1" type="Timestamp">2008-07-18T14:19:04Z CET</Trace>
      <Trace level="1" type="T">* *</Trace>
      <Trace level="1" type="T">* *</Trace>
      <Trace level="1" type="T">****************************************************</Trace>
      <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_UC_EXECUTE" />
    - <!--  ************************************
      -->
      <Trace level="1" type="T">Message-GUID = 4880474945AE67E2E10000000AE4896A</Trace>
      <Trace level="1" type="T">PLNAME = CENTRAL</Trace>
      <Trace level="1" type="T">QOS = EO</Trace>
      <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PIPELINE_ASYNC" />
    - <!--  ************************************
      -->
      <Trace level="3" type="T">QOS = EO</Trace>
      <Trace level="3" type="T">Message-GUID = 4880474945AE67E2E10000000AE4896A</Trace>
      <Trace level="1" type="T">Get definition of external pipeline = CENTRAL</Trace>
    - <Trace level="1" type="B" name="CL_XMS_MAIN-LOOKUP_INTERNAL_PL_ID">
      <Trace level="3" type="T">External PLID = CENTRAL</Trace>
      <Trace level="3" type="T">Internal PLID = SAP_CENTRAL</Trace>
      </Trace>
      <Trace level="1" type="T">Get definition of internal pipeline = SAP_CENTRAL</Trace>
      <Trace level="3" type="T">Generate prefixed queue name</Trace>
      <Trace level="1" type="T">Queue name : XBTL0000</Trace>
      <Trace level="1" type="T">Generated prefixed queue name = XBTL0000</Trace>
      <Trace level="1" type="T">Schedule message in qRFC environment</Trace>
      <Trace level="3" type="T">Setup qRFC Scheduler</Trace>
      <Trace level="1" type="T">Setup qRFC Scheduler OK!</Trace>
      <Trace level="3" type="T">Call qRFC .... MsgGuid = 4880474945AE67E2E10000000AE4896A</Trace>
      <Trace level="3" type="T">Call qRFC .... Version = 000</Trace>
      <Trace level="3" type="T">Call qRFC .... Pipeline = CENTRAL</Trace>
      <Trace level="3" type="T">OK.</Trace>
      <Trace level="1" type="T">----
    </Trace>
      <Trace level="1" type="T">Going to persist message</Trace>
      <Trace level="1" type="T">NOTE: The following trace entries are always lacking</Trace>
      <Trace level="1" type="T">- Exit WRITE_MESSAGE_TO_PERSIST</Trace>
      <Trace level="1" type="T">- Exit CALL_PIPELINE_ASYNC</Trace>
      <Trace level="1" type="T">Async barrier reached. Bye-bye !</Trace>
      <Trace level="1" type="T">----
    </Trace>
      <Trace level="3" type="T">Version number = 000</Trace>
      <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_TO_PERSIST" />
    - <!--  ************************************
      -->
      <Trace level="3" type="T">Persisting message Status = 001</Trace>
      <Trace level="3" type="T">Message version 000</Trace>
      <Trace level="3" type="T">Pipeline CENTRAL</Trace>
      <Trace level="1" type="T">--start sender interface action determination</Trace>
      <Trace level="1" type="T">select interface MIOA_US139_EmployeeData*</Trace>
      <Trace level="1" type="T">select interface namespace urn:abbott-com:US139</Trace>
      <Trace level="1" type="T">found interface MIOA_US139_EmployeeData</Trace>
      <Trace level="1" type="T">found action ARCH</Trace>
      <Trace level="1" type="T">set interface action to ARCH</Trace>
    - <Trace level="1" type="B" name="CL_XMS_MAIN-PERSIST_READ_MESSAGE">
      <Trace level="3" type="T">Trace object available again now. OK.</Trace>
      <Trace level="3" type="T">Message was read from persist layer. OK.</Trace>
      <Trace level="3" type="T">Message properties in XMB object were setup. OK.</Trace>
      <Trace level="3" type="ToDo">Make sure we catch exceptions in persist read</Trace>
      <Trace level="3" type="ToDo">Tracing obj. not avail. before return of CL_XMS_MAIN-PERSIST_READ_MESSAGE</Trace>
      </Trace>
      <Trace level="1" type="T">Note: the following trace entry is written delayed (after read from persist)</Trace>
      <Trace level="1" type="B" name="SXMS_ASYNC_EXEC" />
    - <!--  ************************************
      -->
      <Trace level="3" type="T">message version successfully read from persist version= 000</Trace>
      <Trace level="2" type="T">Increment log sequence to 001</Trace>
      <Trace level="1" type="T">----
    </Trace>
      <Trace level="1" type="T">Starting async processing with pipeline CENTRAL</Trace>
      <Trace level="3" type="T">system-ID = QXH</Trace>
      <Trace level="3" type="T">client = 220</Trace>
      <Trace level="3" type="T">language = E</Trace>
      <Trace level="3" type="T">user = PISUPER</Trace>
      <Trace level="1" type="Timestamp">2008-07-18T14:19:08Z CET</Trace>
      <Trace level="1" type="T">----
    </Trace>
      <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PIPELINE_SYNC" />
    - <!--  ************************************
      -->
      <Trace level="1" type="T">Get definition of external pipeline CENTRAL</Trace>
    - <Trace level="1" type="B" name="CL_XMS_MAIN-LOOKUP_INTERNAL_PL_ID">
      <Trace level="3" type="T">External PLID = CENTRAL</Trace>
      <Trace level="3" type="T">Internal PLID = SAP_CENTRAL</Trace>
      </Trace>
      <Trace level="1" type="T">Corresponding internal pipeline SAP_CENTRAL</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T">Pipeline attributes</Trace>
      <Trace level="3" type="T">PID = SAP_CENTRAL</Trace>
      <Trace level="3" type="T">ENABLE = 1</Trace>
      <Trace level="3" type="T">TRACELEVEL = 0</Trace>
      <Trace level="3" type="T">EXEMODE = A</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T" />
      <Trace level="3" type="T">Pipeline elements</Trace>
      <Trace level="3" type="T">ELEMPOS = 0001</Trace>
      <Trace level="3" type="T">PLSRVID = PLSRV_RECEIVER_DETERMINATION</Trace>
      <Trace level="3" type="T">PLSRVTYPE =</Trace>
      <Trace level="3" type="T">FL_DUMMY = 0</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T">ELEMPOS = 0002</Trace>
      <Trace level="3" type="T">PLSRVID = PLSRV_INTERFACE_DETERMINATION</Trace>
      <Trace level="3" type="T">PLSRVTYPE =</Trace>
      <Trace level="3" type="T">FL_DUMMY =</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T">ELEMPOS = 0003</Trace>
      <Trace level="3" type="T">PLSRVID = PLSRV_RECEIVER_MESSAGE_SPLIT</Trace>
      <Trace level="3" type="T">PLSRVTYPE =</Trace>
      <Trace level="3" type="T">FL_DUMMY =</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T">ELEMPOS = 0004</Trace>
      <Trace level="3" type="T">PLSRVID = PLSRV_MAPPING_REQUEST</Trace>
      <Trace level="3" type="T">PLSRVTYPE =</Trace>
      <Trace level="3" type="T">FL_DUMMY =</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T">ELEMPOS = 0007</Trace>
      <Trace level="3" type="T">PLSRVID = PLSRV_OUTBOUND_BINDING</Trace>
      <Trace level="3" type="T">PLSRVTYPE =</Trace>
      <Trace level="3" type="T">FL_DUMMY =</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T">ELEMPOS = 0008</Trace>
      <Trace level="3" type="T">PLSRVID = PLSRV_CALL_ADAPTER</Trace>
      <Trace level="3" type="T">PLSRVTYPE = =SWITCH=</Trace>
      <Trace level="3" type="T">FL_DUMMY =</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T">ELEMPOS = 0009</Trace>
      <Trace level="3" type="T">PLSRVID = PLSRV_MAPPING_RESPONSE</Trace>
      <Trace level="3" type="T">PLSRVTYPE =</Trace>
      <Trace level="3" type="T">FL_DUMMY =</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T" />
      <Trace level="1" type="Timestamp">2008-07-18T14:19:08Z CET Begin of pipeline processing PLSRVID = CENTRAL</Trace>
    - <Trace level="1" type="B" name="PLSRV_RECEIVER_DETERMINATION">
      <Trace level="1" type="Timestamp">2008-07-18T14:19:08Z CET Start of pipeline service processing PLSRVID= PLSRV_RECEIVER_DETERMINATION</Trace>
    - <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV">
      <Trace level="3" type="T">Calling pipeline service: PLSRV_RECEIVER_DETERMINATION</Trace>
      <Trace level="3" type="T">Reading Pipeline-Service specification...</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T">Pipeline service specification (table SXMSPLSRV)</Trace>
      <Trace level="3" type="T">PLSRVID = PLSRV_RECEIVER_DETERMINATION</Trace>
      <Trace level="3" type="T">PLSRVTYPE =</Trace>
      <Trace level="3" type="T">ADRESSMOD = LOCAL</Trace>
      <Trace level="3" type="T">P_CLASS = CL_RD_PLSRV</Trace>
      <Trace level="3" type="T">P_IFNAME = IF_XMS_PLSRV</Trace>
      <Trace level="3" type="T">P_METHOD = ENTER_PLSRV</Trace>
      <Trace level="3" type="T">FL_LOG =</Trace>
      <Trace level="3" type="T">FL_DUMMY = 0</Trace>
      <Trace level="3" type="T" />
    - <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL">
    - <Trace level="1" type="B" name="CL_RD_PLSRV-ENTER_PLSRV">
      <Trace level="1" type="T">R E C E I V E R - D E T E R M I N A T I O N</Trace>
      <Trace level="1" type="T">Cache Content is up to date</Trace>
      <Trace level="2" type="T">Start without given receiver</Trace>
      <Trace level="2" type="T">Classic Receiver Determination via Rules.</Trace>
      <Trace level="2" type="T">Check conditions for rule line no. 1</Trace>
      <Trace level="2" type="T">...valid Receiver w/o Condition: - BS_AIMS</Trace>
      <Trace level="2" type="T">No Receiver found behaviour: 0</Trace>
      <Trace level="2" type="T">Number of Receivers:1</Trace>
      </Trace>
      </Trace>
      </Trace>
      <Trace level="1" type="Timestamp">2008-07-18T14:19:08Z CET End of pipeline service processing PLSRVID= PLSRV_RECEIVER_DETERMINATION</Trace>
      </Trace>
    - <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_LOG_TO_PERSIST">
      <Trace level="3" type="T">Persisting message after plsrv call</Trace>
      <Trace level="3" type="T">Message-Version = 001</Trace>
      <Trace level="3" type="T">Message version 001</Trace>
      <Trace level="3" type="T">Pipeline CENTRAL</Trace>
      </Trace>
    - <Trace level="1" type="B" name="PLSRV_INTERFACE_DETERMINATION">
      <Trace level="1" type="Timestamp">2008-07-18T14:19:11Z CET Start of pipeline service processing PLSRVID= PLSRV_INTERFACE_DETERMINATION</Trace>
    - <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV">
      <Trace level="3" type="T">Calling pipeline service: PLSRV_INTERFACE_DETERMINATION</Trace>
      <Trace level="3" type="T">Reading Pipeline-Service specification...</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T">Pipeline service specification (table SXMSPLSRV)</Trace>
      <Trace level="3" type="T">PLSRVID = PLSRV_INTERFACE_DETERMINATION</Trace>
      <Trace level="3" type="T">PLSRVTYPE =</Trace>
      <Trace level="3" type="T">ADRESSMOD = LOCAL</Trace>
      <Trace level="3" type="T">P_CLASS = CL_ID_PLSRV</Trace>
      <Trace level="3" type="T">P_IFNAME = IF_XMS_PLSRV</Trace>
      <Trace level="3" type="T">P_METHOD = ENTER_PLSRV</Trace>
      <Trace level="3" type="T">FL_LOG =</Trace>
      <Trace level="3" type="T">FL_DUMMY = 0</Trace>
      <Trace level="3" type="T" />
    - <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL">
    - <Trace level="1" type="B" name="CL_ID_PLSRV-ENTER_PLSRV">
      <Trace level="1" type="T">I N T E R F A C E - D E T E R M I N A T I O N</Trace>
      <Trace level="1" type="T">Cache Content is up to date</Trace>
      <Trace level="2" type="T">Check conditions for (Inb: Party Srvc If) BS_AIMS MIIA_US139_EmployeeData</Trace>
      <Trace level="2" type="T">...valid InbIf without Condition: MIIA_US139_EmployeeData</Trace>
      <Trace level="2" type="T">Number of receiving Interfaces:1</Trace>
      </Trace>
      </Trace>
      </Trace>
      <Trace level="1" type="Timestamp">2008-07-18T14:19:11Z CET End of pipeline service processing PLSRVID= PLSRV_INTERFACE_DETERMINATION</Trace>
      </Trace>
    - <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_LOG_TO_PERSIST">
      <Trace level="3" type="T">Persisting message after plsrv call</Trace>
      <Trace level="3" type="T">Message-Version = 002</Trace>
      <Trace level="3" type="T">Message version 002</Trace>
      <Trace level="3" type="T">Pipeline CENTRAL</Trace>
      </Trace>
      <Trace level="1" type="B" name="PLSRV_RECEIVER_MESSAGE_SPLIT" />
    - <!--  ************************************
      -->
      <Trace level="1" type="Timestamp">2008-07-18T14:19:14Z CET Start of pipeline service processing PLSRVID= PLSRV_RECEIVER_MESSAGE_SPLIT</Trace>
    - <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV">
      <Trace level="3" type="T">Calling pipeline service: PLSRV_RECEIVER_MESSAGE_SPLIT</Trace>
      <Trace level="3" type="T">Reading Pipeline-Service specification...</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T">Pipeline service specification (table SXMSPLSRV)</Trace>
      <Trace level="3" type="T">PLSRVID = PLSRV_RECEIVER_MESSAGE_SPLIT</Trace>
      <Trace level="3" type="T">PLSRVTYPE =</Trace>
      <Trace level="3" type="T">ADRESSMOD = LOCAL</Trace>
      <Trace level="3" type="T">P_CLASS = CL_XMS_PLSRV_RECEIVER_SPLIT</Trace>
      <Trace level="3" type="T">P_IFNAME = IF_XMS_PLSRV</Trace>
      <Trace level="3" type="T">P_METHOD = ENTER_PLSRV</Trace>
      <Trace level="3" type="T">FL_LOG =</Trace>
      <Trace level="3" type="T">FL_DUMMY = 0</Trace>
      <Trace level="3" type="T" />
    - <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL">
      <Trace level="1" type="B" name="CL_XMS_PLSRV_RECEIVER_SPLIT-ENTER_PLSRV" />
    - <!--  ************************************
      -->
      <Trace level="3" type="T">Case handling for different plsrv_ids PLSRV_RECEIVER_MESSAGE_SPLIT</Trace>
      <Trace level="2" type="T">got property produced by receiver determination</Trace>
      <Trace level="1" type="T">number of receivers: 1</Trace>
      <Trace level="1" type="T">Single-receiver split case</Trace>
      <Trace level="1" type="T">Post-split internal queue name = XBTM0000</Trace>
      <Trace level="1" type="T">----
    </Trace>
      <Trace level="1" type="T">Persisting single message for post-split handling</Trace>
      <Trace level="1" type="T" />
      <Trace level="1" type="T">Going to persist message + call qRFC now...</Trace>
      <Trace level="1" type="T">NOTE: The following trace entries are always lacking</Trace>
      <Trace level="1" type="T">- Exit WRITE_MESSAGE_TO_PERSIST</Trace>
      <Trace level="1" type="T">Async barrier reached. Bye-bye !</Trace>
      <Trace level="1" type="T">----
    </Trace>
      <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_TO_PERSIST" />
    - <!--  ************************************
      -->
      <Trace level="3" type="T">Persisting message Status = 012</Trace>
      <Trace level="3" type="T">Message version 003</Trace>
      <Trace level="3" type="T">Pipeline CENTRAL</Trace>
    - <Trace level="1" type="B" name="CL_XMS_MAIN-PERSIST_READ_MESSAGE">
      <Trace level="3" type="T">Trace object available again now. OK.</Trace>
      <Trace level="3" type="T">Message was read from persist layer. OK.</Trace>
      <Trace level="3" type="T">Message properties in XMB object were setup. OK.</Trace>
      <Trace level="3" type="ToDo">Make sure we catch exceptions in persist read</Trace>
      <Trace level="3" type="ToDo">Tracing obj. not avail. before return of CL_XMS_MAIN-PERSIST_READ_MESSAGE</Trace>
      </Trace>
      <Trace level="1" type="T">Note: the following trace entry is written delayed (after read from persist)</Trace>
      <Trace level="1" type="B" name="SXMS_ASYNC_EXEC" />
    - <!--  ************************************
      -->
      <Trace level="3" type="T">message version successfully read from persist version= 004</Trace>
      <Trace level="2" type="T">Increment log sequence to 005</Trace>
      <Trace level="1" type="T">----
    </Trace>
      <Trace level="1" type="T">Starting async processing with pipeline CENTRAL</Trace>
      <Trace level="3" type="T">system-ID = QXH</Trace>
      <Trace level="3" type="T">client = 220</Trace>
      <Trace level="3" type="T">language = E</Trace>
      <Trace level="3" type="T">user = PISUPER</Trace>
      <Trace level="1" type="Timestamp">2008-07-18T14:19:20Z CET</Trace>
      <Trace level="1" type="T">----
    </Trace>
      <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PIPELINE_SYNC" />
    - <!--  ************************************
      -->
      <Trace level="1" type="T">Get definition of external pipeline CENTRAL</Trace>
    - <Trace level="1" type="B" name="CL_XMS_MAIN-LOOKUP_INTERNAL_PL_ID">
      <Trace level="3" type="T">External PLID = CENTRAL</Trace>
      <Trace level="3" type="T">Internal PLID = SAP_CENTRAL</Trace>
      </Trace>
      <Trace level="1" type="T">Corresponding internal pipeline SAP_CENTRAL</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T">Pipeline attributes</Trace>
      <Trace level="3" type="T">PID = SAP_CENTRAL</Trace>
      <Trace level="3" type="T">ENABLE = 1</Trace>
      <Trace level="3" type="T">TRACELEVEL = 0</Trace>
      <Trace level="3" type="T">EXEMODE = A</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T" />
      <Trace level="3" type="T">Pipeline elements</Trace>
      <Trace level="3" type="T">ELEMPOS = 0001</Trace>
      <Trace level="3" type="T">PLSRVID = PLSRV_RECEIVER_DETERMINATION</Trace>
      <Trace level="3" type="T">PLSRVTYPE =</Trace>
      <Trace level="3" type="T">FL_DUMMY = 0</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T">ELEMPOS = 0002</Trace>
      <Trace level="3" type="T">PLSRVID = PLSRV_INTERFACE_DETERMINATION</Trace>
      <Trace level="3" type="T">PLSRVTYPE =</Trace>
      <Trace level="3" type="T">FL_DUMMY =</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T">ELEMPOS = 0003</Trace>
      <Trace level="3" type="T">PLSRVID = PLSRV_RECEIVER_MESSAGE_SPLIT</Trace>
      <Trace level="3" type="T">PLSRVTYPE =</Trace>
      <Trace level="3" type="T">FL_DUMMY =</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T">ELEMPOS = 0004</Trace>
      <Trace level="3" type="T">PLSRVID = PLSRV_MAPPING_REQUEST</Trace>
      <Trace level="3" type="T">PLSRVTYPE =</Trace>
      <Trace level="3" type="T">FL_DUMMY =</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T">ELEMPOS = 0007</Trace>
      <Trace level="3" type="T">PLSRVID = PLSRV_OUTBOUND_BINDING</Trace>
      <Trace level="3" type="T">PLSRVTYPE =</Trace>
      <Trace level="3" type="T">FL_DUMMY =</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T">ELEMPOS = 0008</Trace>
      <Trace level="3" type="T">PLSRVID = PLSRV_CALL_ADAPTER</Trace>
      <Trace level="3" type="T">PLSRVTYPE = =SWITCH=</Trace>
      <Trace level="3" type="T">FL_DUMMY =</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T">ELEMPOS = 0009</Trace>
      <Trace level="3" type="T">PLSRVID = PLSRV_MAPPING_RESPONSE</Trace>
      <Trace level="3" type="T">PLSRVTYPE =</Trace>
      <Trace level="3" type="T">FL_DUMMY =</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T" />
      <Trace level="1" type="Timestamp">2008-07-18T14:19:20Z CET Begin of pipeline processing PLSRVID = CENTRAL</Trace>
      <Trace level="1" type="T">Start with pipeline element PLEL= 5EC3C53B4BB7B62DE10000000A1148F5</Trace>
    - <Trace level="1" type="B" name="PLSRV_MAPPING_REQUEST">
      <Trace level="1" type="Timestamp">2008-07-18T14:19:20Z CET Start of pipeline service processing PLSRVID= PLSRV_MAPPING_REQUEST</Trace>
    - <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV">
      <Trace level="3" type="T">Calling pipeline service: PLSRV_MAPPING_REQUEST</Trace>
      <Trace level="3" type="T">Reading Pipeline-Service specification...</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T">Pipeline service specification (table SXMSPLSRV)</Trace>
      <Trace level="3" type="T">PLSRVID = PLSRV_MAPPING_REQUEST</Trace>
      <Trace level="3" type="T">PLSRVTYPE =</Trace>
      <Trace level="3" type="T">ADRESSMOD = LOCAL</Trace>
      <Trace level="3" type="T">P_CLASS = CL_MAPPING_XMS_PLSRV3</Trace>
      <Trace level="3" type="T">P_IFNAME = IF_XMS_PLSRV</Trace>
      <Trace level="3" type="T">P_METHOD = ENTER_PLSRV</Trace>
      <Trace level="3" type="T">FL_LOG =</Trace>
      <Trace level="3" type="T">FL_DUMMY = 0</Trace>
      <Trace level="3" type="T" />
    - <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL">
    - <Trace level="1" type="B" name="CL_MAPPING_XMS_PLSRV3-ENTER_PLSRV">
      <Trace level="2" type="T">......attachment XI_Context not found</Trace>
      <Trace level="3" type="T">Mapping already defined in interface determination</Trace>
      <Trace level="3" type="T">Object ID of Interface Mapping 3CCA7AE76D3F33F19F8D7A8DAD494E65</Trace>
      <Trace level="3" type="T">Version ID of Interface Mapping C387A5F00F8B11DCAB84C751AAE12E82</Trace>
      <Trace level="1" type="T">Interface Mapping urn:abbott-com:US139 IM_US139_EmployeeData</Trace>
      <Trace level="3" type="T">Mapping Steps 1 JAVA com/sap/xi/tf/_MM_US139_EmployeeData_</Trace>
      <Trace level="3" type="T">Dynamic Configuration Is Empty</Trace>
      <Trace level="2" type="T">Mode 0</Trace>
      <Trace level="3" type="T">Creating Java mapping com/sap/xi/tf/_MM_US139_EmployeeData_.</Trace>
      <Trace level="3" type="T">Load c387a5f0-0f8b-11dc-ab84-c751aae12e82, urn:abbott-com:US139, -1, com/sap/xi/tf/_MM_US139_EmployeeData_.class.</Trace>
      <Trace level="3" type="T">Search com/sap/xi/tf/_MM_US139_EmployeeData_.class (urn:abbott-com:US139, -1) in swcv c387a5f0-0f8b-11dc-ab84-c751aae12e82.</Trace>
      <Trace level="3" type="T">Loaded class com.sap.xi.tf._MM_US139_EmployeeData_</Trace>
      <Trace level="2" type="T">Call method execute of the application Java mapping com.sap.xi.tf._MM_US139_EmployeeData_</Trace>
      <Trace level="2" type="T">Java mapping com/sap/xi/tf/_MM_US139_EmployeeData_ completed. (executeStep() of com.sap.xi.tf._MM_US139_EmployeeData_</Trace>
      <Trace level="3" type="T">Dynamic Configuration Is Empty</Trace>
      </Trace>
      </Trace>
      </Trace>
      <Trace level="1" type="Timestamp">2008-07-18T14:22:07Z CET End of pipeline service processing PLSRVID= PLSRV_MAPPING_REQUEST</Trace>
      </Trace>
    - <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_LOG_TO_PERSIST">
      <Trace level="3" type="T">Persisting message after plsrv call</Trace>
      <Trace level="3" type="T">Message-Version = 005</Trace>
      <Trace level="3" type="T">Message version 005</Trace>
      <Trace level="3" type="T">Pipeline CENTRAL</Trace>
      </Trace>
    - <Trace level="1" type="B" name="PLSRV_OUTBOUND_BINDING">
      <Trace level="1" type="Timestamp">2008-07-18T14:22:12Z CET Start of pipeline service processing PLSRVID= PLSRV_OUTBOUND_BINDING</Trace>
    - <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV">
      <Trace level="3" type="T">Calling pipeline service: PLSRV_OUTBOUND_BINDING</Trace>
      <Trace level="3" type="T">Reading Pipeline-Service specification...</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T">Pipeline service specification (table SXMSPLSRV)</Trace>
      <Trace level="3" type="T">PLSRVID = PLSRV_OUTBOUND_BINDING</Trace>
      <Trace level="3" type="T">PLSRVTYPE =</Trace>
      <Trace level="3" type="T">ADRESSMOD = LOCAL</Trace>
      <Trace level="3" type="T">P_CLASS = CL_XMS_PLSRV_OUTBINDING</Trace>
      <Trace level="3" type="T">P_IFNAME = IF_XMS_PLSRV</Trace>
      <Trace level="3" type="T">P_METHOD = ENTER_PLSRV</Trace>
      <Trace level="3" type="T">FL_LOG =</Trace>
      <Trace level="3" type="T">FL_DUMMY = 0</Trace>
      <Trace level="3" type="T" />
      <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL" />
    - <!--  ************************************
      -->
    - <Trace level="1" type="B" name="CL_XMS_PLSRV_OUTBINDING-ENTER_PLSRV">
      <Trace level="2" type="T">O U T B O U N D - B I N D I N G</Trace>
      <Trace level="2" type="T">Cache Content is up to date</Trace>
      <Trace level="2" type="T">determine OUTBOUND BINDING for:</Trace>
      <Trace level="2" type="T">-QEHCLNT230</Trace>
      <Trace level="2" type="T">-BS_AIMS</Trace>
      <Trace level="2" type="T">urn:abbott-com:US139.MIIA_US139_EmployeeData</Trace>
      <Trace level="2" type="T">Channel found: - BS_AIMS - CC_BS_AIMS_File_Out_09</Trace>
      <Trace level="2" type="T">no header mapping defined</Trace>
      </Trace>
      </Trace>
      </Trace>
      <Trace level="1" type="Timestamp">2008-07-18T14:22:12Z CET End of pipeline service processing PLSRVID= PLSRV_OUTBOUND_BINDING</Trace>
      </Trace>
    - <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_LOG_TO_PERSIST">
      <Trace level="3" type="T">Persisting message after plsrv call</Trace>
      <Trace level="3" type="T">Message-Version = 006</Trace>
      <Trace level="3" type="T">Message version 006</Trace>
      <Trace level="3" type="T">Pipeline CENTRAL</Trace>
      </Trace>
      <Trace level="1" type="B" name="PLSRV_CALL_ADAPTER" />
    - <!--  ************************************
      -->
      <Trace level="1" type="Timestamp">2008-07-18T14:22:18Z CET Start of pipeline service processing PLSRVID= PLSRV_CALL_ADAPTER</Trace>
      <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV" />
    - <!--  ************************************
      -->
      <Trace level="3" type="T">Calling pipeline service: PLSRV_CALL_ADAPTER</Trace>
      <Trace level="3" type="T">Reading Pipeline-Service specification...</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T">Pipeline service specification (table SXMSPLSRV)</Trace>
      <Trace level="3" type="T">PLSRVID = PLSRV_CALL_ADAPTER</Trace>
      <Trace level="3" type="T">PLSRVTYPE = =SWITCH=</Trace>
      <Trace level="3" type="T">ADRESSMOD = SD</Trace>
      <Trace level="3" type="T">P_CLASS =</Trace>
      <Trace level="3" type="T">P_IFNAME =</Trace>
      <Trace level="3" type="T">P_METHOD =</Trace>
      <Trace level="3" type="T">FL_LOG =</Trace>
      <Trace level="3" type="T">FL_DUMMY = 0</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T">Unknown channel type: File</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T">Pipeline service specification (table SXMSPLSRV)</Trace>
      <Trace level="3" type="T">PLSRVID = PLSRV_CALL_ADAPTER</Trace>
      <Trace level="3" type="T">PLSRVTYPE = AENGINE</Trace>
      <Trace level="3" type="T">ADRESSMOD = SD</Trace>
      <Trace level="3" type="T">P_CLASS = CL_XMS_PLSRV_IE_ADAPTER</Trace>
      <Trace level="3" type="T">P_IFNAME = IF_XMS_PLSRV</Trace>
      <Trace level="3" type="T">P_METHOD = ENTER_PLSRV</Trace>
      <Trace level="3" type="T">FL_LOG =</Trace>
      <Trace level="3" type="T">FL_DUMMY = 0</Trace>
      <Trace level="3" type="T" />
      <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL" />
    - <!--  ************************************
      -->
    - <Trace level="1" type="B" name="CL_XMS_PLSRV_IE_ADAPTER-ENTER_PLSRV">
      <Trace level="3" type="T">Channel for adapter engine: File</Trace>
    - <Trace level="1" type="B" name="CL_XMS_PLSRV_CALL_XMB-CALL_XMS_HTTP">
      <Trace level="2" type="T">old values in cache (no lock found) - start reading from SLD</Trace>
      <Trace level="1" type="T">error reading SAP_XIAdapterFramework from SLD</Trace>
      <Trace level="2" type="T">Adapter Framework(s) found</Trace>
      <Trace level="2" type="T">Service Port(s) found - take first one</Trace>
      <Trace level="2" type="T">URL found</Trace>
      <Trace level="2" type="T">Get logon data for adapter engine (SAI_AE_DETAILS_GET):</Trace>
      <Trace level="3" type="T">URL = http://sapqxh:52000/MessagingSystem/receive/AFW/XI</Trace>
      <Trace level="3" type="T">User = PIISUSER</Trace>
      <Trace level="3" type="T">Cached =</Trace>
      <Trace level="3" type="T">Creating HTTP-client</Trace>
      <Trace level="3" type="T">HTTP-client: creation finished</Trace>
      <Trace level="3" type="T">Security: Basic authentication</Trace>
      <Trace level="3" type="T">Serializing message object...</Trace>
      <Trace level="3" type="T">HTTP-client: sending http-request...</Trace>
      <Trace level="3" type="T">HTTP-client: request sent</Trace>
      <Trace level="3" type="T">HTTP-client: Receiving http-response...</Trace>
      <Trace level="3" type="T">HTTP-client: response received</Trace>
      <Trace level="3" type="T">HTTP-client: checking status code...</Trace>
      <Trace level="3" type="T">HTTP-client: status code = 200</Trace>
      <Trace level="3" type="T">Deserializing message object...</Trace>
      <Trace level="1" type="T">Empty response received!</Trace>
      <Trace level="3" type="System_Error">HTTP-client: error response=</Trace>
      <Trace level="3" type="T">HTTP-client: closing...</Trace>
      </Trace>
      </Trace>
      </Trace>
    - <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_LOG_TO_PERSIST">
      <Trace level="3" type="T">Persisting message after plsrv call</Trace>
      <Trace level="3" type="T">Message-Version = 007</Trace>
      <Trace level="3" type="T">Message version 007</Trace>
      <Trace level="3" type="T">Pipeline CENTRAL</Trace>
      </Trace>
      <Trace level="3" type="System_Error">Error exception return from pipeline processing!</Trace>
      <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_TO_PERSIST" />
    - <!--  ************************************
      -->
      <Trace level="3" type="T">Persisting message Status = 014</Trace>
      <Trace level="3" type="T">Message version 008</Trace>
      <Trace level="3" type="T">Pipeline CENTRAL</Trace>
      </SAP:Trace>

  • URGENT ::: How to add UserName Token to SOAP Message Header.

    Hi,
    I created a webservice client using CLIENTGEN utility of weblogic from the WSDL file. When I am trying to call a webservice which is hosted on TOMCAT server, I am getting the following exception::
    5/12/2008 06:09:02 com.sun.xml.wss.impl.filter.DumpFilter process
    INFO: ==== Sending Message Start ====
    <?xml version="1.0" encoding="UTF-8"?>
    <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-
    instance" xmlns:enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns0="http://settlementService.au.db.com/types">
    <env:Body>
    <env:Fault>
    <faultcode xmlns:ans1="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">ans1:FailedAuthentication</faultcode>
    <faultstring>Message does not conform to configured policy [ AuthenticationTokenPolicy  ]: No Security Header found</faultstring>
    </env:Fault>
    </env:Body>
    </env:Envelope>
    ==== Sending Message End ====
    The webservice ic configured as secured webservice, there is some certificate file which was provided to me from client. Useing java KEYTOOL command I have created the keystore from that certificate and configure it in the weblogic server console.
    Issue is the SOAP message header is blank I need to add the USERNAME TOken profile to this header, in order to access this webservice. The current CLIENT code snippet is shown below:
              try{
                   String WSDLUrl = "https://shappzu2.au.db.com:8297/settlementService-ws/settlementService?WSDL";
                   String wsUserName = "tracer-us";
                   String wsPassword = "R0na!do#11";
                   InputStream[] policies = new InputStream[]{Client.class.getResourceAsStream("/wl-unt-policy.xml")};
                   SettlementService_Impl settlementServiceObj = new SettlementService_Impl(WSDLUrl);
                   SettlementServiceFacade port = settlementServiceObj.getSettlementServiceFacadePort(policies, policies);               
                   List credProviders = new ArrayList();
                   CredentialProvider cp = new ClientUNTCredentialProvider(wsUserName.getBytes(), wsPassword.getBytes());
              credProviders.add(cp);
              Stub stub = (Stub)port;
              // Set stub property to point to list of credential providers
              stub._setProperty(WSSecurityContext.CREDENTIAL_PROVIDER_LIST, credProviders);
                   if(sharesXMLString != null && sharesXMLString.length() > 0) {
                        port.loadEquityTrade(sharesXMLString);
              }catch(Exception e){
                   //throw new SystemException(e.getMessage());
                   e.printStackTrace();
    Can any one help me in this?

    1) Use something like TCPmon https://tcpmon.dev.java.net/ or verbose logging to see the actual message content on the wire that the client is sending
    2) Inside the WLS samples there is a UNT sample in the INSTALL_DIR/wlserver_10.0(or equivalent)/samples/server/examples/src/examples/webservices/security_jws
    If that works correctly and puts the UNT in the header, then I would compare that code with yours.

  • XML Declaration missing in  SOAP message

    Hi,
    We have an interface that calls a webservice to create a Product in a 3rd Party System.
    Inbound Message : Material IDOC
    Outbound Message: Product XML for a Create method of a WebService.
    Outbound Adapter: SOAP Adapter
    Issue:
    Product XML is received by the 3rd Party system via the SOAP adapter but the XML declaration tag <? XML Version="1.0" encoding="UTF-8" ?> is missing in the received document.
    Has anyone come across such a situation in the group?
    I would appreciate your valuable inputs and suggestions.
    Thanks Guys,
    Sathia.

    Hi
    Did u solve this problem, I have a similar issue ....

  • SOAP Message header

    Hi Experts,
    We implemented a scenario IDoc to SOAP ( using the Client WSDL), and the new requirment is to send some custom fileds( for routing) in the SOAP header.
    I know that if we use " do not use SOAP envelope" in the receiver adapter, we can create using the XSLT map. But I am not sure how to do the XSLT map and use in the interface mapping.
    Can you please suggest how to achieve the above requirement.
    Thanks in advance,
    MK

    For routing at third party, they requested us to send some routing information in the SOAP header.
    (like source & Destination details), which exists in the IDoc control data.
    To include some details in the Header of the message you can use the ASMA attributes (Dynamic Configuration).....and then in the receiver SOAP channel you can make use of the Keep Headers option...
    Check these links:
    http://help.sap.com/saphelp_nw70/helpdata/en/29/5bd93f130f9215e10000000a155106/content.htm
    http://help.sap.com/saphelp_nw70/helpdata/en/43/0a7d1be4e622f3e10000000a1553f7/content.htm
    Check if my answer is as per your req.
    Regards,
    Abhishek.

  • Item missing: envelope - proxy message

    Dear all,
    My message from xi to a proxy on a bw system will not be delivered. In the RWB it says: HTTP_RESP_STATUS_CODE_NOT_OK
    And the message in SXMB_MONI is:
    - <!--  Call Adapter
      -->
    - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
      <SAP:Category>XIProtocol</SAP:Category>
      <SAP:Code area="PARSER">ITEM_MISSING</SAP:Code>
      <SAP:P1>Envelope</SAP:P1>
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack><b>XML tag Envelope missing in SOAP message header</b> (SAP XI Extension)</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>
    Any suggestions?
    Kind regards.

    > what is your input message? i mean how are you
    > sending it? i guess the SOAP message is not
    > constructed properly.
    It's a message created based on the generated function module in BW. This message interface was used to create the proxy. Now I am sending it to BW but then this happens...

  • JWSDP1.4 Access the SOAP Message in an RPC server

    hi i am new to web services... i have created RPC using JSWDP 1.4.
    I used the wscompile and wsdeploy tool to create the WSDL and server side of the web service.
    but because of a requirement change now i have to get the SOAP message Header and verify the client details (log who is using my service). How can i access the SOAP header??

    Make a backup then edit this file,
    TomcatRoot: ./shared/classes/com/tarantella/tta/webservices/client/apis/Resources.properties
    Edit all locations to point to https://localhost:443

  • OWSM SAML Verify step problem: Missing Security Header in SOAP message

    I'm having a problem with SAML steps. From gateway log:
    2008-09-17 13:21:32,987 INFO [HTTPThreadGroup-58] saml.InsertSAMLSVStep - User attributes map set to generate the attribute assertions: null
    2008-09-17 13:21:33,034 INFO [HTTPThreadGroup-60] saml.SAMLProcessor - Assertion Major Version :1 , Minor Version :1
    2008-09-17 13:21:33,034 WARNING [HTTPThreadGroup-60] saml.SAMLProcessor - SAML Assertion verification error: An invalid token was provided
    2008-09-17 13:21:33,034 WARNING [HTTPThreadGroup-60] saml.VerifySAMLStep - SAML Token verification failed:
    2008-09-17 13:21:33,096 SEVERE [HTTPThreadGroup-58] wssecurity.OSDTWSSecurity - Missing Security Header in SOAP message
    2008-09-17 13:21:33,096 WARNING [HTTPThreadGroup-58] wssecurity.SecurityBaseStep - Failure while applying XML Security
    FAULT CODE: InvalidSecurity FAULT MESSAGE: Missing WS Security header in the SOAP message
    at com.cfluent.policysteps.security.wssecurity.OSDTWSSecurity.decryptVerify(OSDTWSSecurity.java:369)
    at com.cfluent.policysteps.security.wssecurity.DecryptStep.performXmlSecurity(DecryptStep.java:131)
    at com.cfluent.policysteps.security.wssecurity.SecurityBaseStep.execute(SecurityBaseStep.java:238)
    at com.cfluent.pipelineengine.container.DefaultPipeline.executeStep(DefaultPipeline.java:124)
    but the wsse:Security header with SAML assertion IS confirmed in the incoming message log. Anybody seen this issue?

    Below is the log of the incoming message just prior to the failing SAML Verify step:
    <?xml version="1.0" encoding="UTF-8" ?>
    - <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns0="http://exception.common.periop.gehc.com" xmlns:ns1="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:ns2="http://www.patient.patientmanager.periop.gehc.com/service/" xmlns:ns3="http://entity.common.periop.gehc.com" xmlns:ns4="http://entity.patient.patientmanager.periop.gehc.com" xmlns:ns5="http://entity.allergy.patientmanager.periop.gehc.com" xmlns:ns6="http://pdo.domain.customizer.periop.gehc.com" xmlns:ns7="http://entity.cases.scheduler.periop.gehc.com" xmlns:ns8="http://entity.insurance.patientmanager.periop.gehc.com">
    - <env:Header>
    - <ns1:Security>
    - <saml:Assertion MajorVersion="1" MinorVersion="1" AssertionID="158RBY2QvCFPiTqdXYWh9A22" IssueInstant="2008-09-17T19:58:43Z" Issuer="GE" xmlns="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion">
    <saml:Conditions NotBefore="2008-09-17T19:58:13Z" NotOnOrAfter="2008-09-17T19:59:43Z" />
    - <saml:AuthenticationStatement AuthenticationInstant="2008-09-17T19:58:43Z" AuthenticationMethod="urn:oasis:names:tc:SAML:1.0:am:password">
    - <saml:Subject>
    <saml:NameIdentifier NameQualifier="www.ge.com" Format="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified">gowri</saml:NameIdentifier>
    - <saml:SubjectConfirmation>
    <saml:ConfirmationMethod>urn:oasis:names:tc:SAML:1.0:cm:sender-vouches</saml:ConfirmationMethod>
    </saml:SubjectConfirmation>
    </saml:Subject>
    </saml:AuthenticationStatement>
    </saml:Assertion>
    </ns1:Security>
    </env:Header>
    - <env:Body>
    - <ns2:getPatient>
    <ns2:patientId>137115</ns2:patientId>
    </ns2:getPatient>
    </env:Body>
    </env:Envelope>

  • ABAP runtime error in sxmb_moni when SOAP message has header with some tags

    Hi!!!
    I have a problem with sxmb_moni transaction.
    If I double-click on a successfully processed
    message, then this monitor can't show me
    the message details but fails with the following error:
    <COPY_AND_PASTE_FROM_SCREEN>
    Runtime errors         OBJECTS_OBJREF_NOT_ASSIGNED_NO                              
    Exception              CX_SY_REF_IS_INITIAL                                        
    Occurred on     02.03.2005 at 16:44:21  
    Access with 'ZERO' object reference not possible.                                                
    What happened?                                                            
    Error in ABAP application program.                                                 
    The current ABAP program "CL_XMS_PROP_STRING============CP " had to be             
    terminated because one of the                                                     
    statements could not be executed.                                                  
    This is probably due to an error in the ABAP program.
    </COPY_AND_PASTE_FROM_SCREEN>
    This situation takes place only when I want
    to look at a SOAP message which was sent to XI
    from .Net platform or was sent to
    .Net platform from XI (via SOAP adapter).
    In all other cases sxmb_moni works fine.
    I know that the problem is connected with some tags from Header record of SOAP message:
          <soap:Header>
             <wsa:Action>http://aaa.bbb.ccc/MessageResponse</wsa:Action>
             <wsa:MessageID>uuid:1838f870-1688-4cfe-8c4f-afe14d98c515</wsa:MessageID>
             <wsa:RelatesTo>uuid:308b950f-8cff-4b63-9861-93b041825f9d</wsa:RelatesTo>
             <wsa:To>http://schemas.xmlsoap.org/ws/2004/03/addressing/role/anonymous</wsa:To>
             <wsse:Security>
                <wsu:Timestamp wsu:Id="Timestamp-389847df-8760-4d57-9777-6ce159d85205">
                   <wsu:Created>2005-03-02T08:54:29Z</wsu:Created>
                   <wsu:Expires>2005-03-02T08:59:29Z</wsu:Expires>
                </wsu:Timestamp>
             </wsse:Security>
          </soap:Header>
    If I take a SOAP message I have problem with, and
    I remove all tags from this Header (or remove
    the whole Header) and send it from any XML editor
    that can send SOAP messages then sxmb_moni hasn't
    any problems with showing me details of a such message.
    Any hints how to force a .Net platform not to send
    a such header or how to force sxmb_moni transaction
    not to fail if a such header occurs?
    Regards,
    Andrzej Filusz

    Hi Santhosh
    1.Check your authorization settings in XI and R/3. Whether the user has sufficient rights to execute the Function Module etc. This is the most common reason for this error.
    2.If the XI system was brought online even before the R/3 system then re-activate the communication channels from the Integration directory.
    Cheers..
    Vasu
    <u><i><b>** Reward Points if found useful **</b></i></u>

  • Issue in receiving custom header in response SOAP message

    Hi,
    I have created a simple BPEL process with custom headers in request and response message.
    I tried to send SOAP message through SOAPUI tool. Service is getting instantiated, able to access the request header and able to send response message. But only body is send as response message. Header is not sent in the response message.
    Also tried to invoke the above service through another BPEL process. I could able to send the header through request but not able to receive the header in response message.
    Pls. throw some light on this..
    Regards
    Jude.

    Hi,
    Input request is working as you mentioned but the output custom headers are not working. When I use bpelx:outputHeaderVariable="varOutManifest" I am getting exception while running the interface. So I used bpelx:outputHeaderVariables="varOutManifest" but I am not getting back the custom header from the partner service to the variable.
    Any hint.
    receive:
    bpelx:headerVariable="varManifest varSecurity"
    reply:
    bpelx:inputHeaderVariable="varOutManifest"
    Invoke:
    bpelx:outputHeaderVariables="varOutManifest"
    bpelx:inputHeaderVariable="varManifest varSecurity"
    Is anything wrong?
    I am on 10.1.3.3.1 MLR # 14. I am getting following exception when I use bpelx:outputHeaderVariable.
    <2009-03-06 17:33:36,840> <ERROR> <default.collaxa.cube> <BaseCubeSessionBean::logError> Error while invoking bean "delivery": [com.oracle.bpel.client.ServerException: 1] -> [java.lang.ArrayIndexOutOfBoundsException: 1]
    java.lang.ArrayIndexOutOfBoundsException: 1
         at com.collaxa.cube.ejb.impl.DeliveryBean.request(DeliveryBean.java:109)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.JAASInterceptor$1.run(JAASInterceptor.java:31)
         at com.evermind.server.ThreadState.runAs(ThreadState.java:646)
         at com.evermind.server.ejb.interceptor.system.JAASInterceptor.invoke(JAASInterceptor.java:34)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.TxRequiredInterceptor.invoke(TxRequiredInterceptor.java:50)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
         at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
         at DeliveryBean_RemoteProxy_4bin6i8.request(Unknown Source)
         at com.collaxa.cube.ws.soap.oc4j.SOAPRequestProvider.processNormalOperation(SOAPRequestProvider.java:451)
         at com.collaxa.cube.ws.soap.oc4j.SOAPRequestProvider.processBPELMessage(SOAPRequestProvider.java:274)
         at com.collaxa.cube.ws.soap.oc4j.SOAPRequestProvider.processMessage(SOAPRequestProvider.java:120)
         at oracle.j2ee.ws.server.provider.ProviderProcessor.doEndpointProcessing(ProviderProcessor.java:956)
         at oracle.j2ee.ws.server.WebServiceProcessor.invokeEndpointImplementation(WebServiceProcessor.java:349)
         at oracle.j2ee.ws.server.provider.ProviderProcessor.doRequestProcessing(ProviderProcessor.java:466)
         at oracle.j2ee.ws.server.WebServiceProcessor.processRequest(WebServiceProcessor.java:114)
         at oracle.j2ee.ws.server.WebServiceProcessor.doService(WebServiceProcessor.java:96)
         at oracle.j2ee.ws.server.WebServiceServlet.doPost(WebServiceServlet.java:177)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
         at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
         at oracle.security.jazn.oc4j.JAZNFilter$1.run(JAZNFilter.java:396)
         at java.security.AccessController.doPrivileged(Native Method)
         at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
         at oracle.security.jazn.oc4j.JAZNFilter.doFilter(JAZNFilter.java:410)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:623)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
         at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
         at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:221)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:122)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:111)
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
         at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
         at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
         at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
         at java.lang.Thread.run(Thread.java:595)
    Caused by: java.lang.ArrayIndexOutOfBoundsException: 1
         at com.collaxa.cube.engine.ext.wmp.BPELInvokeWMP.__callback(BPELInvokeWMP.java:626)
         at com.collaxa.cube.engine.ext.wmp.BPELInvokeWMP.__executeStatements(BPELInvokeWMP.java:436)
         at com.collaxa.cube.engine.ext.wmp.BPELActivityWMP.perform(BPELActivityWMP.java:195)
         at com.collaxa.cube.engine.CubeEngine.performActivity(CubeEngine.java:3703)
         at com.collaxa.cube.engine.CubeEngine.handleWorkItem(CubeEngine.java:1652)
         at com.collaxa.cube.engine.dispatch.message.instance.PerformMessageHandler.handleLocal(PerformMessageHandler.java:75)
         at com.collaxa.cube.engine.dispatch.DispatchHelper.handleLocalMessage(DispatchHelper.java:184)
         at com.collaxa.cube.engine.dispatch.DispatchHelper.sendMemory(DispatchHelper.java:281)
         at com.collaxa.cube.engine.CubeEngine.endRequest(CubeEngine.java:5689)
         at com.collaxa.cube.engine.CubeEngine.createAndInvoke(CubeEngine.java:1082)
         at com.collaxa.cube.engine.ejb.impl.CubeEngineBean.createAndInvoke(CubeEngineBean.java:132)
         at com.collaxa.cube.engine.ejb.impl.CubeEngineBean.syncCreateAndInvoke(CubeEngineBean.java:161)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.JAASInterceptor$1.run(JAASInterceptor.java:31)
         at com.evermind.server.ThreadState.runAs(ThreadState.java:646)
         at com.evermind.server.ejb.interceptor.system.JAASInterceptor.invoke(JAASInterceptor.java:34)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.TxRequiresNewInterceptor.invoke(TxRequiresNewInterceptor.java:52)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
         at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
         at CubeEngineBean_LocalProxy_4bin6i8.syncCreateAndInvoke(Unknown Source)
         at com.collaxa.cube.engine.delivery.DeliveryHandler.initialRequestAnyType(DeliveryHandler.java:515)
         at com.collaxa.cube.engine.delivery.DeliveryHandler.initialRequest(DeliveryHandler.java:457)
         at com.collaxa.cube.engine.delivery.DeliveryHandler.request(DeliveryHandler.java:131)
         at com.collaxa.cube.ejb.impl.DeliveryBean.request(DeliveryBean.java:95)
         ... 48 more
    Thanks,
    Arul
    Edited by: user599098 on Mar 6, 2009 2:42 PM

  • Http Header for a SOAP message using SAAJ.

    Hello java community,
    I need to set the 'SOAPAction' field in the HTTP Header of a soap message. I am using SAAJ to build the message.
    Does anyone know how to do this?
    Help is greatly appreciated as always.

    You have to put a Handler in front of your WebService to intercept it.

  • How to send a signed SOAP message with additional HTTP Header fields

    Our Partner's integration requirements are that we send them asynchronous SOAP messages, that are digitally signed, and whose HTTP headers contains 5 or 6 additional header fields, of which 3 or 4 will need to be dynamically set during the message mapping.  I believe we can use the HTTP adapter for adding new fields to the HTTP header, but don't believe it supports signing.  I believe that the SOAP adapter supports signing, but I'm not clear on how to use it to add fields to the HTTP header.  What is the most straight-forward way to achieve both the signing of the message and the addition of the HTTP header values?
    Thanks,
    Kurt

    >>>What is the most straight-forward way to achieve both the signing of the message and the addition of the HTTP header values?
    Use Java mapping for both.
    1) Signing the message
    You can digitally sign the soap message using many standard api like WSS4j? or  refer Java XML signature API which comes in Jdk1.6.
    Refer these links
    WSS4J  -  http://ws.apache.org/wss4j/axis.html
    Java XML signature : http://java.sun.com/developer/technicalArticles/xml/dig_signature_api/
    2) >>whose HTTP headers contains 5 or 6 additional header fields, of which 3 or 4 will need to be dynamically set during the message mapping
    Use Dynamic configuration API to set the additional header fields during message mapping.

  • WSRP wsse element missing in SOAP Header

    Hi
    I have a wlp 9.2.3 producer and consumer, i did set up the SAML security between these 2 domains and it was working fine. Now suddenly wsse:security section is missing in the soap headers which are being passed from consumer to producer. What could be the reason for the missing wsse ... how to add them back
    soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    *<Header xmlns="http://schemas.xmlsoap.org/soap/envelope/"/>*
    <soapenv:Body>
    <urn:initCookie xmlns:urn="urn:oasis:names:tc:wsrp:v1:types">
    <urn:registrationContext>
    <urn:registrationHandle>24002</urn:registrationHandle>
    </urn:registrationContext>
    </urn:initCookie>
    </soapenv:Body>
    </soapenv:Envelope
    Thanks
    Jesh

    The most likely cause is the user is not logged in.
    Other issues include misconfiguration of the WSDL policy or the SAML Credential Mapper in consumer's security realm.
    Hope this helps,
    Nate

Maybe you are looking for

  • Cisco ASA 5512 two interfaces

    i have an Cisco ASA 5512 working as Firewall We configure one ASA interface connecting to Cisco router 1700 with leasd line internet service without any problem. Now we have an extra internet connection ADSL 2MB connected to another ASA interface   I

  • Do I build my site in Edge or Muse?

    I am new at this and don't know anything about writing code. I am using PhotoShop CS6, Edge, and Muse to build a website. I have built a 60 second, interactive home page but I don't know how to make the navigation buttons work for other pages that I

  • Ripped off - Bought Lightroom and Creative Cloud at same time.

    I signed up for Creative Cloud when it came out and bought Lightroom around the same time because Creative Cloud didnt include Lightroom. Since that it does, I feel ripped off that I bought Lightroom. I can't return the software because its about a w

  • Data not inserted into database from jsf..

    hello.. m developing ma project with 2 separate module-EJB and WEB .in which web module contains JSF managed bean and jsf-jsp pages. my application is running well.bt didn't give output to the database for inserting data. m giving ma simple test appl

  • I can't connect my wifi at home

    I acnT connect to my iPhone at home. How can I fix this?