Hiding SOAP Body in acknowledgement

Hello Experts,
We have a business partner that is having issues consuming the acknowledgment on an Asynchronous SOAP call to PI.  The reply from PI 7.1 SOAP sender adapter is this:
<SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
   <SOAP:Header/>
   <SOAP:Body/>
</SOAP:Envelope>
The presence of the <SOAP:Body/> is causing issues because the WSDL generated from PI does not include the <SOAP:Body/> as a response.
I have tried testing this by selecting the Do Not Use SOAP Envelope check box on the communication channel, but then I am not getting the payload on the request.
Any suggestions would be appreciated.
Thanks!
Tom

It's not the problem with your interface but it's the standard behavior of the soap sender adapter.
To get a better understanding of the issue and work around solution is clearly addressed in the below thread -
http://scn.sap.com/thread/1627368
Further reference :856597 - FAQ: XI 3.0 / PI 7.0/7.1/7.3 SOAP Adapter
Alternate Solution : 1459995 - Soap Sender Adapter HTTP 202 response for asynchronous call

Similar Messages

  • How to add exactly 2 NON XML caracters at the end of a SOAP body

    Hello all I am trying to add two (and only two) extra non xml caracters "AA" at the END of a SOAP body using the JAXWS handlers as so:
    HTTP/1.1 200 OK
    Content-Type: text/xml;charset=UTF-8
    Content-Length: 131
    Content-Length: 131
    Server: Jetty(7.x.y-SNAPSHOT)
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body></SOAP-ENV:Body></SOAP-ENV:Envelope>
    AA
    The problem is that if you try to add them to the SOAP body (see code below) you get a XML Unmarshalling exception. If I add "AA" as a soap attachment I get MORE than 2 caracters after the SOAP body (which I don't want)
    Here is the my SOAPHandler code :
    @Override
    public boolean handleMessage(SOAPMessageContext mc) {
    if (Boolean.TRUE.equals(mc.get(MessageContext.MESSAGE_OUTBOUND_PROPERTY))) {
    try {
    SOAPMessage message = context.getMessage()
    String stringSoapMessage= getMsgAsString(message);
    stringSoapMessage += "ss";
    message.getSOAPPart().setContent((Source) new StreamSource(new ByteArrayInputStream(msg.getBytes())));
    message.saveChanges();
    context.setMessage(message);
    } catch (Exception e1) {
    return true;
    public String getMsgAsString(SOAPMessage message) throws SOAPException {
    String msg = null;
    try {
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    message.writeTo(baos);
    msg = baos.toString();
    } catch (Exception e) {
    e.printStackTrace();
    return msg;
    so my question is this: is there any way to add exactly 2 non xml caracters at the end of the soap body using jaxws handlers ? I have spent several weeks on this so it is not an easy question...
    Thanks,
    Fred.

    Yes I have done it using CFX interceptors. But the runtime dependencies needed were too big for this particular use. I mean having to use these:
    apache/cxf/cxf-bundle/2.6.0/cxf-bundle-2.6.0.jar
    org/apache/neethi/neethi/3.0.2/neethi-3.0.2.jar                    
    wsdl4j/wsdl4j/1.6.2/wsdl4j-1.6.2.jar
    /org/codehaus/woodstox/wstx-asl/3.2.4/wstx-asl-3.2.4.jar
    org/apache/ws/xmlschema/xmlschema-core/2.0.2/xmlschema-core-2.0.2.jar
    org/mortbay/jetty/jetty-util/6.0.2/jetty-util-6.0.2.jar
    org/eclipse/jetty/jetty-util/7.5.4.v20111024/jetty-util-7.5.4.v20111024.jar
    org/apache/geronimo/specs/geronimo-servlet_2.5_spec/1.1.2/geronimo-servlet_2.5_spec-1.1.2.jar
    org/apache/geronimo/specs/geronimo-javamail_1.4_spec/1.7.1/geronimo-javamail_1.4_spec-1.7.1.jar
    org/apache/geronimo/specs/geronimo-servlet_3.0_spec/1.0/geronimo-servlet_3.0_spec-1.0.jar
    org/eclipse/jetty/jetty-http/7.5.4.v20111024/jetty-http-7.5.4.v20111024.jar
    org/eclipse/jetty/jetty-server/7.5.4.v20111024/jetty-server-7.5.4.v20111024.jar
    org/eclipse/jetty/jetty-io/7.5.4.v20111024/jetty-io-7.5.4.v20111024.jar
    org/eclipse/jetty/jetty-continuation/7.5.4.v20111024/jetty-continuation-7.5.4.v20111024.jar
    to add two caracters at the end of a soap message seems like over kill. If this is the only way to do this then i'll do it this way but it just seems like the implementation of the JAXWS API in JDK 6 seems inches away from being able to do this no ?
    Thanks for the replies,
    Fred

  • Missing namespace prefix in the soap body

    Hello
    The soap body that is produced along with soap header for my webservice. I
    am the client talking to a server. The first piece in RED color is what
    weblogic generates to send to the client but does NOT work. The one below
    though works fine which is what I manipulated by hand to send to the
    server. I have no idea why weblogic drops the namespace prefix in the
    BODY.
    -Narahari
    The message is as shown below
    POST /FS HTTP/1.1
    Host: asgappsrv10:6211
    Content-Type: text/xml; charset=utf-8
    Connection: close
    SOAPAction: "ListDomains"
    <?xml version="1.0" encoding="utf-8"?>
    <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <env:Header>
    <n1:Credentials xmlns:n1="urn:criticalpath:fs:api:1.0"
    xsi:type="n1:Credentials">
    <Username xsi:type="xsd:string">admin@default</Username>
    <Password xsi:type="xsd:string">password</Password>
    <SessionId xsi:nil="true"/>
    </n1:Credentials>
    </env:Header>
    <env:Body
    env:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <Fulfill xmlns:n2="urn:criticalpath:fs:api:1.0"
    xsi:type="n2:Fulfill">
    <Request xsi:type="xsd:string">ListDomains</Request>
    <RequestAttributes soapenc:arrayType="n2:Attribute[0]"/>
    <Async xsi:type="xsd:boolean">false</Async>
    </Fulfill>
    </env:Body>
    </env:Envelope>
    When you see the data carefully, the env:Body has the Fulfill element. But
    it does have a namespace prefix on it. This causes the call to fail. If I
    change the above segment manally to look like
    POST /FS HTTP/1.1
    Host: asgappsrv10:6211
    Content-Type: text/xml; charset=utf-8
    Connection: close
    SOAPAction: "ListDomains"
    <?xml version="1.0" encoding="utf-8"?>
    <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <env:Header>
    <n1:Credentials xmlns:n1="urn:criticalpath:fs:api:1.0"
    xsi:type="n1:Credentials">
    <Username xsi:type="xsd:string">admin@default</Username>
    <Password xsi:type="xsd:string">password</Password>
    <SessionId xsi:nil="true"/>
    </n1:Credentials>
    </env:Header>
    <env:Body
    env:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <n2:Fulfill xmlns:n2="urn:criticalpath:fs:api:1.0"
    xsi:type="n2:Fulfill">
    <Request xsi:type="xsd:string">ListDomains</Request>
    <RequestAttributes soapenc:arrayType="n2:Attribute[0]"/>
    <Async xsi:type="xsd:boolean">false</Async>
    </n2:Fulfill>
    </env:Body>
    </env:Envelope>

    Hi All,
    we are also facing the same issue, Please provide the solution if anyone knows. We are also using the SOA Suite 11g Version.

  • WTK22 JSR172Demo - missing SOAP body

    Hi,
    I tried the sample JSR172Demo provided with WTK22, with the server running on localhost. Hence the WSDL port is as below:
    location="http://localhost:8080/serverscript2/serverscript"
    The service has been verified to be running. The stubs for the client generated using the KToolbar stub generator tool. The build was successful. However when the client is run and the service is invoked the following error is displayed on the Ktoolbar console:
    java.rmi.MarshalException: Missing SOAP Body or Envelope
         at example.serverscript.connector.Interface_Stub.request(+125)
         at example.serverscript.demo.Demo.run(+23)
    Please let me know if anyone has faced a similar problem and found a solution.
    Thanks,

    I have simular problem:
    "Missing SOAP Body or Envelope exception" when I'm trying to call web-service methos through internet.
    It seems there is something wrong with my computer security settings - can't imagine what's wrong.
    With local web-server everything works fine.
    I tryed to change Security Domain to Trusted, but this doesn't helps.
    Regards

  • New line character in soap body text

    Hi,
    Is there aby way to add new line character fir string message in soap body for text message output.
    like
    <soapenv:Body xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">string,3\nstring,3\n</soapenv:Body> whic is not working
    thanks

    Try this:
    concat('line1', "&#x0d;&#x0a;", 'line2')
    Ryan

  • Extract fields from the SOAP body during mapping

    Hi all,
    I have an Abap Proxy to SOAP scenario with a main payload and an attachment. During mapping I need the reference of the attachment to store the reference in the main payload. I don't need the attachment itself.
    SOAP-Body:
      <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Eingangs-Message
      -->
    - <SAP:Manifest xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:wsu="http://www.docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="wsuid-manifest-5CABE13F5C59AB7FE10000000A1551F7">
    - <SAP:Payload xlink:href="cid:payload-E742FF47D930DE5CE1000000C107826A @sap.com">
      <SAP:Name>MainDocument</SAP:Name>
      <SAP:Description />
      <SAP:Type>Application</SAP:Type>
      </SAP:Payload>
    - <SAP:Payload xlink:href="cid:payload-EE42FF47D930DE5CE1000000C107826A @sap.com">
      <SAP:Name>hugo.txt</SAP:Name>
      <SAP:Description />
      <SAP:Type>ApplicationAttachment</SAP:Type>
      </SAP:Payload>
      </SAP:Manifest>
    I need the attachment reference as string inside my main payload: cid:payload-EE42FF47D930DE5CE1000000C107826A @sap.com
    I wrote an user defined function to select the MessageId, but the MessageId is only part of the reference to the main payload.
    String constant;
    java.util.Map map;
    map = container.getTransformationParameters();
    constant = (String) map.get(StreamTransformationConstants.MESSAGE_ID);
    return constant;
    Has anybody an idea to get the reference of the attachment from the SOAP body with an user defined function or an adapter module?
    Thanks and kind regards
    Frank

    Hello,
    thank you all for the information. I found a solution for my problem on the sender side. I wrote an own helper class with  the method create_attach_from_txt_withref. This method  build an attachment with an own reference and write the reference back to the payload.
    This reference will not be changed within the execute_asynchronous method of the proxy.
    Method parameters:
    P_DATA        Importing   Type     STRING
    P_TYPE        Importing   Type     STRING
    P_NAME        Importing   Type     STRING
    P_ATTACHMENT  Exporting   Type Ref IF_AI_ATTACHMENT
    P_AREF        Exporting   Type     STRING
    Method coding:
    METHOD create_attach_from_txt_withref.
      DATA: lo_attachment TYPE REF TO cl_ai_attachment,
            l_payload     TYPE REF TO if_xms_payload,
            l_pref        TYPE        sxms_mf_s,
            l_guid        TYPE        guid_32,
            l_aref        TYPE        string.
      CLASS cl_ai_factory DEFINITION LOAD.
    " create the attachment
      p_attachment = cl_ai_factory=>create_attachment_from_text(
                    p_data = p_data             " attachment data
                    p_type = p_type             " attachment type
                    p_name = p_name ).          " attachment name
    " we need an implementing class of the interface if_ai_attachment
      lo_attachment ?= p_attachment.
    " get the new payload
      l_payload = lo_attachment->get_payload( ).
    " get the reference of the payload
      l_pref = l_payload->getreference( ).
    " build an own reference
      CALL FUNCTION 'GUID_CREATE'
        IMPORTING
          ev_guid_32 = l_guid.
      CONCATENATE 'payload-' l_guid '@sap.com' INTO l_aref.
      CONCATENATE 'cid:'     l_aref            INTO l_pref-href.
    " set our own reference
      l_payload->setreference( reference = l_pref ).
    " write back the modified payload
      lo_attachment->set_payload( p_payload = l_payload ).
    " return of the reference
      p_aref = l_aref.
    ENDMETHOD.
    If anybody has an idea how to read the soap body within an adapter module please let me know.
    Regards
    Frank

  • How to create a SOAP body based on a Serializable Object?

    Hello,
    I have a serializable object such as this one
            HeaderSection header = new HeaderSection();
            RequestName requestName = new RequestName();
            requestName.setActivityName("this is an activity");
            NNSVMessage nnsvMessage = new NNSVMessage();
            nnsvMessage.setHeaderSection(header);
            nnsvMessage.setRequestSection(request);
            nnsvMessage.setResponseSection(response);I create a SOAP message using SAAJ API
            SOAPMessage message = messageFactory.createMessage();
            SOAPPart soapPart = message.getSOAPPart();
            SOAPEnvelope envelope = soapPart.getEnvelope();
            SOAPBody body = envelope.getBody();
    ...How can I stuff this object into the SOAP body?
    Thanks,
    Mustafa

    Hi Saleem,
    Herewith an example:
            Dim oDoc As SAPbobsCOM.Documents
            oDoc = oCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oOrders)
            oDoc.CardCode = "530010"
            oDoc.DocDate = Date.Now
            oDoc.DocDueDate = Date.Now
            oDoc.DocType = SAPbobsCOM.BoDocumentTypes.dDocument_Service
            oDoc.Lines.ItemDescription = "Line 1"
            oDoc.Lines.Price = 100
            oDoc.Lines.VatGroup = "O1"
            oDoc.Lines.AccountCode = "0000090000"
            oDoc.Lines.Add()
            oDoc.Lines.ItemDescription = "Line 2"
            oDoc.Lines.Price = 200
            oDoc.Lines.VatGroup = "O1"
            oDoc.Lines.AccountCode = "0000090201"
            If oDoc.Add <> 0 Then
                MessageBox.Show(oCompany.GetLastErrorDescription)
            Else
                MessageBox.Show("Added")
            End If
    Hope it helps,
    Adele

  • Soap body xml different on server

    Hello,
    I am trying to verify a soap body string using a signature in the soap header. But am getting a slightly modified version of the soap message on the server side handler.
    Here is how my client side handler soap body looks:
    <n1:xyz xmlns:n1="http://localhost/edm/DocMgmtParametersRetriever">
    </n1:xyz>
    On the server side,
    <n1:xyz xmlns:n1="http://localhost/edm/DocMgmtParametersRetriever"></n1:xyz>
    The differences are:
    1.There is an extra space between n1:xyz and xmlns on the client side.
    2.There is a line break before </n1:xyz> on the client side which is not present on the server side.
    When I add following lines of code on client side, the soap body looks the same and server is able to verify the signature.
    soapBody = soapBody.replaceAll(" xmlns:"," xmlns:");
    soapBody = soapBody.replaceAll("\n","");
    soapBody = soapBody.replaceAll("\r\n","");
    soapBody = soapBody.replaceAll("\r","");
    The server is on weblogic 8.1 sp3. The webservice java client is using saaj-api.jar
    Any clue as to why there is a difference?
    Thank you

    Welcome to the forums.
    As a tip for future posts [url https://forums.oracle.com/forums/thread.jspa?threadID=2174552#9360002]2. How do I ask a question on the forums?
    That said, a basic example that pulls the contents of the body out is
    declare
      l_ws_rsp    XMLTYPE;
      l_body_rsp  XMLTYPE;
    begin
      -- Retrieving the SOAP message
      l_ws_rsp := DHL_SOAP_RESPONSE_XMLTYPE;
      -- Extracting out the body
      SELECT xt.body_xml
        INTO l_body_rsp
        FROM XMLTable(XMLNamespaces('http://schemas.xmlsoap.org/soap/envelope/' AS "SOAP-ENV"),
                      '/SOAP-ENV:Envelope/SOAP-ENV:Body/*'
                      PASSING l_ws_rsp
                      COLUMNS
                      body_xml   XMLTYPE PATH '.') xt;
       dbms_output.put_line(l_body_rsp.getClobVal());
    end;If you Google
    XMLTable soap site:forums.oracle.com
    you can find plenty of examples on these forums regarding how to parse a web service response.
    The bigger question is, what are you going to do with the data in the response. As the example above alludes too, you can actually parse the entire WS response with one SQL statement and return the results as one or more rows. Will you be performing PL/SQL logic on the returned results or will you simply be INSERTing them into the database for something else to use?

  • OSB 11g - Authentication - Username and password in SOAP body

    Hi,
    I have a PS based on the WSDL provided by the client. According to the WSDL the client will send the username and password (to be used for authentication) in SOAP Body. I have extract the username and password from the body and authenticate it and then only process the data.
    The approach I am thinking of is to create two PS. The first PS will be called by client to send the data. There will be no authentication required for this PS. Once this PS (PS-1) receives the message it will extract the username, password and data from the SOAP body. It will then set the username and password in the HTTP header of the second PS (PS-2) and the data in the SOAP body of PS-2.
    PS-2 will be under basic authentication. PS-2 will accept the data as the only payload. Upon receiving the data it will do the normal processing.
    But I do not see any way to set the HTTP header (Authorization) for the second PS. Is my approach correct? Is there another/better approach?
    I went through this link [http://download.oracle.com/docs/cd/E13159_01/osb/docs10gr3/security/model.html] and found that we may have to configure another Authentication provider. How to do that?
    Thanks,
    Sanjay

    Hi Sanjay,
    Your approach seems correct to me (using two proxies) but instead of setting the username and password in HTTP header, you may set it as SOAP header and use Custom Authentication method in OSB. To know more about it, please refer -
    http://download.oracle.com/docs/cd/E17904_01/doc.1111/e15866/message_level_cust_auth.htm#i1069719
    Regards,
    Anuj

  • Content of the soap body

    I've this wsdl taken from the wsdl specification documentation.
    <?xml version="1.0"?>
    <definitions name="StockQuote"
    targetNamespace="http://example.com/stockquote.wsdl"
    xmlns:tns="http://example.com/stockquote.wsdl"
    xmlns:xsd1="http://example.com/stockquote.xsd"
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns="http://schemas.xmlsoap.org/wsdl/">
    <types>
    <schema targetNamespace="http://example.com/stockquote.xsd"
    xmlns="http://www.w3.org/2000/10/XMLSchema">
    <element name="TradePriceRequest">
    <complexType>
    <all>
    <element name="tickerSymbol" type="string"/>
    </all>
    </complexType>
    </element>
    <element name="TradePrice">
    <complexType>
    <all>
    <element name="price" type="float"/>
    </all>
    </complexType>
    </element>
    </schema>
    </types>
    <message name="GetLastTradePriceInput">
    <part name="body" element="xsd1:TradePriceRequest"/>
    </message>
    <message name="GetLastTradePriceOutput">
    <part name="body" element="xsd1:TradePrice"/>
    </message>
    <portType name="StockQuotePortType">
    <operation name="GetLastTradePrice">
    <input message="tns:GetLastTradePriceInput"/>
    <output message="tns:GetLastTradePriceOutput"/>
    </operation>
    </portType>
    <binding name="StockQuoteSoapBinding" type="tns:StockQuotePortType">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
    <operation name="GetLastTradePrice">
    <soap:operation soapAction="http://example.com/GetLastTradePrice"/>
    <input>
    <soap:body use="literal"/>
    </input>
    <output>
    <soap:body use="literal"/>
    </output>
    </operation>
    </binding>
    <service name="StockQuoteService">
    <documentation>My first service</documentation>
    <port name="StockQuotePort" binding="tns:StockQuoteBinding">
    <soap:address location="http://example.com/stockquote"/>
    </port>
    </service>
    </definitions>
    I developed the service implementation and a service client using wsimport, jaxb, jaxws.
    Trying running the client I get the exception:
    Cannot find dispatch method for {http://example.com/stockquote.xsd}TradePriceRequest
    Running the message request generated by soapUI has the same effect.
    The soap message request generated by soapUI, given the above WSDL, is:
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:stoc="http://example.com/stockquote.xsd">
    <soapenv:Header/>
    <soapenv:Body>
    <stoc:TradePriceRequest/>
    </soapenv:Body>
    </soapenv:Envelope>
    but in the wsdl spec it should be:
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    <soapenv:Body>
    <m:GetLastTradePrice xmlns:m="Some-URI">
    <m:tickerSymbol>DIS</m:tickerSymbol>
    </m:GetLastTradePrice>
    </soapenv:Body>
    </soapenv:Envelope>
    In other word, the content of the soap body should be the wsdl operation or the complex type representing the input part?

    I am a newbie, so I don't know if my reply will be helpful.
    Reading the fault "Cannot find dispatch method for {http://example.com/stockquote.xsd}TradePriceRequest", I think the problem is that TradePriceRequest is a type for a message and it is treated as an operation. The content of the SOAP message should be the operation (GetLastTradePrice) and nested inside the operation should be the parameters for the operation (the complex type...). So the answer is probably "both", one inside the other.
    I think that the message as you wrote it:
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    <soapenv:Body>
    <m:GetLastTradePrice xmlns:m="Some-URI">
    <m:tickerSymbol>DIS</m:tickerSymbol>
    </m:GetLastTradePrice>
    </soapenv:Body>
    </soapenv:Envelope>
    is correct.

  • JDeveloper 10.1.3 - Disabling ns0: namespace prefix in soap body children ?

    I am attempting to use a PeopleSoft web service. However, the PeopleSoft web service does not recognize operations which have a namespace prefix. Using visual studio, namespace prefixes are not used in the child elements of the soap body element. I am able to call the service using visual studio.
    JDeveloper 10.1.3 uses a namespace prefix for children of the body element which is recommended by the soap spec. However, I need to disable that behavior so that I can actually get the program working with PeopleSoft.
    Can anyone tell me if there is an easy way to disable the ns0: prefix that is used by the generated web service proxy stub? I have traced through the generated proxy code but I do not see any properties that can be modified. The only thing I can think of is to modify the generated code but I do not want to go that route.
    Thanks,
    Rich

    Delete the NS0: related text, in JDev, from your WSDL and it should work. I had the same problem with .NET not liking it also.
    Keep in mind you'll have to tweak the WSDL again if you regenerate it.
    You sure you're using 10.1.3? I upgraded and it shows the NS0: as a problem in existing projects. I'm working on the latest, production download so maybe it's been corrected.

  • Error_: ACS10002: An error occurred while processing the SOAP body

    Hi all,
    We have problem to connect MSCRM online via SDK since yesterday.   All of our MSCRM Online organizations have this issue.  Anyone has the same issue?  
    Error : ACS10002: An error occurred while processing the SOAP body. ACS50000: There was an error issuing a token. ACS50005: Token encryption is required but no encrypting certificate is configured for the relying party.
    Gary

    This is a server side webcache from the OTN site. Not anything client-related. Its a bug that cannot be fixed at this time as OTN is on an EOL version of software. The good news is that most of OTN is moving to a new CMS on the 19th and these errors will disappear.
    In the meantime, if you add a parameter refresh to the URL you get the error on, most of the time, you can get the page back. Parameter refresh is done by adding ?a=b to the end of the URL. You can keep changing the combo too. (i.e. ?c=d)

  • Attaching xml document to SOAP body

    Hi,
    i have two question.
    Q1: Is it allowed to attach xml document (org.w3c.dom.Document) to SOAP body when sending request to web service.( I have implemented web service to accept attached xml document.)
    Q2: If it is allowed, how thoes the WSDL look like.
    Thanx,
    Alan.

    Hi,
    I am facing the same issue., I want to transform the xml proxy request to SOAP requesting that the business service expects.
    Did you manage to solve the issue, if so, can you please share your solution?
    Thanks

  • SOAP BODY data to be Put into SOAP Header

    Hi All,
    Could you kindly help me out in this issue?
    Basically our Requirement is to send the UserID and Password stored in
    the R/3 system to the 3rd Party Server as a part of the SOAP Header .
    Presently I am using a Message Interface which takes the parameters
    UserID and Password and hence its placing them in the SOAP BODY which in
    turn in resulting in Rejection of the data sent being us. So I guess we
    have to do some take out these parameters from Message Interface and
    try out something else.
    So Could you help us out in this issue since we are stuck  and hence not
    able to proceed any further.
    Here are some Details :
    Here is the extract from the XML File:
    A) Format in XI
      <?xml version="1.0" encoding="UTF-8" ?>
    - <ns1:DPSrequestToken xmlns:ns1="http://tempuri.org/message/">
    - <Username>
      <Username>ANYAGENT</Username>
      <Password>p2ssword</Password>
      </Username>
    - <DPSrequestToken>
      <version>1</version>
      <vendorID>0142</vendorID>
      </DPSrequestToken>
      </ns1:DPSrequestToken>
    B) The way the file needs to be sent to the 3rd party server
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
         xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <SOAP-ENV:Header>
            <wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
                <wsse:UsernameToken>
                    <wsse:Username>ANYAGENT</wsse:Username>
                    <wsse:Password>p2ssword</wsse:Password>
                </wsse:UsernameToken>
            </wsse:Security>
    </SOAP-ENV:Header>
         <SOAP-ENV:Body>
              <m:DPSrequestToken xmlns:m="https://tpvs.hmrc.gov.uk/dpsauthentication">
                   <m:version>1</m:version>
                   <m:vendorID>your 4 digit vendorID</m:vendorID>
              </m:DPSrequestToken>
         </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    Basically as mentioned above
      <Username>ANYAGENT</Username>
      <Password>p2ssword</Password> ,Tokens should be sent in the SOAP
    Header which is now being sent in the Body and hence causing problems.
    Do get back to me in case you need any clarifications on this issue.
    Best Regards,
    Chandan
    Message was edited by: Chandan A C

    see this --> page 2
    HTTP Adapter error.
    Rgds

  • Mapping Design  - SOAP body content needs to be different between test and production

    Hello,
    We are integrating with a 3rd party SOAP receiver who uses the same web service URLS for test and production.
    So to differentiate they exposed 2 web services which do the same thing but have different root and payload node names...along with account details.
    For example, for production our SOAP XML must follow pattern like:
    <Envelope>
    <Body>
    <appRequest>
    <userID>produser</userID><password>prodpwd</password>
    <appPayload>
    <?xml>
    blah blah this XML is the same between test and production
    </xml>
    </appPayload>
    etc
    But for their testing we must use:
    <Envelope>
    <Body>
    <appRequestTest>
    <userID>testuser</userID><password>testpwd</password>
    <appPayloadTest>
    <?xml>
    blah blah this XML is the same between test and production
    </xml>
    </appPayload>
    etc
    So I'm trying to think of a good way to handle this difference in one set of mappings that we can use in our 3 PI platforms Dev / Test / Prod
    Since these differences are in the SOAP Body does it need handled in mapping or is there a way to handle it in the Adapter Config which is naturally different between our environments (mapping we like to keep the same).
    What is a smart way to handle this scenario?
    Many thanks,
    Aaron

    I second Artem when he states that this is a bad design decission from the caller's side.
    However this is not gonna help you in the current situation, right?
    The problem you are facing is that by poor design the message does not have a root node which you may use to handle occurences. Let me explain further
    You would be good if prod message looked like so
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    <soapenv:Header/>
    <soapenv:Body>
      <appData>
       <appRequest>
       </appRequest>
      </appData>
    </soapenv:Body>
    </soapenv:Envelope>
    and test message looked like so
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    <soapenv:Header/>
    <soapenv:Body>
      <appData>
       <appRequestTest>
       </appRequestTest>
      </appData>
    </soapenv:Body>
    </soapenv:Envelope>
    --> Then you would have been able to specify occurence of <appRequest> and <appRequestTest> as 0..1
    So I think you have (besides what Artem already pointed out) 2 other options:
    1. activate "do not use SOAP envelope" on sender SOAP channel and then designing the data types like above
    2. Use HTTP instead of SOAP adapter and designing data types like above
    Hope I didn't miss something crucial :-)
    Cheers
    Jens

Maybe you are looking for

  • How can I change  oval shape applet to (plot)

    Hi this is not my code so, the orignal code is freeware to www.neuralsemantics.com and is Copyright 1989 by Rich Gopstein and Harris Corporation. The site allows permission to play with the code or ammend it. how could I modify the applet to display

  • Switching itunes from PC to Mac, need a little help

    Whats the best way to move my library in itunes without using an external hard drive (other then the ipod) anyone know how to do this with the ethernet cable?

  • IP File Upload  -  Error in compounded infoObject value

    Hi Experts, I am getting below error when uploading the file in IP Value 3010/0150 for characteristic Org structure is not valid Org structure (CHORGSTR) is compounded with 0CO_AREA. I have maintained CHORGSTR = 3010 & 0CO_AREA = 0150. Ideally the fu

  • SAP implementation problem on linux

    Hi I have a unique problem. I recently joined a team where a PRD system has been installed and it has the following problem: While transporting from QAS to PRD sometimes the transported request does not get activated. We found out a possible cause. T

  • Broken music files. Tool to fix them?

    I had a very large number of music files on a drive on my PC that went bad, and now all the files have corrupted file names, although they are still recognizable as music files. I'd like to import these files into iTunes on my Mac. Is there software