SOAP in Integration Engine

Hi,
     I got a basic doubt...XI uses SOAP message, is this is up to SOAP (1.1 or 1.2 ) specification by W3C or SAP's proprietary format of SOAP ? can we call SOAP message instead of XML message directly? is that technically correct ?
Thanks and Regards
Mahesh.

Hi Mahesh,
XI uses <b>XI Message Protocol</b> for Internal Communication.
The XI Message Protocol is based on XML and SOAP.
I think this link clear your doubts regarding this.
http://help.sap.com/saphelp_nw70/helpdata/en/b6/0b733cb7d61952e10000000a11405a/frameset.htm
Hope it is helpful
Cheers,
Ramesh P

Similar Messages

  • Mail-Adapter Integration Engine Error during parsing of SOAP header

    Hello,
    we use XI with the mail adapter. Most of the messages are processed correctly. But sometimes I get following errors in the J2EE-logviewer:
    Transmitting the message to endpoint http://<xi-host>:<http-port>/sap/xi/engine
    ?type=entry using connection AFW failed, due to: com.sap.aii.af.ra.ms.a
    pi.RecoverableException: Received HTTP response code 500 : Error during
    parsing of SOAP header.
    Failed to transmit message 4e913640-4cc5-11dc-8560-00e000c55366(OUTBOUND)
    due to com.sap.aii.af.ra.ms.api.RecoverableException: Received HTTP
    response code 500 : Error during parsing of SOAP header.
    Retries exceded, set message
    4e913640-4cc5-11dc-8560-00e000c55366(OUTBOUND) to status NON_DELIVERED.
    Has somebody else the same problem and solved it or any idea what the matter could be?
    Thanks for your help
    Christian

    Hi Reddy,
    We´ve got the following scenario:
    Exchange-Server (is always up)
    XI Mail-ReceiverAdapter
    I use IMAP4 to access the Outlook-Email-Box
    Everything works fine. But some Emails aren´t processed.
    I think it´s a problem between adapterframework and the integration engine?
    There is no difference between the emails?
    If you´ll need further informations ask me?
    Thanks

  • Using the SOAP inbound channel of the Integration Engine

    Hi,
    I am following the blog of Stefan Grube.
    /people/stefan.grube/blog/2006/09/21/using-the-soap-inbound-channel-of-the-integration-engine
    However I have difficulties.
    Is this blog still relevant for SAP PI7.10?
    I have set this up as a test for a scenario I have.
    Current Scenario NOT using your Blog and working perfectly.
    SandBox PI       Development PI
    File > SOAP  >   SOAP > ABAP Proxy
    What I am attempting now is.
    SandBox PI      Development PI
    File > SOAP  >  Integration Engine > ABAP Proxy
    I am using our SAP PI Sandbox to push a SOAP message using a Receiver SOAP adapter channel.
    Transport Protocol: u201CHTTPu201D
    Message Protocol: u201CSOAPu201D
    Conversion Parameters:      u201CDo not Use SOAP Envelopeu201D
    Target URL: u201Chttp://<Integratio Server Host Development PI>:<Port>/sap/xi/engine?type=entry&version=3.0&Sender.Service=FigmentD&Interface=urn:figment-co-za:fleetcard:efuel_50ppm^oa_Msg50ppm&QualityOfService=ExactlyOnce&sap-user=<PIAPPLUSER>&sap-password=<PASSWORD>u201D
    SOAP Action: u201Chttp://sap.com/xi/WebService/soap1.1u201D
    I am however getting the following error on the SandBox Pi AE.
    u201CSOAP: call failed: java.io.IOException: invalid content type for SOAP: TEXT/HTML; HTTP 302 MOVED TEMPORARILYu201D
    Please can you assist in this matter.
    Regards
    Willie Hugo

    Hi williem,
    Stefans weblog works great. The error you are getting is some wrong data you are sending. Please verify the data you are sending is correct. Also check this threads for the same errror:
    ADAPTER.HTTP_EXCEPTION / HTTP 302 Moved Temporarily
    Re: SOAP client receives HTTP 302 Found
    Re: Synchronous RFC-XI-Web Service with no request method
    HTTP Error (302) Found when calling Web Service on XI
    Regards,
    ---Satish

  • SOAP adapter on Integration Engine

    Hi,
    I recall something with a webservice/soap adapter which exists on the Integration Engine insted of the adapter engine.
    I cannot find any information about this service. Can you point me to a site with this information.
    /daniel

    Here is the information
    /people/stefan.grube/blog/2006/09/21/using-the-soap-inbound-channel-of-the-integration-engine
    Regards,
    Prateek

  • Problems with namespace XML Parsing of ABAP PI 7.0 Integration Engine

    Hi,
    I discovered the following problem.
    The customer sends a SOAP message with is forwarded through a SOAP Adapter in the integration engine.
    The structure of the message is very simple:
    <Envelope>
    <Body>
    <ORDERS05>...</ORDERS05>
    </Body>
    </Envelope>
    The customer adds the namespace information a special way:
    <Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope">
    <Body>
    <orders05 xmlns="">...</orders05>
    </Body>
    <Envelope>
    Here the namespaces is declared in the first element. It should be inherited into all child elements. The 'orders05' should not have the namespace ' xmlns="http://schemas.xmlsoap.org/soap/envelope" ', therefore the namespace is overwritten with ' xmlns="" '. However I don't know if this is a correct xml statement, the SAP system did not understand this.
    The integration throws an error which is stated in the message in the adapter engine:
    2008-11-06 17:31:44 Fehler SOAPFault empfangen vom Integration Server. ErrorCode/Category: XIProtocol/ITEM_MISSING; Params: /@mustUnderstand, ST: ST_XMS_MSGHDR30_RM; AdditionalText: Attribut 'mustUnderstand' erwartet; ApplicationFaultMessage: ; ErrorStack: Das XML-Element /@mustUnderstand fehlt im SOAP-Message Header (SAP XI Extension) Attribut 'mustUnderstand' erwartet
    2008-11-06 17:31:44 Fehler Fehler beim Übertragen der Message zum Endpunkt http://kas052.hauni.koerber.de:8036/sap/xi/engine?type=entry über die Verbindung SOAP_http://sap.com/xi/XI/System. Grund: com.sap.aii.af.ra.ms.api.RecoverableException: Received HTTP response code 500 : Error during parsing of SOAP header
    If I changed the SOAP message to the common format, it is accepted by the integration engine.
    <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope">
    <SOAP:Body>
    <orders05>...</orders05>
    </SOAP:Body>
    </SOAP:Envelope>
    Here the namespace ' xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope" ' is defined with a prefix and assigned to the elements 'envelope' and 'body'. The 'orders05' element has no namespace.
    However due to the xml syntax both messages are the same, so why the integration engine handle the messages different?
    Best regards,
    Nils Kloth

    The valid SOAP format supported by XI is as follows
    <SOAP:Envelope
      xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
      <SOAP:Body>
        <m:MessageTypeName xmlns:m="Some-URI">
          <Price>34.5</Price>
        </m:MessageTypeName>
      </SOAP:Body>
    </SOAP:Envelope>
    Ur sender system is not sending the data in correct Soap format and thats the cause of message rejection. The option you have to use the Soap adapter in "no soap" mode.
    Regards,
    Prateek

  • Error in integration engine prosessing

    Hi
    I am doing proxy to fille interface for testing purpose in RWB in integration engine i  test message tab i have given proper entries and send the message.In SXMB_MONI intially status of flag is green i have registered the queues in sxmb_adm then status has changed to red i opened the message it is showing as follow.
    In Moni in place of receiver service interface it is showing sender service interface.But i have configured correctly
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!-- Call Inbound Proxy
    -->
    - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
    <SAP:Category>XIProxy</SAP:Category>
    <SAP:Code area="ABAP">INTERFACE_REGISTRATION_ERROR</SAP:Code>
    <SAP:P1>ifmmessif</SAP:P1>
    <SAP:P2>SI_PROXY_SENDER</SAP:P2>
    <SAP:P3>urn:SESA:PROXY:FILE</SAP:P3>
    <SAP:P4 />
    <SAP:AdditionalText />
    <SAP:Stack>No implementing class registered for the interface (ABAP interface, request message SI_PROXY_SENDER, request message, namespace urn:SESA:PROXY:FILE)</SAP:Stack>
    <SAP:Retry>M</SAP:Retry>
    </SAP:Error>
    Regards
    Praveen

    My problem was solved my R3 RFC destination was not pointing to client of integration engine.I have corrected the same my issue was solved
    Regards
    Praveen

  • Convert URL from integration engine to adapter engine with https

    I'm still relatively new at PI, trying to learn as I go, so I apologize if I do not phrase this correctly. 
    Our trading partners currently post xml files via http to a url directed to our Integration Engine, for example: 
    http://<host>:<port>/sap/xi/adapter_plain?namespace=urn%3Aball.com%3Aavailabilityfeed&interface=MIOA_AvailabilityFeed&service=SRV_Supplier&party=P_EDI&agency=&scheme=&QOS=EO&queueid=httpclient&sap-user=****&sap-password=***&sap-client=**&sap-language=EN
    We would now like them to post to a different URL using https so that 1) files are routed through the adapter engine, and 2) user and password information would not need to be included in the url currently being used.
    For a separate process, which has been configured differently, it was simply a matter of changing from http://<host>:<port> to https://<host2>...., but this has not been working for me with the above URL.
    Can anyone please help out or point me in the right direction?  I've spent half the day searching the forums without much success.
    Thank you.

    check security guide:
    http://help.sap.com/saphelp_nwpi711/helpdata/en/f7/c2953fc405330ee10000000a114084/frameset.htm
    When you want to post data to adapter engine, you have to use SOAP adapter, as HTTP adapter is not part of AE
    In security guide you find HTTPS enabling for HTTP and SOAP adapter.

  • No message reach into Integration Engine ...

    Hello,
    I have following problem. I send message to XI through SOAP adapter. But the message doesn't reach of Integration Engine. It is delivered into Adapter Engine and then it stays in status "Waiting". When open message detail in RWB I get these information:
    Message Data
    Attribute     Value
    Engine     Adapter Engine
    Status     Waiting
    Repeatable     Yes
    Cancelable     Yes
    Start     29.08.2008 12:14:59
    End     29.08.2008 12:14:59
    +Sender Party     +
    Sender Service     BS_GetSupperior
    Sender Interface     http://sntcz.cz/xmlns/holidays
    MI_Holiday
    +Receiver Party     +
    +Receiver Service     +
    +Receiver Interface     +
    Quality of Service     Exactly Once
    Error Category     XI_J2EE_ADAPTER_XI_HANDLER
    Error Code     GENERAL_ERROR
    Message     55C9628075B311DDABE200301875333B
    +Reference     +
    ... and in defaultTrace file occures this message:
    #1.5#00301875333B0057000000DE0000109C00045596D2CD72D8#1220006176812#com.sap.aii.af.ra.ms.impl.core.queue.SendConsumer##com.sap.aii.af.ra.ms.impl.core.queue.SendConsumer.onMessage(QueueMessage, boolean)#J2EE_GUEST#0##srvbr05_NW4_2798750#XISUPER#18255d00759d11ddc1a500301875333b#SAPEngine_Application_Thread[impl:3]_31##0#0#Error##Java###Transmitting the message to endpoint using connection failed, due to: .#3#AFW#com.sap.aii.af.ra.ms.api.RecoverableException: Received HTTP response code 500 : Error during conversion of XI message#http://srvbr05:8000/sap/xi/engine?type=entry#
    #1.5#00301875333B004B0000009D0000109C00045596D2CE9B64#1220006176890#com.sap.aii.messaging.srt.xmb.XMBWebServiceExtension#sap.com/com.sap.aii.af.soapadapter#com.sap.aii.messaging.srt.xmb.XMBWebServiceExtension#XISUPER#2919##srvbr05_NW4_2798750#XISUPER#ecff64f075af11dda90200301875333b#XI SOAP[BS_GetSupperior_SOAP/BS_GetSupperior/]_2449##0#0#Error##Plain###no message ID available#
    #1.5#00301875333B0049000001270000109C00045596D3111C00#1220006181250#XIRWB.com.sap.aii.mdt.api.server.MessageMonitoringBean#sap.com/com.sap.xi.mdt#XIRWB.com.sap.aii.mdt.api.server.MessageMonitoringBean#XISUPER#2920##srvbr05_NW4_2798750##f03f74c075af11ddb4ce00301875333b#SAPEngine_Application_Thread[impl:3]_3##0#0#Error#1#/Applications/ExchangeInfrastructure/RuntimeWorkbench#Plain###enrichMessageData(): Error during retrieving the end-to-end-monitoring information
    Thrown:
    com.sap.aii.rwb.endtoendmonitoring.util.Sxmb_Get_Pmi_Info_Fault_Exception:
         at sun.reflect.GeneratedConstructorAccessor358.newInstance(Unknown Source)
         at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
         at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
         at java.lang.Class.newInstance0(Class.java:308)
         at java.lang.Class.newInstance(Class.java:261)
         at com.sap.aii.proxy.framework.core.JcoMarshaler.unmarshalException(JcoMarshaler.java:429)
         at com.sap.aii.proxy.framework.core.JcoProxy.send(JcoProxy.java:82)
         at com.sap.aii.proxy.framework.core.AbstractProxy$JcoProxyHelper.send(AbstractProxy.java:173)
         at com.sap.aii.proxy.framework.core.AbstractProxy.send$(AbstractProxy.java:141)
         at com.sap.aii.rwb.endtoendmonitoring.util.PMI_PortType.sxmb_Get_Pmi_Info(PMI_PortType.java:28)
         at com.sap.aii.mdt.api.server.MessageMonitoringBean.enrichMessageData(MessageMonitoringBean.java:965)
         at com.sap.aii.mdt.api.server.MessageMonitoringBean.setMessageList(MessageMonitoringBean.java:762)
         at com.sap.aii.mdt.api.server.MessageMonitoringBean.getPureMessageList(MessageMonitoringBean.java:568)
         at com.sap.aii.mdt.api.server.MessageMonitoringObjectImpl0.getPureMessageList(MessageMonitoringObjectImpl0.java:1016)
         at com.sap.aii.mdt.api.server.MessageMonitoring_Stub.getPureMessageList(MessageMonitoring_Stub.java:1772)
         at com.sap.aii.mdt.server.integrationserver.IntegrationServerMonitoringBean.getMessageList(IntegrationServerMonitoringBean.java:354)
         at com.sap.aii.mdt.api.server.MessageMonitoringBean.setMessageList(MessageMonitoringBean.java:744)
         at com.sap.aii.mdt.api.server.MessageMonitoringBean.getMessageList(MessageMonitoringBean.java:552)
         at com.sap.aii.mdt.api.server.MessageMonitoringObjectImpl1_1.getMessageList(MessageMonitoringObjectImpl1_1.java:657)
         at com.sap.aii.mdt.api.server.MessageMonitoring_Stub.getMessageList(MessageMonitoring_Stub.java:810)
         at com.sap.aii.mdt.util.WebUtil.generateTableViewModel(WebUtil.java:1254)
         at jsp_monitor_new1219936385390._jspService(jsp_monitor_new1219936385390.java:9)
         at com.sap.engine.services.servlets_jsp.server.jsp.JspBase.service(JspBase.java:112)
         at com.sap.engine.services.servlets_jsp.server.servlet.JSPServlet.service(JSPServlet.java:544)
         at com.sap.engine.services.servlets_jsp.server.servlet.JSPServlet.service(JSPServlet.java:186)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.runtime.RequestDispatcherImpl.doWork(RequestDispatcherImpl.java:321)
         at com.sap.engine.services.servlets_jsp.server.runtime.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:377)
         at com.sapportals.htmlb.page.PageProcessorServlet.handleRequest(PageProcessorServlet.java:68)
         at com.sapportals.htmlb.page.PageProcessorServlet.doPost(PageProcessorServlet.java:22)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:387)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:365)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:944)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:266)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:160)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
         at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
         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:100)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)
    If I try to send message to XI directly through HTTP adapter the message is not delivered into Integration Engine.
    Do you have any idea what to check or where could be problem?
    Thank you in advance for every advice!
    Best regards,
    Zbynek

    Hi Zbynek,
    I think the problem is in the structure of the xml you want to send. I mean, that the structure of the message you are sending by means of SOAP adapter is not the same that the structure in the Inegration Repository.
    When you test your message with a wrong BS it is sent to the IE and you can see this message in sxmb_moni with error status. It`s obvius, there is no configuration for this scenario. However if you test your scenario with right parametes but the content (xml structure) is wrong, the step when the content of the call is converted to the structure of the IR will fail. And the message doesn`t get the IE.
    So check the content of your call.
    I hope it is useful for you.
    Regards,
    Carlos

  • Java.lang.Exception error during XML validation by Integration Engine

    Hi professionals,
    We are trying to use XML validation by the Integration Engine.
    Step 1:
    We created an appropriate directory structure where we had to store the structure (xsd).
    \usr\sap\<system id>\SYS\global\xi\runtime_server\A\B\C\D\E\F
    A - validation
    B - schema
    C - GUID of the SWCV where service interface reside.
    D - Repository Namespace where Service Interface is created.
    E - Service Interface Name
    F - Repository Namespace where Message Type or External Definition is
    assigned.
    Step 2:
    We also changed the references in the xsd to exclude all the subdirectory references.
    e.g folder1/folder2/abc.xsd is become abc.xsd only
    Step 3:
    We stored both xsdu2019s (schema xsd and referenced xsd to the directory created in step 1)
    Step 4:
    We changed the directory and xsdu2019s permissions to 777 (we chose 777 for testing purpose).
    Step 5:
    We changed the property schema validation of the sender agreement to Validation by Integration Engine.
    Step 6:
    We checked RFC destination for AI_VALIDATION_JCOSERVER on AS ABAP and AS Java and establish an successful connection test.
    RESTULTS
    The result of those steps is an error message in the message monitor of PI with the error tekst:
    <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
      <SAP:Category>XIServer</SAP:Category>
      <SAP:Code area="XML_VALIDATION_INB">CX_XMS_SYSERR_VALIDATION</SAP:Code>
      <SAP:P1>java.lang.Exception</SAP:P1>
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText>not used at the moment.</SAP:AdditionalText>
      <SAP:Stack>System error occurred during XML validation</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>
    Please assist in how to solve this issueu2026.
    Regards, Sjaak.

    I would suggest follow Appendix A to know the exact path and since you have one XSD referring other XSD check the steps mentioned in Appendix B .... there seems to be some error in referencing ...Appendix A and B are on page 12 & 13 of this document:
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/d06dff94-9913-2b10-6f82-9717d9f83df1?quicklink=index&overridelayout=true
    Regards,
    Abhishek.

  • Message Monitoring Tool in RWB for Integration Engine Messages not working

    Hi all
    We currently work on a Pi 7.11 system. I f we start the runtime workbench and going to the message monitoring, we want to get in to a message in the integration engine.  Normaly we should get the same sxi_monitor in the web browser, but we only get the soap envelope. The pipeline steps on the  left side and also the payload cannot be seen.
    We increased the rights of the user to sap_all but this did not changed anything. We also implemented the J2EE monitoring rule.
    Seems to me as we forgot a setting after installation, but which??
    Thanks in advance for  your help.
    Oliver

    Hi Oliver,
    I work on PI 7.0 and I know it's very different from 7.1x releases, but your problem sounds like a similar "problem" on 7.0.
    Is your message sycronous? At PI 7.0 the default configuration is defined to remove the payload of sync messages. You can change it on JAVA Visual Administrator.
    Try to find this parameter in Java Visual Administrator and set it to "false", below you will find the PI 7.0 path to this:
    Server >> Services >> SAP XI AF Messaging >> messaging.syncMessageRemover.removeBody
    I hope it helps,
    Marcelo Vieira

  • Web service via integration engine - integration directory tasks

    Hello,
    I am new to PI and need help concerning the configuration of web service communication. A new enterprise service shall be exposed to the web. So, service provider is an ABAP AS, consumer is a unknown 3rd party system. Communication should be via the integration server. I have created the data types, message types, interface (query/response) in the enterprise service repository, and the proxy and proxy class in the backend.The corresponding client is already defined as a business system in the integration directory. There are also communication channels of type xi assigned to that business system. I am not sure about the next steps. My assumption:
    1) create the 3rd party system as a business component
    2) add the new interface to the receiver/sender (where?) tabs of the business component
    3) create a communication channel of type SOA and assign it to the new business component  (to receiver or sender?)
    4) ...enough for now
    Probably I forgot something important, but I am not sure... I appreciate any help.
    KR
    Felix

    Here my own "answer" after trying several things.
    The reason for the errors above are the namespaces. My incoming message contains some external namespaces which disturb the Integration Engine SOAP processing, but not the J2EE SOAP Adapter.
    So I skipped the IE SOAP way, receive the SOAP data via plain HTTP adapter, and remove the SOAP header data in an XSL-Mapping. This gave also some trouble with the namespaces, but after some adaptions finally works fine now.
    CSY

  • Log version status in Integration Engine

    Hi,
    When montioring in Integration engine, couple of my messages are in 'Log version' status. These messages are in this status for the past two days.
    We are not able to cancel these messages also.
    What is the workaround solution to these messages.
    Thanks,
    Swapna

    It could be due to huge processing of message/data
    Do a complete cache refresh and check the same
    The solution in this thread points to XI BATCH.
    Log version in sxmb_moni in recever system (soap to proxy scenario)
    Edited by: Anusha  Ramsiva on Aug 6, 2008 2:57 PM

  • Message Flow in Integration Engine

    Dear Friends,
    Kindly can someody share  how the message is flowing in Intergration engine after the message taken from Adapter engine.
    If you have any block diagram it will be helpful for me

    Hi Karthik,
    There are 6 stpes for the message processing thats only called
    PIPELINE Steps.
    what are all the steps involved in the Pipeline processing.
    Sender Adapter picks up the file from the file system, converts it to XML and places it in the payload of an XI-SOAP message. Then it posts this message to the Integration Server pipeline via http(s).
    XI pipeline steps are:-
    ->Sender Agreement
    ->Receiver Determination
    ->Interface Determination
    ->Interface Mapping
    ->Receiver Agreement.
    When a source message reaches the Integration server, it performs 6 steps before the message reaches the destination. The steps are:
    1) Receiver Determination: This steps determines the system that participates in the exchange of the message.
    2) Interface Determination: For each receiver determine which interface will should receiver the message.
    3) Message Split: If more than one receivers are found, Xi will instantiate new message for each receiver.
    4) Message Mapping: Mapping to transform the source message to destination message format.
    5) Technical Routing: Bind a specific destination and protocol to the message.
    6) Call outbound Adapter: Send the transformed message to the adapter or a proxy.
    One can examine these steps in Runtime Workbench using the Transaction: SXMB_MONI.
    message flow in XI
    The life cycle of the message is explained in detail by taking an example scenario. The file is picked up by the Sender File adapter and the data is inserted into DB table by Receiver DB Adapter.
           The adapter engine uses the messaging system to log the messages at every stage. This log is called the Audit Log. The audit log can be viewed from the runtime work bench (RWB) to look into the details of the lifecycle of the message. During our journey we will also have a look at the messages that are logged at different stages.
    Note: This article is targeted for the newbieu2019s who want to understand the message flow in Adapter Engine. So the insight into the message lifecycle is provided here by taking only the Technical adapters (File/ JDBC/ JMS/ Mail) into consideration. It doesnu2019t delve into the lifecycle of the messages that have reached XI Adapter Engine using RNIF/ BC/ CIDX adapters.
    ONWARD JOURNEY:
    Fig1. Message flow from Adapter Engine to Integration Server
    1.     For the message to be picked up by the communication channel, the channel should be associated with a sender agreement. Here creation of a communication channel doesnu2019t ensure the message to be polled and picked up by the adapter. The message reaches the adapter in its native message format. As the communication in SAP XI happens in XI message format, a module inside the adapter converts the message in native format into XI message format.
    2.     During this process, a message ID is generated for the message. To build the XI header (sender agreement details like the sender system, sender message interface and the interface namespace) the details are fetched by performing a CPA lookup(collaboration-partner-agreement are the configuration object details that have been created using the configuration time. The details are updated into the runtime cache when you activate the Configuration objects in Integration builder u2013Configuration time. This cache is referred to as CPA cache).
    3.     This message is then sent to module processor for further processing. During the process of sending the message to module processor, the message u201CApplication attempting to send an XI message asynchronously using connection AFWu201D is logged.
    4.     The module processor performs steps like structure conversion, communication channel specific conversions (that have been specified in the u201Cmodule tabu201D of the adapter channel). These conversion modules are executed in the same sequence as mention in the communication channel.
    5.     After the successful execution of the conversion modules, the appropriate module (call SAP adapter module) of the module processor is called which will send this message for persistent storage. This message is put into the Send Queue of the messaging system for further processing. Messages like u201CMessage trying to put into the send Queueu201D and u201CMessage successfully put into the queueu201D are logged during this process. A confirmation message (success/ failure) is sent back to the sender application at this stage. This confirmation message is used by the channel to perform various steps like deleting the file that has a processing mode as delete.
    6.     The message that has been put in the Send Queue has to be picked up and sent to the Integration Engine. The Adapter Engine and XI Integration server use XI Adapter for internal communication purposes. So the XI Adapter picks up message from the send queue and parses the XI message. In this process, the status of the message is set to DLNG and. Messages like u201CThe message was successfully retrieved from the send queue and message status set to DLNGu201Dare logged.
    7.     The XI adapter performs a SLD look up (System landscape Directory) to find the Integration server with which the Adapter framework has register itself.
    8.     On successful SLD look up, the message is sent via HTTP to the XI IS pipeline, using the pipeline URL (http://hostname:abap-httpport/sap/xi/engine?type=entry). . If this is successful, a message u201CThe message was successfully transmitted to endpoint http://hostname:8000/sap/xi/engine?type=entry using connection AFWu201D is logged and the message statues is set to DLVD means message has been successfully delivered to the endpoint( XI IS in this case)
    Fig2. Audit Log of message during onward journey
    RETURN JOURNEY:
    The return journey commences when the IS has successfully processed the message and delivers it to the Messaging system using the URL u201Chttp://hostname:50000/MessagingSystem/receive/AFW/XIu201D
    br>
    Fig3. Message flow from Integration Server to Adapter Engine
    1.     When the Integration Server (XI IS) finishes processing of the pipeline steps (like receiver determination, interface determination and interface mapping), the message has to be delivered to the required Receiving system. So the XI Integration server will send the message to the messaging system of the Adapter Engine (AE) using the mentioned above. Once the message is successfully received by messaging system, the message u201CThe message was successfully received by the messaging system. Profile: XI URL: http://hostname:50000/MessagingSystem/receive/AFW/XIu201D is logged.
    2.     As discussed Integration server and Adapter Engine use XI adapter for internal communication purposes. So the XI message that has been received by the messaging system URL is parsed by the XI Adapteru2019s protocol handler.
    3.     The XI message is put into the receive queue and persisted. During this stage messages like u201CUsing connection AFW. Trying to put the message into the request queue; Message successfully put into the queue.u201D are logged.
    4.     The XI messages that are put in the receive queue are retrieved by an application (Worker thread) and are sent to AFWListenerBean. AFWListenerBean is a module (an EJB) in Adapter Engine that is capable of parsing the XI message. On successful receive of the XI message by the AFWListenerBean, messages like u201CThe message was successfully retrieved from the request queue.u201D are logged and the status of the XI message is set to DLNG.
    5.     The AFWListenerBean reads the receiver agreement and the corresponding channel from the XI header to determine the appropriate adapter. In this stage the adapter channel is logged in the audit log. u201CDelivering to channel: XYZ_Channelu201D
    6.     The message is forwarded to the module processor where additional steps like structure conversions and extra modules specified in the adapter are performed.
    7.     The exit module is called and the message is sent to the appropriate adapter (DB Adapter in this case). The format conversion will be executed within the specific adapter and sent to the Receiving system (DB in this case) using the channel that has been determined by the AFWListenerBean and the required action is reformed (select statement is performed in this case). On successful processing of the message the status is set to DLVD.

  • Undesrtanding Proxy communication with the Integration Engine

    I want to understand all the process in a client proxy communication. I know that the Local integration engine sends a PI-SOAP to the Central Integration Engine, and the local integration engine makes the communication with the ICM in the SAP PI side. My question are the next:
    1. SAP documentation mentions that the XI Adapter is necessary. Where is it located?, after or before of the ICM in the SAP PI side. What is it function?, because the message is already in PI-SOAP format.
    2. How does the local integration engine send the PI-SOAP message? Does it need an XI-Adapter ?.
    Thanks in advance.

    HI,
    1. SAP documentation mentions that the XI Adapter is necessary. Where is it located?, after or before of the ICM in the SAP PI side. What is it function?, because the message is already in PI-SOAP format.
    2. How does the local integration engine send the PI-SOAP message? Does it need an XI-Adapter ?.
    -->XI Adapter is necessary only at the receiver side not at the sender side, by using proxy pre-configuration steps and proxy framework message from the sender system(Client proxy) will reach PI system. So, in this case XI adapter is not necessary(adapterless communication).
    Proxy Framework which consists of Proxy Generator and Proxy Runtime:
    Proxy Generator- Converts ABAP corresponding elements to WSDL corresponding elements and viceversa and by using Proxy Runtime, local Integration will be connected to Central Integration.
    When a request is sent form client proxy-->ABAP corresponding elements will be converted to WSDL elements and local integration engine will be connected to central integration engine and whole process will be done.
    If the receiver system is SAP, and since there can be many SAP systems connected to PI, to send data from PI to that particular receiver SAP system, PI needs the receiver system details like business system name etc. So, XI adapter is manadatory only at the receiver side.
    check out this blog for more info:
    [http://www.****************/Tutorials/XI/ABAPProxy/page1.htm]
    Regards,
    Sunitha

  • Interaction between Qout scheduler and Integration engine

    Hello,
    I would like to understand more about the XI 3 architecture regarding the place of qRFC. If I understood right, depending on the QOS, the qOUT scheduler is used to send XML documents comming from the Integration Engine. The qOUT scheduler is able to process and queue rfc calls using traditional RFC ports (for example in case of CIF for APO). I imagine that in the case of XML message shipping, the qOUT scheduler is  called by the Integration Engine messaging logic layer. But then, I don't understand how outgoing SOAP calls occure. Are the queued RFC calls in destination of the local SOAP framework which uses the ICM to talk SOAP with the partner?
    Thanks for your lights,
    Christian.

    Thanks Holger for youor quick and precise answer,
    You mean, that the connection between the adapter framework and the integration engine is pure rfc based and not Soap-based XI protocol ?
    Is XI protocol used between the two engines each time no qRFC is envolved and in this case, the Abap-based Soap framework and the ICM are used by the integration logic layer of the central integration engine to communicate with the adapter engine ?
    Thanks,
    Christian.

Maybe you are looking for

  • Itunes 7.4.3 not working on one PC with new Nano, 7.4.1.2 working on Lappy

    I have a new 3g Nano, replaced my 1G Nano. My new IPOD will not work with Itunes 7.4.3, the USB drivers seem all screwy. It will mount, unmount, etc. It works great on my laptop running 7.4.1.2. I am NOT going to update the laptop. I do not want to r

  • TOC Generation Not Recognizing Style in RTF Output

    I am having a problem generating TOC where my rtf template contains grouping of data. I tried using style TOC1 and Header 1 in my template but this formatting does not get carried through to my output result when I try to PREVIEW on the desktop. Am I

  • [SOLVED] Boot into different OS one time using grub

    I have a remote Arch Linux system, that I don't have physical access to too frequently. I wake this system up with WOL and then SSH in. By default, it boots into the first option on the grub menu, which is Arch. I don't want to change the default gru

  • How do I stream iTunes Extras to my AppleTV?

    After downloading an HD movie from iTunes, including iTunes Extras, how do I stream the 'Extras' to my TV?  Seems strange that this isn't an option. Thanks!

  • IPhone: Cannot select my provisioning profile - tried all suggestions

    I am attempting to load an application onto an iPod Touch. I have followed the PDF document at the iPhone Program Portal to the letter, creating a development certificate with name and e-mail address that matches my agent information, a device profil