SOAP  Request - BPM (JDBCs + Mappings + File) - SOAP Response

Hi there,
my scenario:
-soap request to xi
-bpm that do some tasks first with the jdbc-adapter and then with the file-adpater
-soap response (succ/fault) back to the client
do i need a s/a bridge to activate the bpm. i can't find any guideline.
thx
snyder

Hi,
You can go thro the following blogs for Sync/Asyn bridge.
https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/1403 [original link is broken] [original link is broken] [original link is broken] [original link is broken]
/people/sriram.vasudevan3/blog/2005/01/11/demonstrating-use-of-synchronous-asynchronous-bridge-to-integrate-synchronous-and-asynchronous-systems-using-ccbpm-in-sap-xi
/people/ravikumar.allampallam/blog/2005/02/17/bridging-the-sync-async-bridge-with-fork-xi
Regards,
P.Venkat

Similar Messages

  • Sending the SOAP request back in the SOAP response

    Hi,
    I have a requirement in which I need to update a database from the information I receive in a SOAP request. Now my database will respond back with the number of records that are updated. Now I need to send back a SOAP response which should have the details that I received in the SOAP request.
    Can anyone help me on how to send the SOAP request details back in the SOAP response again? I don't want to use a BPM to do this. Also I know that I can use a select statement to get the records that are updated in my response mapping program. Any options other than these?
    - Ram

    Hi Stish,
      I do have exactly the same need, just with the difference that I'm sendind data from JDBC as sender and RFC as receiver, the RFC receive an ID fot example and return some data as a response and I want to update the DB with that response but I dont know how to merge the ID from the request and the data from the response in order to send it back and update the DB. I'm willing to do it with BPM but I don't know how to keep the request and the response and then merge them into the new message that will be sent to the JDBC, can you give me some specific steps?
    Thanks in advance.
    Gustavo Balboa.

  • Unable to write SOAP response to a file

    Hi,
      I am trying to capture SOAP response into a file using the method mentioned in the below given wiki but running into errors.
    File gets read but it doesn't get deleted and it gets processed infinitely without creating any monitoring messages.
    https://www.sdn.sap.com/irj/scn/wiki?path=/display/xi/using%252brequest%252bresponse%252bbean%252bmodule%252bin%252bfile%252badapter
    Following is the trace from defaulttrace:
    #1.5 #005056A33969002E00003735000014A41040C0723D32A941#1236364790565#
    com.sap.engine.services.ts##com.sap.engine.services.ts#J2EE_GUEST#168484##
    test008_ZP0_117114750##672e8d50052011deafc2005056a33969#XI File2XI[CC_NTLM/BE_FILE_LOCAL/]_400304##0#0#Error#1#/System/Server#Java#ts_0021##Thread is not associated with any transaction context.##
    #1.5 #005056A33969002E00003737000014A41040C0723D32A941#1236364790565#
    com.sap.engine.services.ts##com.sap.engine.services.ts#J2EE_GUEST#168484##test008_ZP0_11711
    4750##672e8d50052011deafc2005056a33969#XI File2XI[CC_NTLM/BE_FILE_LOCAL/]_400304##0#0#Error#1#/System/Audit#Java###Exception #1#com.sap.engine.services.ts.transaction.TxDemarcationException: Thread is not associated with any transaction context.
         at com.sap.engine.services.ts.transaction.TxManagerImpl.setRollbackOnly(TxManagerImpl.java:754)
         at com.sap.transaction.TxManager.setRollbackOnly(TxManager.java:382)
         at com.sap.aii.af.service.util.transaction.impl.SAPTxManagerImpl.rollback(SAPTxManagerImpl.java:109)
         at com.sap.aii.adapter.file.File2XI.processFileList(File2XI.java:1748)
         at com.sap.aii.adapter.file.File2XI.invoke(File2XI.java:615)
         at com.sap.aii.af.lib.scheduler.JobBroker$Worker.run(JobBroker.java:463)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(Native Method)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:152)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:247)
    Caused by: com.sap.engine.services.ts.exceptions.BaseIllegalStateException: Thread is not associated with any transaction context.
         at com.sap.engine.services.ts.jta.impl.TransactionManagerImpl.setRollbackOnly(TransactionManagerImpl.java:475)
         at com.sap.engine.services.ts.transaction.TxManagerImpl.setRollbackOnly(TxManagerImpl.java:751)
         ... 9 more
    Am not sure if this is the right approach. One other way mentioned some where else is to use the File Handler in Axis adapter but thats not working either.
    Any help is appreciated!!
    Thanks
    Kiran

    Hi!
    A part from the abov sugestions make sure even though u checked previously..
    1. Check whether your SOAP URL s correct or not which you are giving in the receiver SOAP adapter
    2. Also check you are giving the SOAP action in the receiver SOAP adatper correctly or not.
    3. Finally check the SOAP service is activei or not in SAP>BC>XI-->SOAP in ABAP stack
    4. Since FIle is only for ASYN comm and while using FILE for  sync interface you need to pass module paramters in the Sender File CC
    please go thorugh the below link and check all those parameters once again whcih contains detaled screen shots.....Ok
    [https://www.sdn.sap.com/irj/scn/wiki?path=/display/xi/file-rfc-file(Without+BPM)]
    Regarsd::
    Amar Srinivas Eli

  • SOAP response to file

    Hello,
    i am working on scenario as given below.
    JDBC to SOAP synchronous.
    So once i got the response i need to save as file (XML format).
    please let me know the stpes to capture the SOAP response payload from SXMB_MONI and save as XML file.
    Thanks in advance...SARAN

    Hi Saran,
    Follow the below steps:
    1. Goto the T-code SXMB_MONI.
    2. Select the Interface Namespace and time
    3. Press F8 to execute.
    4. Select the Message.
    5. In the Left Navigation Bar, you would be able to find Response, under that click on SOAP Header.
    6. Right on "Main" and select the option to download.
    7. Save the file as you would like.
    Thanks,

  • Soap request- XI- RFC- RFC- soap response

    Hi,
    I want to implement a scenario like this.
    A third party system use the soap adapter to call the ECC RFC via XI.
    AND I want to write the RFC response into another RFC.
    After that i want to send back another Rfc response result to soap client (third party system).
    So the scenario looks like this
    soap request->XI->RFC->RFC->soap response
    I want to use BPM,but have not too much experience.appreciate your help.
    Regards

    Hi,
    You would need a Synch Asynch Bridge in this case.
    Steps in BPM.
    1. Receive --> Receives SOAP request message --> Select Opens Synch Asynch Bridge
    2. Transfrom --> Map SOAP request to RFC 1's request Message
    3. Send Synchronous --> Make the Synch Call to the RFC and get the Response back.
    4. Transform --> Map RFC 1's response  to RFC 2's Request
    5. Send Synchronous --> Make the Synch Call to RFC 2 and get the RFC response back
    6. Trasnsform -->Map RFC 2's response to SOAP response.
    7. Send --> Select Closes Synch Asycnh Bridge and Send SOAP response back.
    For synch asynch bridge , take a look at this too,
    http://help.sap.com/saphelp_nw04/helpdata/en/83/d2a84028c9e469e10000000a1550b0/content.htm
    Regards,
    Bhavesh

  • Error:SOAP: response message contains an error XIAdapter/PARSING/ADAPTER.SOAP_EXCEPTION - soap fault: Server was unable to read request. --- There is an error in XML document (1, 447). --- Input string was not in a correct format.

    Hi All,
        We have a scenario of FTP-->PI---> Webservice.  While triggering the data in the FTP, it is failing in the PI with the below error
    SOAP: response message contains an error XIAdapter/PARSING/ADAPTER.SOAP_EXCEPTION - soap fault: Server was unable to read request. ---> There is an error in XML document (1, 447). ---> Input string was not in a correct format.
    Can you please help?

    Hi Raja- It seems to be a data quality issue.
    Check for the value @ 1447 position in the xml message that you are trying to send to web service..
    may be a date filed/decimal value which is not in expected format.

  • How to attach files in soap response?

    IS there any way to attach a file in soap response? how to do that??:|

    Probably MTOM is what you need:
    http://edocs.bea.com/wls/docs100/webserv/jws.html#mtom
    But this is apparently not doable with ALSB (it would be supported just with regular web services):
    http://forums.bea.com/thread.jspa?threadID=300002302
    Note the file naming would need to be done by the SOAP client:
    http://www.jroller.com/gmazza/date/20071102 (Look at Steps #6 and #11 and Note # 7)
    HTH,
    Glen

  • Need to get SOAP request and SOAP response message.

    Hi All,
    I need to know that how can I get the SOAP request and SOAP response message. Now I am using WSDL2Java tool from Axis to generate the stub classes (such as ServiceLocator, SoapBindingStub, and soapPort ) and applying the classes to make the SOAP request. I have seen the solution for getting the SOAP request with Dynamic invocation interface (DII) style (http://mail-archives.apache.org/mod_mbox/ws-soap-user/200310.mbox/%[email protected]%3e), but not Static stub like what I did. Could anyone suggest me how to do it please ( I can't run tcpcom on the linux server, because x-window is not allowed to install ). Thank you for any help in advance.

    You can try writing a client-side handler.
    Handler gets called before the actual request is sent, and you can get the SOAP
    message in it.
    You have to deploy the handler in client-config.wsdd.
    Handler is just like Servlet Filter.
    I think there might be a simpler solution, but I dont know.

  • Handling/Mapping a SOAP response message back to the RFC request Message

    Hi
    I was wondering if you could kindly offer some advice on how to handle the SOAP response back to an RFC in a RFC>SOAP>RFC.Response scenario. When executing an RFC function module that triggers a message to XI, the outbound message seems to process successfully, however, there is an error in the response message. I am not sure how to map the response back to the function module response message because it looks like the response payload is empty. It is also strange that the interface seems to run in synchronous mode despite being configured as an asynchronous interface. If it ran in asynchronous mode, there would not be a problem because we actually do not need a response back. The interface also runs perfectly when executing it from the Runtime Workbench, and it also runs in asynchronous mode as it should.     
    I would really appreciate any suggestions on how to solve this problem.
    Thank you,
    Brendon

    Hi Reyaz,
    This is actually an RFC-->SOAP scenario where the message structure of the source and target systems are different. We don't actually need a reponse back from the SOAP system. I was wondering if you perhaps know how we can cancel the Response response back to the requestor or at leaset map the SOAP response back?
    The interface runs perfectly in asynchronous mode when executing it from the Runtime Workbench in the test section, but it runs in synchronous mode for some reason when executing the RFC function call in SAP.
    Thank you,
    Brendon

  • BPEL process to create a PDF and send it as attachment in SOAP response

    We have a requirement to have a webservice created using BPEL, which can receive input from a client and create a PDF using the input and send the PDF as attachment in the SOAP response.
    We have found the below link in Oracle docs and our basic understanding on the functionality given is that the MIMEService is being used to read a SOAP attachment from some other service and send it as an attachment in the SOAP response to the requester. As explained above, this doesn't completely satisfy our requirement.
    http://docs.oracle.com/cd/E11036_01/integrate.1013/b28981/manipdoc.htm#BABCJIAH
    Please suggest if there is any other approach that suites our requirement.
    Thanks.

    Hi,
    I have a Weblogic webservice which returns me a PDF attachment as resposne ( here I have MIME related stuff).I need to get attachment as bpel response.
    I have created a BPEL process to invoke the weblogic webservice. I have explictly added the MIME part in bpel.wsdl same as weblogic webservice wsdl.
    I tried to assign the response variable( of type base64binary) of bpel.wsdl and my webservice .wsdl . I am getting some error with no attachment.
    Below is my xsd used in BPEL.wsdl*
    <?xml version="1.0" encoding="UTF-8"?>
    <schema attributeFormDefault="unqualified"
         elementFormDefault="qualified"
         targetNamespace="http://xmlns.oracle.com/MIMEApp/test/BPELProcess1"
         xmlns="http://www.w3.org/2001/XMLSchema">
         <complexType name="process">
                   <sequence>
                        <element name="input" type="string"/>
                   </sequence>
         </complexType>
         <complexType name="processResponse">
                   <sequence>
                        <element name="result" type="string"/>
                   </sequence>
         </complexType>
    <complexType name="GetAttachmentPDF">
    <sequence>
    <element minOccurs="0" name="Pdf" nillable="false" type="base64Binary"/>
    </sequence>
    </complexType>
    </schema>
    Below is my BPEL.wsdl*
    <?xml version="1.0" encoding="UTF-8"?>
    <wsdl:definitions name="BPELProcess1"
    targetNamespace="http://xmlns.oracle.com/MIMEApp/test/BPELProcess1"
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
    xmlns:client="http://xmlns.oracle.com/MIMEApp/test/BPELProcess1"
    xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/">
    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         TYPE DEFINITION - List of services participating in this BPEL process
         The default output of the BPEL designer uses strings as input and
         output to the BPEL Process. But you can define or import any XML
         Schema type and use them as part of the message types.
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
    <wsdl:types>
    <schema xmlns="http://www.w3.org/2001/XMLSchema">
    <import namespace="http://xmlns.oracle.com/MIMEApp/test/BPELProcess1"
    schemaLocation="xsd/BPELProcess1.xsd"/>
    </schema>
    </wsdl:types>
    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         MESSAGE TYPE DEFINITION - Definition of the message types used as
         part of the port type defintions
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
    <wsdl:message name="BPELProcess1RequestMessage">
    <wsdl:part name="payload" type="client:process"/>
    </wsdl:message>
    <wsdl:message name="BPELProcess1ResponseMessage">
    <wsdl:part name="payload" type="client:processResponse"/>
    <wsdl:part name="attachment" type="client:GetAttachmentPDF"/>
    </wsdl:message>
    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         PORT TYPE DEFINITION - A port type groups a set of operations into
         a logical service unit.
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
    <!-- portType implemented by the BPELProcess1 BPEL process -->
    <wsdl:portType name="BPELProcess1">
    <wsdl:operation name="process">
    <wsdl:input message="client:BPELProcess1RequestMessage"/>
    <wsdl:output message="client:BPELProcess1ResponseMessage"/>
    </wsdl:operation>
    </wsdl:portType>
    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         PARTNER LINK TYPE DEFINITION
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
    <plnk:partnerLinkType name="BPELProcess1">
    <plnk:role name="BPELProcess1Provider">
    <plnk:portType name="client:BPELProcess1"/>
    </plnk:role>
    </plnk:partnerLinkType>
    <wsdl:binding name="BPELProcess1SOAP11Binding" type="client:BPELProcess1">
    <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
    <wsdl:operation name="process">
    <soap:operation style="rpc"
    soapAction="http://xmlns.oracle.com/MIMEApp/test/BPELProcess1/process"/>
    <wsdl:input>
    <soap:body use="literal"
    namespace="http://xmlns.oracle.com/MIMEApp/test/BPELProcess1"/>
    </wsdl:input>
    <wsdl:output>
    <mime:multipartRelated>
    <mime:part>
    <soap:body use="literal"
    namespace="http://xmlns.oracle.com/MIMEApp/test/BPELProcess1"/>
    </mime:part>
    <mime:part>
    <mime:content part="attachment" type="application/pdf"/>
    </mime:part>
    </mime:multipartRelated>
    </wsdl:output>
    </wsdl:operation>
    </wsdl:binding>
    </wsdl:definitions>
    Below is my WL WS WSDL*
    <?xml version="1.0" encoding="UTF-8"?>
    <WL5G3N0:definitions
    name="NewWSDLFile"
    targetNamespace="http://www.example.org/NewWSDLFile/"
    xmlns:WL5G3N5="http://schemas.xmlsoap.org/wsdl/mime/"
    xmlns:WL5G3N4="http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns:WL5G3N3="http://www.example.org/NewWSDLFile/"
    xmlns:WL5G3N2="java:com.rogers.service"
    xmlns:WL5G3N0="http://schemas.xmlsoap.org/wsdl/"
    xmlns:WL5G3N1="http://www.w3.org/2001/XMLSchema"
    >
    <WL5G3N0:types>
    <xsd:schema attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="java:com.rogers.service"
    xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:s="java:com.rogers.service"
    xmlns:s0="http://schemas.xmlsoap.org/wsdl/" xmlns:s1="http://www.w3.org/2001/XMLSchema"
    xmlns:s2="java:com.rogers.service" xmlns:s3="http://www.example.org/NewWSDLFile/"
    xmlns:s4="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s5="http://schemas.xmlsoap.org/wsdl/mime/"
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://www.example.org/NewWSDLFile/"
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <xsd:complexType name="GetAttachmentPDF">
    <xsd:sequence>
    <xsd:element minOccurs="0" name="Pdf" nillable="false" type="xs:base64Binary"/>
    </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="GetAttachmentResult">
    <xsd:sequence>
    <xsd:element minOccurs="1" name="Message" nillable="true" type="xs:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:schema>
    </WL5G3N0:types>
    <WL5G3N0:message name="NewOperationRequest">
    <WL5G3N0:part name="GetAttachment" type="WL5G3N1:string"/>
    </WL5G3N0:message>
    <WL5G3N0:message name="NewOperationResponse">
    <WL5G3N0:part name="NewOperationResponse" type="WL5G3N2:GetAttachmentResult"/>
    <WL5G3N0:part name="attachment" type="WL5G3N2:GetAttachmentPDF"/>
    </WL5G3N0:message>
    <WL5G3N0:portType name="NewWSDLFile">
    <WL5G3N0:operation name="NewOperation">
    <WL5G3N0:input message="WL5G3N3:NewOperationRequest"/>
    <WL5G3N0:output message="WL5G3N3:NewOperationResponse"/>
    </WL5G3N0:operation>
    </WL5G3N0:portType>
    <WL5G3N0:binding name="NewWSDLFileSOAP" type="WL5G3N3:NewWSDLFile">
    <WL5G3N4:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
    <WL5G3N0:operation name="NewOperation">
    <WL5G3N4:operation soapAction="http://www.example.org/NewWSDLFile/NewOperation"/>
    <WL5G3N0:input>
    <WL5G3N4:body use="literal" namespace="http://www.example.org/NewWSDLFile/"/>
    </WL5G3N0:input>
    <WL5G3N0:output>
    <WL5G3N5:multipartRelated>
    <WL5G3N5:part>
    <WL5G3N4:body use="literal" namespace="http://www.example.org/NewWSDLFile/"/>
    </WL5G3N5:part>
    <WL5G3N5:part>
    <WL5G3N5:content part="attachment" type="application/pdf"/>
    </WL5G3N5:part>
    </WL5G3N5:multipartRelated>
    </WL5G3N0:output>
    </WL5G3N0:operation>
    </WL5G3N0:binding>
    <WL5G3N0:service name="NewWSDLFile">
    <WL5G3N0:port name="NewWSDLFileSOAP" binding="WL5G3N3:NewWSDLFileSOAP">
    <WL5G3N4:address location="http://localhost:7001/something/NewWSDLFileImpl"/>
    </WL5G3N0:port>
    </WL5G3N0:service>
    </WL5G3N0:definitions>
    I refered the below link:
    http://docs.oracle.com/cd/B14099_19/integrate.1012/b14448/manipdoc.htm.
    4.16.1.1 WSDL File Contents
    They are using ra:writeBinaryToFile() and ora:ReadBinaryFromFile(). I couldnt get a proper sample to understand the use of these functions.
    Please advise.
    Regards
    Ipsita

  • Synchronous RFC -- SOAP Scenario: problem with SOAP Response/Fault Mapping

    Hi,
    I've a synchronous RFC --> PI --> SOAP Scenario. The problem is that the message structure of the sending RFC doesn't match the Webservice Structure.
    The (SAP standard) RFC has just a Request / Response message structure. Part of the Response Message structure is a exception structure.
    The Webservice has a Request / Response message structure and in case of an error I get a SOAP:Fault.
    Problem now is that I cannot configure that scenario without usage of BPM as I will have to map SOAP:Response or SOAP:Fault to the RFC Response structure.
    Has anybody another idea to do that synchronous scenario (with usage of message mapping) without BPM?
    BR
    Holger

    1)
    you maus define 3 mapping.
    1)request
    2)response
    3)Fault
    in Interface mapping define at response boths (2-3) mapping. its clear??
    2)
    otherwise sometjhing is not clear, why do you want fault?? why dont you  get only response message. we implement this kind of response:
    <response_MT>
    <ID> (error ID)
    <system> (target system) 
    <error> (Error Description)
    </response>
    by this way fault message is not needed. but if you must have it just follow the top of message else, propose second.
    Thanks
    Rodrigo
    Thanks
    Rodrigo
    Edited by: Rodrigo Pertierra on Feb 25, 2008 11:52 AM

  • Best way to capture a SOAP response into a different message interface

    Hi
    I have created a Synchronous File to SOAP scenario in which I need to map the SOAP response back to an RFC Function Module instead of the File Message Interface.
    Please can you let me know what the best method is to do this because I am not able to to use the RFC FM as the input message inside the synchronouse File Message Interface.
    Thank you,
    Brendon

    Hi,
    if u are using request response bean and response one way bean at sender file adapter please do the following .
    1. create the sender file adapter. and at module tab used the bean as follows.
    1. requestresponsebean
    2. call adapter
    3. responseonewaybean.
    and define the request and  response bean parameter in the value
    1. request --passThrough- true
    2. response--receiver channel -- channel name
    3. responce-- receiverService--Business service name.
    please do remember to configure one  receiver agreement using the rfc channel.
    regards,
    Navneet

  • Weblogic throwing "null SOAP element Exception" in multi-part SOAP response

    Hi All,
    I'm using weblogic 10. My application is a webservice client generated using '*clientgen*', which is running on weblogic, and
    is invoking a remotely hosted webservice ( Remotely hoseted webservice may not be running on weblogic).
    I've the wsdl file of remotely hosted webservice.
    Now the problem is with WSDL file (I suppose), have a look at this.
    *&lt;message name="m1"&gt;*
    *&lt;part name="body" element="tns:GetCompanyInfo"/&gt;*
    *&lt;/message&gt;*
    *&lt;message name="m2"&gt;*
    *&lt;part name="body" element="tns:GetCompanyInfoResult"/&gt;*
    *&lt;part name="docs" type="xsd:AnyComplexType"/&gt; ------&gt; assume all elements inside this complex type can be nil or minOccurs set to '0'*
    *&lt;part name="logo" type="xsd:AnyOtherComplexType"/&gt; ------&gt; assume all elements inside this complex type can be nil or minOccurs set to '0'*
    *&lt;/message&gt;*
    &lt;portType name="pt1"&gt;
    &lt;operation name="GetCompanyInfo"&gt;
    &lt;input message="m1"/&gt;
    *&lt;output message="m2"/&gt; -----&gt; multi part message.*
    &lt;/operation&gt;
    &lt;/portType&gt;
    Now here is sample message for the request(I've composed this message for this question):
    &lt;soap:Envelope&gt; MESSAGE1
    &lt;soap:header/&gt;
    &lt;soap:body&gt;
    &lt;tns:m2&gt;
    &lt;tns:GetCompanyInfoResult&gt;
    Blah Blah....
    &lt;/tns:GetCompanyInfoResult&gt;
    &lt;tns:docs&gt;
    Blah Blah....
    &lt;/tns:docs&gt; Assume no data for 'logo', so it's not returned. Since all its elements can be nillable.
    &lt;tns:m2&gt;
    &lt;/soap:body&gt;
    &lt;/soap:Envelope&gt;
    First of all, is this SOAP response is valid? I'm not sure about *'message' and 'parts' in SOAP*, but according to XML schema standards it's invalid.
    Because, according to *'message' m2, 'logo' is missing*, eventhough all it's elements are nillable in such case there should be *&lt;logo/&gt;* at the end.
    I mean valid message should be like below
    &lt;soap:Envelope&gt; '*MESSAGE2*'
    &lt;soap:header/&gt;
    &lt;soap:body&gt;
    &lt;tns:m2&gt;
    &lt;tns:GetCompanyInfoResult&gt;
    Blah Blah....
    &lt;/tns:GetCompanyInfoResult&gt;
    &lt;tns:docs&gt;
    Blah Blah....
    &lt;/tns:docs&gt;
    *&lt;tns:logo/&gt; ------------------&gt; here is the change compared to above message. empty element.*
    &lt;tns:m2&gt;
    &lt;/soap:body&gt;
    &lt;/soap:Envelope&gt;
    Now the concerns are :
    (1) Which is a valid response? Message1 or Message2
    (2) If message1 is valid then why is weblogic throwing an exception 'null SOAP element', I suppose this is due to missing 'logo' element.
    (To confirm this I've used tcpmonitor and found message1 as response but weblogic is still throwing 'null SOAP Element' exception,
    which confirms it needs 'logo' as well, I suppose &lt;logo/&gt; at least). Is there any workaround for this in weblogic for multi-part messages?
    (3) If message1 is invalid according to SOAP standards then You've answered my question. ---&gt; I need to talk to the webservice provider in this case.....
    Thanks in advance...

    Message 1 is not Basic Profile 1.1 compliant. It is specified by BP1.1 in section 4.4.1(http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html#Bindings_and_Parts) that when a wsdl:part element is defined using the type attribute, the serialization of that part in a message is equivalent to an implicit (XML Schema) qualification of a minOccurs attribute with the value "1", a maxOccurs attribute with the value "1" and a nillable attribute with the value "false".

  • SOAP response message error

    Hi,
    We have a scenario where in we perform a synchronous send from a BPM and post the request to a url using a SOAP receiver channel.
    When we test the scenario,the message fails in PI with the following error "com.sap.engine.interfaces.messaging.api.exception.MessagingException: SOAP: response message contains an error XIAdapter/HTTP/ADAPTER.HTTP_EXCEPTION - HTTP 500 Internal Server Error"But when we try to test the same in SOAPUI by using the same payload,we do not have any issues in getting the response back.
    Please could anyone advise on what could be the issue.
    Thanks and Regards,
    Induja

    >
    Induja Ramesh wrote:
    > Resolved.
    How?

  • SOAP Response Message Capture in PI 7.1

    Hi
    I am working on Proxy to SOAP scenario and web service is synchronous to the external vendor,
    ECC Sends a message to External Vendor by using the Web service(ClaimSearch Request Proxy) and would be receiving the response back from the External vendor  by SOAP 
    I want to capture the SOAP response and send it to ECC by different proxy (ClaimSearch Response) proxy, 
    Do I need to use BPM to capture the response and sends it across to the ECC
    Please suggest how can I capture the SOAP response and send it to ECC,
    Thanks a lot in advance
    PR

    Hi!
    If your scenario is completely synchronous the sending proxy expects a response.
    If your scenario is asynch Proxy to synch SOAP, you can use the so-called asynch-synch bridge in BPM to achieve what you need.
    1. asynch send ECC Proxy to XI/PI BPM
    2. In BPM mapping and synch send XI/PI to SOAP Receiver
    3. In BPM synch receive of SOAP response
    4. in BPM decision which ECC Proxy is to be called asynchrobously
    5. if neccessary mapping
    6. asynch send response to ECC Proxy
    You can have a look at the process patterns delivered by SAP and search for synch/asynch resp. asynch/synch bridge in SDN and/or help.sap,com
    Hope this helps!
    Regards,
    Volker

Maybe you are looking for

  • How to copy movies from pc to itunes

    How can i copy movies from my computer to itunes? I already click "add to library" but nothing appears.Still no movies.Pls. help.thanks

  • Counter Sales Application

    Hello All, I need a suggestion on creating a counter sales application, Where in we have to create a custom ZVA1-Sales Order Create Screen for the Counter Sales. For eg: If we go to a store and pick up some stuff and u come to the counter and the guy

  • File linking in PDF

    I want to create one PDF file, where I want to create links (menu) to open 2 other files. At the end I want to record these files on DVD. How?

  • Request for Sample SAP Archive Project Plan

    Dear SAP Practitioner My firm is in the mist of planning for SAP Data archiving project. We are looking for sample SAP Data Archiving Project plan and other related documentations. We sincerely hope that you can share for the knowledge of our firm an

  • How to get best routing performance for 320n?

    Ok, I verified that the PC link is Gigabit and the WAN link is Gigabit. I should be able to pull speedtests down in the 100mbps range, which I can do if I bypass the 320n. However, with the 320n in place, I get about 60mbps speedtests, or 70mbps (whe