SOAP & Proxies

>>SOAP
What is use & advantage of SOAP adapter.. any example scenario on this..
>>Proxies
1. <b>Can't</b> we use ABAP Proxy (directly with out IDOC or RFC Adapter) to communicate with SAP R/3 Versions 4.6C and Below?
2. Can we use Java Proxy to communicate with SAP R/3.
Any example scenarios or blogs on this?
Thanks
J

Hi Jen,
I will just explain and give you scenarios to understand SOAP Adapter, Proxies in general, ABAP Proxy and JAVA Proxy.
<u><b>
SOAP RELATED:</b></u>
Sending a Simple SOAP envelope to XI via HTTP using ASP
https://www.sdn.sap.com/sdn/weblogs.sdn?blog=/pub/wlg/1442 [original link is broken]
More links for SOAP Adapter:
/people/siva.maranani/blog/2005/09/03/invoke-webservices-using-sapxi
http://help.sap.com/saphelp_nw04/helpdata/en/9f/fdca3f01f33e1ce10000000a114084/frameset.htm
http://help.sap.com/saphelp_nw04/helpdata/en/69/a6fb3fea9df028e10000000a1550b0/frameset.htm
<u><b>PROXIES IN GENERAL</b></u>
<b>
CLIENT PROXY:</b>
A WSDL description from a UDDI server (or an Internet page) is usually used to make a service executable in the Internet and to describe the interface of this service. You require a client proxy and not a server proxy to call this service by using the Web service infrastructure.
<b>SERVER PROXY:</b>
You can only generate ABAP server proxies from a WSDL description if they originate in the Integration Repository.You can also generate server proxies for Java and client proxies for ABAP from message interfaces.
To Know more about Client and Server Proxy Please go through these links:
<a href="http://help.sap.com/saphelp_nw04/helpdata/en/86/58cd3b11571962e10000000a11402f/content.htm">Proxy Generation</a>
<a href="http://help.sap.com/saphelp_nw04/helpdata/en/62/8a5f3c31727d59e10000000a114084/content.htm">Implementing a Server Proxy</a>
<a href="http://help.sap.com/saphelp_nw04/helpdata/en/9b/821140d72dc442e10000000a1550b0/content.htm">Data Transfer Using SAP XI</a>
<u><b>
ABAP PROXY</b></u>
Please go through the information provided in the blogs below which explains clearly about ABAP Proxies.
<a href="/people/ravikumar.allampallam/blog/2005/03/14/abap-proxies-in-xiclient-proxy Proxies in XI</a>
<a href="/people/siva.maranani/blog/2005/04/03/abap-server-proxies Server Proxies</a>
<a href="/people/prateek.shah/blog/2005/06/14/file-to-r3-via-abap-proxy to R/3 via ABAP Proxy</a>
<u><b>JAVA PROXY
</b></u>
You can refer to the articles by Sudhir on java proxies:
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/xi/java%20proxies%20and%20sap%20xi%20-%20the%20inside%20story%2c%20part%201.pdf
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/xi/java%20proxies%20and%20sap%20xi%20-%20the%20inside%20story%2c%20part%20ii.pdf
Also follow the link:
http://help.sap.com/saphelp_nw04/helpdata/en/97/7d5e3c754e476ee10000000a11405a/frameset.htm
I hope the info above has helped you understand SOAP adapters and Proxies better.
Regards,
Abhy

Similar Messages

  • Google WebService SOAP Help

    Hello,
    has anybody been able to get the Google WebService example working (access to external services) in EP6?
    I get weird errors from PROXY settings or XML response format exceptions depending on proxy settings.
    I have no need for proxy but direct connection and can perfectly read a Google URL from within my component.
    Environment is EP6 SP2 Patch 3 + Eclipse 2.1.3.
    I am also facing a problem with NetWeaver Developer Studio 2.0.5 not generating soap proxies correctly (it adds method calls to retrieve cookies from the soap response; these methods are not implemented in the interface).
    I have developed my own soap service on an EP6 and a client running on another EP6 and this works perfectly. Still no way to access Google.
    Obviously I have my own account key in google to access the api and I can make it work outside EP6.
    Something to do with http chunking?
    PLEASE HELP !

    Exception
    com.inqmy.lib.xml.parser.ParserException: XMLParser: No data allowed here:51a (:main:, row:1, col:3)
            at com.inqmy.lib.xml.parser.XMLParser.scanProlog(XMLParser.java:2467)
            at com.inqmy.lib.xml.parser.XMLParser.scanDocument(XMLParser.java:2505)
            at com.inqmy.lib.xml.parser.XMLParser.parse0(XMLParser.java:151)
            at com.inqmy.lib.xml.parser.AbstractXMLParser.parseAndCatchException(AbstractXMLParser.java:110)
            at com.inqmy.lib.xml.parser.AbstractXMLParser.parse(AbstractXMLParser.java:127)
            at com.inqmy.lib.xml.parser.AbstractXMLParser.parse(AbstractXMLParser.java:195)
            at com.inqmy.lib.xml.parser.DOMParser.parse(DOMParser.java:90)
            at com.inqmy.lib.xml.parser.DOMParser.parse(DOMParser.java:142)
            at com.inqmy.lib.jaxm.soap.SOAPPartImpl.parseDocument(SOAPPartImpl.java:60)
            at com.inqmy.lib.jaxm.soap.SOAPPartImpl.setContent(SOAPPartImpl.java:220)
            at com.inqmy.lib.jaxm.soap.SOAPMessageImpl.<init>(SOAPMessageImpl.java:76)
            at com.inqmy.lib.jaxm.soap.MessageFactoryImpl.createMessage(MessageFactoryImpl.java:40)
            at com.inqmy.lib.jaxm.soap.SOAPConnectionImpl.call(SOAPConnectionImpl.java:160)
            at com.sapportals.portal.prt.service.soap.SOAPService.call(SOAPService.java:149)
            at com.sapportals.portal.prt.service.soap.PRTSOAPCall.invokeMethod(PRTSOAPCall.java:209)
            at com.whr.google.client.GoogleSearch.doGoogleSearch(GoogleSearch.java:321)
            at com.whr.google.client.Google.doContent(Google.java:49)
            at .............

  • Messages are in Tobedelivered...

    Dear Experts,
    I am getting an issue in Engine status, messages are in Tobedelivered State, Engine status --> backlog Monitoring also shows so many messages.
    After some time those are going, but here when i am checking Addition Data--> Threads those are fully utilized 15/15.
    We maintained Thread count is 250 and We are assigned worker threads for asyn and sync 15,15,12,12.
    suggest me how to resolve this issue.
    Regards,
    Kiran Polani

    Dear Ansari,
    We are currently in sap pi 7.0, we are using only AtoA applications. like jdbc,rfc,soap,proxies. java nodes are one.
    Yes
    0
    0 / 0
    15
    File_http://sap.com/xi/XI/SystemCall
    Yes
    0
    0 / 0
    12
    File_http://sap.com/xi/XI/SystemRecv
    Yes
    0
    0 / 0
    15
    File_http://sap.com/xi/XI/SystemRqst
    Yes
    0
    0 / 0
    12
    File_http://sap.com/xi/XI/SystemSend
    RFC_http://sap.com/xi/XI/SystemCall
    Yes
    0
    0 / 0
    12
    RFC_http://sap.com/xi/XI/SystemRecv
    Yes
    0
    0 / 0
    15
    RFC_http://sap.com/xi/XI/SystemRqst
    Yes
    0
    1 / 1
    12
    RFC_http://sap.com/xi/XI/SystemSend
    Yes
    0
    0 / 0
    15
    SOAP_http://sap.com/xi/XI/SystemCall
    Yes
    0
    4 / 4
    12
    SOAP_http://sap.com/xi/XI/SystemRecv
    Yes
    0
    0 / 0
    15
    SOAP_http://sap.com/xi/XI/SystemRqst
    Yes
    0
    0 / 0
    12
    SOAP_http://sap.com/xi/XI/SystemSend
    Yes
    0
    0 / 0
    15
    JDBC_http://sap.com/xi/XI/SystemCall
    Yes
    0
    0 / 0
    12
    JDBC_http://sap.com/xi/XI/SystemRecv
    Yes
    121
    15 / 15
    15
    JDBC_http://sap.com/xi/XI/SystemRqst
    Yes
    0
    0 / 0
    12
    JDBC_http://sap.com/xi/XI/SystemSend
    Yes
    0
    0 / 0
    15
    1) we are allocating thread count is 250, what is the maximum value we can increase threadcount?
    2) worker threads are assigend for system call is 12, systemRqst is 12 and system Recv 15 and SystemSend is 15. is these values are ok. or we can change.?
    3) from which value we can change and can we change the value adapter wise.?
    We are facing issue for soap and jdbc adapters those are using all resource from given.
    Please suggest me what we can do for this.?
    Regards,
    Kiran polani

  • File Adapter Attachments

    Hi Friends,
       I am trying a simple scenario File -> XI -> File.In this scenario i have to send an attachment also along with the message. I have done with sender file adapter, but the problem is how can i handle the attachments in receiver file adapter. Means i just want to create the attachment on the receiver side with the same name.
          But when i activate the scenario only one file is getting created i.e message payload. I can't see the attachment there. Do i need to do any extra settings for this scenario....

    Hi,
    >>>Do u mean to say File adapter attachments concept is used only when the receiver is Mail adapter ?????
    of course not
    many apdater support attachments
    (like SOAP, proxies, mail)
    but in case of file adapter it only works with
    sender adapter
    if you want to achive your scenarion
    you can create a simple java proxy
    in which you will take the payload
    and attachments and put them somewhere
    (folder etc)
    but you need to do a little programming to do that
    Regards,
    michal
    <a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions"><b>XI / PI FAQ - Frequently Asked Questions</b></a>

  • Building client proxies for web services with SOAP attachemtns

    Hi all.
    I'm currently building a series of web services that take SOAP attachments as
    input, but I am unable to generate the java proxies for testing the services via
    WebLogic Workshop 8.1. When I attempt to build the proxy, I get the following
    error:
    Warning: Failed to generate client proxy from WSDL definition for this service.
    Suggestion: Please verify the <types> section of the WSDL.
    Is there something I need to alter to get this to work, or does workshop not support
    client proxies for web services with DataHandler parameters?
    Thanks.
    -Brian

    Thanks for the help. This is my first web service with SOAP attachments, so it
    may have been a long time till I realized that.
    -Brian
    "Michael Wooten" <[email protected]> wrote:
    >
    Thanks Brian,
    The problem is that you are trying to use the "document" soap-style :-)
    If you change this to "rpc", you'll should be able to successfully generate
    the
    client proxy jar. The soap-style property, is at the bottom of the "protocol"
    property sheet section, for the JWS.
    Regards,
    Mike Wooten
    "Brian McLoughlin" <[email protected]> wrote:
    Sure, sorry about that. Attached is the wsdl for a sample web service
    I created
    just to test the proxy generation.
    "Michael Wooten" <[email protected]> wrote:
    Hi Brian,
    Would it be possible for you to post the WSDL, so we can see what might
    be causing
    the problem?
    Regards,
    Mike Wooten
    "Brian McLoughlin" <[email protected]> wrote:
    Hi all.
    I'm currently building a series of web services that take SOAP attachments
    as
    input, but I am unable to generate the java proxies for testing theservices
    via
    WebLogic Workshop 8.1. When I attempt to build the proxy, I get the
    following
    error:
    Warning: Failed to generate client proxy from WSDL definition for
    this
    service.
    Suggestion: Please verify the <types> section of the WSDL.
    Is there something I need to alter to get this to work, or does workshop
    not support
    client proxies for web services with DataHandler parameters?
    Thanks.
    -Brian

  • Soap 1.2 in ABAP client proxies

    Hi!
    Anyone knows when we will have SOAP 1.2 support in the standalone ABAP proxies. Currently in NW7.0 only SOAP 1.1 seems to be supported (right?).
    Information on MTOM, SOAP w. attachments support for standalone ABAP prixies would also be useful...
    Regards,
    Christian

    Hi Andreas,
    SOAP 1.2 is not supported, neither in WebAS 6.20 nor in 6.40 as far as I know support is not planed even for next magor release...
    The only what I can propose you is to create an OSS and check what shall SAP answer you,
    or to downport your applicaiton.
    Regards, Angel

  • SAP PI 7.4 SOAP - ABAP Proxy Synchronous Webservice

    Hi Everyone,
    I am developing the following scenario:
    3rd party makes a SOAP call to SAP (via PI) to determine whether a vendor exists or not in the SAP system. The link for the call is provided by us from the Integrated Configuration.
    The request comes in, calls an ABAP Proxy to check if a vendor exists and sends a response back to the SOAP call with a 'Y' or an 'N'.
    I've read a lot about various scenarios but I'm having trouble connecting the dots as I'm fairly new to PI. I'd appreciate any help.
    I've made the following set-up based on assuming I need separate Service Interfaces for the SOAP Request & Proxy Response
    ESR
    1. Message Types
         SOAP (MT_SOAP_REQ & MT_SOAP_RESP) - PROXY (MT_PRXY_REQ & MT_PRXY_REQ)
    2.  Message Mappings
         MM_REQUEST    which maps MT_SOAP_REQ   to  MT_PRXY_REQ)
         MM_RESPONSE which maps MT_PRXY_RESP   to MT_SOAP_RESP)
    3. Service Interfaces (Synchronous)
        (SOAP Request)
        SI_IN (Inbound Interface)       with Request = MT_SOAP_REQ and Response = MT_SOAP_RESP
       (Proxy Response)
        SI_OUT (Outbound Interface) with Request = MT_PRXY_REQ and Response  = MT_PRXY_RESP 
    4. Operation Mapping
        OM_LOOKUP which maps SI_IN to SI_OUT with Request    (MT_SOAP_REQ  to MT_PRXY_REQ)
                                                                        and  Response (MT_SOAP_RESP to MT_PRXY_RESP)
    I create the ABAP Proxies for each Service Interface. SI_IN contains the required coded method to check if there is a vendor.
    I create the webservice and binding for SI_IN in SOAMANAGER
    At this point I'm somewhat unsure - what do I need to do for SI_OUT ? Do I need to create a logical port ? how is SI_OUT associated to SI_IN (apart from the Operation)  to get the response.
    ID
    In the Integration Directory I've created a SOAP_SENDER communication channel for System A and SOAP_RECEIVER channel for SAP.  For the SOAP Receiver I need to specify a URL - what should this be ? Is it meant to point to the web service for SI_IN in SICF or just to the generic http://host:8000/sap/xi/engine?type=entry 
    Do I need to use the HTTP_AAE adapter for the receiver instead of SOAP ?
    I created an Integrated Configuration for the SI_IN Service Interface with comm channel SOAP_SENDER from System A and SOAP_RECEIVER for SAP backend.  I then got the WSDL for this to provide to the 3rd Party to test (via SOAP UI)  . Again my concern is how is the SI_IN linked to the SI_OUT to achieve the response ?
    I appreciate you taking the time to go through this .  Any help is greatly appreciated.
    Thanks very much
    Gary

    I create the webservice and binding for SI_IN in SOAMANAGER
    At this point I'm somewhat unsure - what do I need to do for SI_OUT ? Do I need to create a logical port ? how is SI_OUT associated to SI_IN (apart from the Operation)  to get the response.
    >>>>No need to do anything in SOAMANAGER
    Do I need to use the HTTP_AAE adapter for the receiver instead of SOAP ?
    >>> No. Soap adapter is fine. Configure your receiver channel as explianed in the below blog (section 4.3)
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/70066f78-7794-2c10-2e8c-cb967cef407b?overridelayout=t…
    Again my concern is how is the SI_IN linked to the SI_OUT to achieve the response ?
    >>>>Your receiver determination and interface determination takes care of this.(receiver interface  & outbound processing tabs in ICo)

  • SOAP Web Service Authentication configuration

    Hello,
    I've got a little problem with Web Service authentication configuration.
    I'm working on the SAP NetWeaver CE EHP1 7.11. I also have a XMII application deployed on the server and there are some SOAP Web Services(over XMII Transactions) that require basic authentication.
    I use all Web Services in the EJB layer. So, I've generated proxy using SAP NetWeaver as a Web Service Runtime for generation. And Iuse an injection mechanism to get a service implementation:
    @WebServiceRef(name="GetBatchListService")
    private XacuteWS batchListWS;
    In this case I could use Single Service Administration application in the NetWeaver Administrator@SOA Management@Application and Scenario Communication to configure basic authentication for EVERY Web Service. And this configuration disappears after every redeploy.
    The question is how and where could I configure authentication for all web services?
    I've read a lot of documentation, but, unfortunately, I haven't found needed one. I could see 2 direction of searching now, it might help:
    1) Destination: Configure HTTP Destination or Web Service Template Destination and use it in all Web Services proxies somehow.
    2) Find Configuration way: Create a configuration group or anything else to configure all services from one screen.
    Best Regards,
    Dmitry

    Dimtris,
    If your WSDL url is pointing to the URL of the Adapter Engine as shownin the Hot to Use the SOAP adapter there is no option. You cannot add it to the SOAP Url.
    But, if you change the SOAP Url to the Url shown in this blog by Stefan Grube then you can add the user id and pasword to the url by adding sap- user=userid and sap-password = password.
    The optin shown ion the blog by Grube can be used as long as you do not have to use SOAP attachments and in this  case you would not need both sender SOAP adapter and a sender agreement.
    /people/stefan.grube/blog/2006/09/21/using-the-soap-inbound-channel-of-the-integration-engine
    Regards
    Bhavesh
    Regards
    Bhavesh

  • Java.rmi.RemoteException: SOAP Fault:javax.xml.rpc.soap.SOAPFaultException

    Hi, I created a webservice using weblogic8.1 sp3 workshop. On my desktop, I tested the webservice with a java client and it worked fine. When I deployed webservice application on UNIX production server, it deployed successfully and it displayed WSDL file too. But, when I run java client from desktop to access this webservice on UNIX server, it is throwing the following exception.
    java.rmi.RemoteException: SOAP Fault:javax.xml.rpc.soap.SOAPFaultException: EXCEPTION: java.lang.NoClassDefFoundError [ServiceException]
    Detail:
    <detail>
    null </detail>; nested exception is:
    javax.xml.rpc.soap.SOAPFaultException: EXCEPTION: java.lang.NoClassDefFoundError [ServiceException]
    at weblogic.jws.proxies.MyServiceSoap_Stub.getInfo(MyServiceSoap_Stub.java:31)
    at SoapClient.main(SoapClient.java:17)
    Caused by: javax.xml.rpc.soap.SOAPFaultException: EXCEPTION: java.lang.NoClassDefFoundError [ServiceException]
    at weblogic.webservice.core.ClientDispather.receive(ClientDispatcher.java:313)
    at weblogic.webservice.core.ClientDispatcher.dispatch(ClientDispatcher.java:144)
    at weblogic.webservice.core.DefaultOperation.invoke(DefaultOperation.java:457)
    at weblogic.webservice.core.DefaultOperation.invoke(DefaultOperation.java:443)
    at weblogic.webservice.core.rpc.StubImpl._invoke(StubImpl.java:290)
    at weblogic.jws.proxies.MyServiceSoap_Stub.getInfo(MyServiceSoap_Stub.java:26)
    can somebody please help me. This is very critical for me.
    Thanks in advance.

    Hi, I created a webservice using weblogic8.1 sp3 workshop. On my desktop, I tested the webservice with a java client and it worked fine. When I deployed webservice application on UNIX production server, it deployed successfully and it displayed WSDL file too. But, when I run java client from desktop to access this webservice on UNIX server, it is throwing the following exception.
    java.rmi.RemoteException: SOAP Fault:javax.xml.rpc.soap.SOAPFaultException: EXCEPTION: java.lang.NoClassDefFoundError [ServiceException]
    Detail:
    <detail>
    null </detail>; nested exception is:
    javax.xml.rpc.soap.SOAPFaultException: EXCEPTION: java.lang.NoClassDefFoundError [ServiceException]
    at weblogic.jws.proxies.MyServiceSoap_Stub.getInfo(MyServiceSoap_Stub.java:31)
    at SoapClient.main(SoapClient.java:17)
    Caused by: javax.xml.rpc.soap.SOAPFaultException: EXCEPTION: java.lang.NoClassDefFoundError [ServiceException]
    at weblogic.webservice.core.ClientDispather.receive(ClientDispatcher.java:313)
    at weblogic.webservice.core.ClientDispatcher.dispatch(ClientDispatcher.java:144)
    at weblogic.webservice.core.DefaultOperation.invoke(DefaultOperation.java:457)
    at weblogic.webservice.core.DefaultOperation.invoke(DefaultOperation.java:443)
    at weblogic.webservice.core.rpc.StubImpl._invoke(StubImpl.java:290)
    at weblogic.jws.proxies.MyServiceSoap_Stub.getInfo(MyServiceSoap_Stub.java:26)
    can somebody please help me. This is very critical for me.
    Thanks in advance.

  • Handling of SOAP Faults in SOAP Clients consuming PI Web services

    Hi there,
    the following is in regards to SOAP fault error handling in a SOAP client that consumes a Web Service published by PI.
    I have been reading a number of threads and blogs in regards to this topic and I am still left with some open questions which I hope to get some final answersclarifications through this thread.
    In particular the blogs
    Handling Web Service SOAP Fault Responses in SAP NetWeaver XI      - Handling Web Service SOAP Fault Responses in SAP NetWeaver XI
    XI: Propagation of meaningful error information to SOAP Client     - XI: Propagation of meaningful error information to SOAP Client
    have caused by attention.
    Both of these threads are realating to the Fault Message type one can use to return errors back to a SOAP Client (.Net, Java, etc.).
    In our scenario we published a number of Web Services through PI that provide functionality to integrate with an R3 back-end system using inbound ABAP Proxies.
    The services are standardised and will be consumed by a number of .NetJava applications and systems. The reason for the use of ABAP proxies is the customer specific application logic that is executed in the backend system. The Web services are synchronous and don't use ccBPM in the middle. Transformations are performed in PI combined with various lookups to set default values before the message is passed into the ABAP Framework of the R3 back-end system. The lookups are done against the R3 back-end system using the PI RFC Lookup feature.
    The inbound proxies currently return application errors as part of the response message back to the SOAP client. For more critical errors we introduced the use of Fault message types as the method to return the information back to the SOAP Client. This is all working satisfactory.
    The questions I have are as follows.
    1. When an error occurs at the IE level (e.g. mapping error), ABAP Proxy framework level (e.g. conversion from XML to ABAP format) or Adapter Framework level (Adapter releated error) a different SOAP fault message structure is returned to the SOAP Client than the one    used for the application errors. The SOAP fault message structure used in this case is the standard SOAP fault used by PI to return system errors back to the caller. For those SOAP fault messages there is no payload generated that could be mapped to the SOAP fault structure used for the application errors. This would be preferrable as there would be only one Fault message structure used for both inbound ABAP proxy generated fault messages and PI generated fault messages.
    Also the error messages generated by PI can be quite cryptic and difficult to interpret at the client end and could be filtered     ranslated during message mapping if the payload of the PI generated SOAP fault message could be accessed in a message mapping.
    Point 3 of the above thread 2759 indicates that this would be possible but doesn't outline how. Could somebody please clarify this for me as I don't believe that this is really possible ???.
    My idea instead was to use the PI SOAP fault message structure to also return application errors. Therefore I would create a Fault message type that matches the PI SOAP fault structure. This would enable the SOAP Client to handle only one SOAP Fault error structure. Would that be something to look into instead ?????.
    2. We have been looking at using the integrated WEB AS SOAP adapter instead of using the AF Sender SOAP adapter. While playing with this we encountered differences in the content returned through the SOAP fault generated by PI. A sample is below. Shouldn't the content of these SOAP faults be the same if the error that caused it is the same. Also the SOAP fault returned by the IE SOAP adapter is much more    useful in this particular case. Both errors below are the same, a conversion error from XML to ABAP took place in the inbound ABAP proxy framework of the back-end system.
    SOAP fault returned when using SOAP Sender adapter of AF
    <!see the documentation>
    <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
       <SOAP:Body>
          <SOAP:Fault>
             <faultcode>SOAP:Server</faultcode>
             <faultstring>Server Error</faultstring>
             <detail>
                <s:SystemError xmlns:s="http://sap.com/xi/WebService/xi2.0">
                   <context>XIAdapter</context>
                   <code>ADAPTER.JAVA_EXCEPTION</code>
                   <text>com.sap.aii.af.ra.ms.api.DeliveryException: XIProxy:PARSE_APPLICATION_DATA:
         at com.sap.aii.adapter.xi.ms.XIEventHandler.onTransmit(XIEventHandler.java:455)
         at com.sap.aii.af.ra.ms.impl.core.queue.consumer.CallConsumer.onMessage(CallConsumer.java:134)
         at com.sap.aii.af.ra.ms.impl.core.queue.Queue.run(Queue.java:916)
         at com.sap.aii.af.ra.ms.runtime.MSWorkWrapper.run(MSWorkWrapper.java:56)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(Native Method)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:102)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:172)</text>
                </s:SystemError>
             </detail>
          </SOAP:Fault>
       </SOAP:Body>
    </SOAP:Envelope>
    SOAP fault using integrated SOAP adapter of PI IE
    <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
       <SOAP:Body>
          <SOAP:Fault>
             <faultcode>SOAP:Server</faultcode>
             <faultstring>System Error</faultstring>
             <detail>
                <s:SystemError xmlns:s="http://sap.com/xi/WebService/xi2.0">
                   <context/>
                   <code>ABAP.PARSE_APPLICATION_DATA</code>
                   <text>Error during XML => ABAP conversion (Request Message; error ID: CX_ST_DESERIALIZATION_ERROR; (/1SAI/TXSBE20FF604BAFEF8D990A XML Bytepos.: 564  XML Path: ns1:CreatePORequest(1)POHEADER(2)COMP_CODE(1) Error Text: Data loss occurred when converting ############################## Kernel ErrorId: CONVT_DATA_LOSS))</text>
                </s:SystemError>
             </detail>
          </SOAP:Fault>
       </SOAP:Body>
    </SOAP:Envelope>
    I have been reading threads for hours without being able to find one that answers questions 1 or provides a blog that outlines the approach one should take for error handling in SOAP clients that consume PI Web Services (and covers both PISystem generated faults and faults raised in Proxies).
    There may already be a blog or thread and I just missed it.
    Any comments are welcome.
    Thanks. Dieter

    Hi Dieter,
    As Bhavesh already mentioned fault messages are used for application errors. The same is described in SAP XI help:
    http://help.sap.com/saphelp_nw04/helpdata/en/dd/b7623c6369f454e10000000a114084/frameset.htm
    In case of system error (e.g. field length too long in proxy call or error in XI/PI mapping) there seems to be no standard way of handling it and propagating the response to the consumer of webservice.
    Each system error is not recognized by SOAP adapter and SOAP adapter exception is raised.
    The only bizzare solution that I can see is developing an adapter module and transport wrong message to standard fault message before delivering it to adapter engine:
    http://help.sap.com/saphelp_nw04/helpdata/en/a4/f13341771b4c0de10000000a1550b0/frameset.htm
    Kind regards,
    Wojciech
    btw nice thread

  • ABAP proxies in PI 7.0 to WebServices in PI 7.1

    Hi guys,
    I currently use ABAP proxies with my PI 7.0 and I was wondering if I could publish them as web services in my ESR if I upgrade to PI 7.1. Does anyone know ?
    Many thanks
    Best regards,
    GL

    Hi Guislain !
    You can expose your abap proxies as webservices also with PI 7.0. Just create Proxy-PI-SOAP scenarios, and consume them as webservices directly from NetWeaver. We are using this without problems. The only thing, you lack of an integrated registry of services.
    Regards,
    Matias.

  • Use of XI adapter in ABAP proxies

    Hey Guys
    i was going through some blogs and came across that we need XI adapter for ABAP proxies,i had thought that proxies are used for adapterless communication,then why is the need for XI adapter?i know XI adapter is used to transfer XML messages to/from sender/receiver system.
    also do we always need to use XI adapter for proxy communication?
    thanx
    ahmad

    Hi,
    The use of adapter here is to communicate the Integration Server with respective ApplcatioN System. ie, R.3 or any SAP system which is configured as an Application System to the XI.
    Proxies communicate with the XI server by means of native SOAP calls over HTTP . SO you need to mention the integration server to point/connect to correct application system during runtime.
    http://help.sap.com/saphelp_nw2004s/helpdata/en/85/78af1bf407434796aaf8dbd6d4e7b7/content.htm
    Hope this helps,
    Regards,
    Moorthy

  • Getting error in a soap proxy from an applet

    Hi, I'm getting error in Applet window while it trying to get the SOAP PROXY from Applet. Does any one came cross this type of the problem? Please help!!!
    <b>Description:</b>
    I am using BEA workshop 8.1.4, I have created JSP which contain the Applet. Applet has following two and more tags.
    codebase="/bea_wls_internal/classes/aanDemoTest@DemoWeb"
    code="ConnectionApplet"
    Where "ConnectionApplet" is simple java class extended from JApplet. Which try to get Java Proxy.
    <b>Code Section:</b>
    weblogic.jws.proxies.RmGetApi_Impl proxy =
    new weblogic.jws.proxies.RmGetApi_Impl(RMurl);
    RMClientProxy = proxy.getrmGetApiSoap();
    FYI: I have created client jar and webserviceclient jar a describe in one of the BEA Doc. Everything builds fine. But I am getting Error when I try to access from web(IE).
    <b>Error in JAVA-Plug-IN window:</b>
    unable to find the type mapping resource file for:weblogic.jws.proxies.rmGetApi
    I turn on the debug option in PLUG-IN and it show me that it trying to access the - rmGetApi.xml which is part of the clientjar file and it is not finding.I also test from my browser I can access the RmGetApi.class but I can't access the XML which is in same jar.

    Which window handle your talking about? Browser window?
    If so use the netscape.javascript pacakage
    import netscape.javascript.*;
    JP

  • Soap to abap proxy

    Hi,gurus:
        I wanna to configure a scenario about soap to abap proxy,do you have any step by step configurations about that?Any help will be appreciated!

    Sender SOAP Adapter
    Receiver RFC/IDOC/ABAP proxies.
    IR
    Step 1:
    Create the Sender/Receiver Datatypes for Request & Response
    step2:
    Create the MT for Req & Res
    Step3 :
    Create OB Message Interface ( Syncronous) /IB Message Interface( Synchronous)
    step5 :
    Request Mapping : Sender Req MT--> REcv Req
    Response Mapping : Recv Res----->Sender Res MT
    Step6:
    Interface Mapping
    ID
    Step1 :
    Configure Sender Soap Adapter
    Step2 :
    Configure Receiver XI  Adapter
    Step 3: Configure Sender Agreement, receiver determination,Interface determination,Receiver agreement
    Step 4:
    Create WSDL file.( ID->tools-Defien webservice)
    save the file as .wsdl file
    Give the file to sender system
    SAP System
    Step 1:
    Goto Sproxy T.code -> select IB interface -. Right click create object ,it will automatically create aproxy class.
    Step2 ;
    write an ABAp program to send the data to class.
    Below weblog helps in wrting  ABAP program
    File to R/3 via ABAP Proxy
    Regards,
    Jayasimha

  • "SOAP:Fault" in scenario with ABAP proxy client

    Hello,
    I realized the scenario CRM40_Basis620(ABAP proxy client)->XI->File.
    XI:
    The sender communication channel is a XI adapter (Parameters: HTTP 1.0, XI 3.0, Integration Server, Security profile unchecked, Security level - HTTP).
    CRM:
    The proxy generation is ok.
    SLDCHECK is ok.
    All RFC destinations are ok.
    APPINT_200_620 for CRM was installed and configured well (I think so, but...).
    When I ran the ABAP proxy client on CRM, sxmb_moni(CRM) returned the text for the XML Message (Display-CallIntegrationServer-Payloads-TraceDocument):
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <SAP:TraceHeader xmlns:SAP="http://sap.com/exchange/MessageFormat">
      <Trace level="1" type="B" name="CL_XMS_TROUBLESHOOT-ENTER_PLSRV" />
      <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="1" type="T">system-ID = EST</Trace>
      <Trace level="1" type="T">client = 300</Trace>
      <Trace level="1" type="T">language = E</Trace>
      <Trace level="1" type="T">user = BABKIN_RA</Trace>
      <Trace level="1" type="Timestamp">2007-08-06T13:55:12Z</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 = DC4424A659314CF18F500002A541D0E7</Trace>
      <Trace level="1" type="T">PLNAME = SENDER</Trace>
      <Trace level="1" type="T">QOS = EO</Trace>
      <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PIPELINE_ASYNC" />
    - <!--  ************************************
      -->
      <Trace level="1" type="T">Get definition of external pipeline = SENDER</Trace>
      <Trace level="1" type="T">Get definition of internal pipeline = SAP_SENDER</Trace>
      <Trace level="1" type="T">Generated prefixed queue name = XBTS0004</Trace>
      <Trace level="1" type="T">Setup qRFC Scheduler OK!</Trace>
      <Trace level="1" type="T">----
    </Trace>
      <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">- Exit CALL_PIPELINE_ASYNC</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="1" type="B" name="CL_XMS_MAIN-PERSIST_READ_MESSAGE" />
      <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="1" type="T">----
    </Trace>
      <Trace level="1" type="T">Starting async processing with pipeline SENDER</Trace>
      <Trace level="1" type="T">system-ID = EST</Trace>
      <Trace level="1" type="T">client = 300</Trace>
      <Trace level="1" type="T">language = E</Trace>
      <Trace level="1" type="T">user = BABKIN_RA</Trace>
      <Trace level="1" type="Timestamp">2007-08-06T13:55:12Z</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 pipeline PID= SENDER</Trace>
      <Trace level="1" type="B" name="CL_XMS_MAIN-LOOKUP_INTERNAL_PL_ID" />
    - <Trace level="1" type="B" name="PLSRV_CALL_INTEGRATION_SERVER">
      <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV" />
    - <!--  ************************************
      -->
      <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL" />
    - <!--  ************************************
      -->
    - <Trace level="1" type="B" name="CL_XMS_PLSRV_CALL_XMB-ENTER_PLSRV">
      <Trace level="1" type="T">URL for integration server read from global configuration</Trace>
      <Trace level="1" type="T">URL= http://SRMDEV.oao.sng:8011/sap/xi/engine?type=entry</Trace>
      <Trace level="1" type="B" name="CL_XMS_MAIN-SET_TECHNICAL_ROUTING_PROPERTY" />
    - <Trace level="1" type="B" name="CL_XMS_PLSRV_CALL_XMB-CALL_XMS_HTTP">
      <Trace level="1" type="System_Error">HTTP-client: error response= <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP:Header> </SOAP:Header> <SOAP:Body> <SOAP:Fault xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/"><faultcode>SOAP:Client</faultcode><faultstring>Error during conversion of XI message</faultstring><faultactor>http://sap.com/xi/XI/Message/30</faultactor><detail><SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1"><SAP:Category>XIServer</SAP:Category><SAP:Code area="SECURITY">INBOUND_SECURE_LEVEL</SAP:Code><SAP:P1>DC4424A659314CF18F500002A541D0E7</SAP:P1><SAP:P2/><SAP:P3>HTTP</SAP:P3><SAP:P4/><SAP:AdditionalText/><SAP:ApplicationFaultMessage namespace=""/><SAP:Stack>Message DC4424A659314CF18F500002A541D0E7 was sent with ''. Channel configuration, however, requires 'HTTP' </SAP:Stack></SAP:Error></detail></SOAP:Fault> </SOAP:Body> </SOAP:Envelope></Trace>
      </Trace>
      <Trace level="1" type="System_Error">Exit XMB because of system error!</Trace>
      <Trace level="1" type="System_Error">System-Error: HTTP.HTTP_STATUS_CODE_NEQ_OK</Trace>
      <Trace level="1" type="System_Error">HTTP status code 500 : Error during conversion of XI message</Trace>
      <Trace level="1" type="B" name="CL_XMS_TROUBLESHOOT-ENTER_PLSRV" />
      </SAP:TraceHeader>
    I think the main problem is the parameter "HTTP Security level" for the channel, but not sure.
    Does anybody know where to find a solution?
    Regards,
    Roman

    Hi Roman
    There is no need for an XI adapter for client proxy.... we only use that for server proxies.
    Vaibhav

Maybe you are looking for

  • Getting AIP-51083 Error

    Hi, I'm trying to setup transfer using HTTPS. I'm using B2B 10.1.2.0.2 with patch 6673231 I created a self signed cert with a similar command: orapki wallet add -wallet /hub02/app/oracle/product/64bit/OAS101/Apache/Apache/conf/ssl.wlt/default -dn 'CN

  • Artifacts in updated folios

    Recently I have had significant issues with artifacts from older builds sticking around or new builds not updating at all. The issue can almost always be fixed by updating the article again and redownloading the folio. The only problem is that this t

  • Can't build "hprof.dll" on Windows [JDK5.0]

    Hello everyone! Now,I am trying to build "hprof.dll" on windows, because I want to customize "Hprof".The "hprof" source code is included in "JDK DEMO(see %JAVA_HOME%\demo\jvmti\hprof\src)". I have not changed the source code at all. However,Building

  • My computer is blocking firefox from loading from the logo shortcut it prompts me to choose a program to open it!

    1.I click on logo. 2.a window opens that says I must choose from a list of programs to open it. 3. The list includes Adobe, Internet exp. and a couple others. 4. No matter what I choose, another window pops up 5. That window says Run or Save. 6. I cl

  • Why is my Mountain Lion download hanging after 53 MB

    I am trying to download Mountain Lion from the AppStore and am unable to complete the download.  I have a MacBook Pro from early 2011 with OS 10.6.8 (Snow Leopard).  I have done the partial download multiple times, trying to pause and resume as well