Fault Mapping to RFC

Hello,
I would like to call a webservice from a RFC Function module. The funtcion module stub has no declared exceptions, but a return structure which should return the errors. Is it possible to map a SOAP-Fault message to this return structure which is in the normal response of the message? I read some blogs about handling SOAP errors, but these errors were always mapped to exceptions.
regards,
Jens

Why dont you define the return strucuture in PI and use it instead of Fault message? That would be an easier solution if all that you want to do is return some response..!!
VJ

Similar Messages

  • 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

  • Soap Fault mapping issue

    Hi,
    I have a synchronous scenario of (request) Proxy --> XI --> SOAP and (response) SOAP --> XI --> Proxy.  I am having an issue returning the application soap faults back to the sender system.  When I enter invalid data while testing this webservice call with a soap client directly without XI I get a soap fault response:
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
       <soapenv:Body>
          <soapenv:Fault>
             <faultcode>soapenv:Server.generalException</faultcode>
             <faultstring>Login failed</faultstring>
             <detail>
                <LoginFault xmlns="NAMESPACE">
                   <exceptionCode>710</exceptionCode>
                   <exceptionMessage>Login failed</exceptionMessage>
                </LoginFault>
                <ns1:exceptionName xmlns:ns1="http://xml.apache.org/axis/">NAMESPACE</ns1:exceptionName>
             </detail>
          </soapenv:Fault>
       </soapenv:Body>
    </soapenv:Envelope>
    When testing this through XI, the response message after the Soap call is returning the following soap fault in XI payload:
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    <!--  XML Validation Inbound Channel Response  -->
    <LoginFault xmlns="NAMESPACE">
      <exceptionCode>710</exceptionCode>
      <exceptionMessage>Login failed</exceptionMessage>
    </LoginFault>
    Notice just the detail body exists in the payload instead of the soap evelope and body, which I read is stripped off within XI in the case of application errors.  I have setup a fault message mapping to tie the wsdl login fault with the standard fault message type and included this in the service interfaces and operations mapping.  When the soap fault happens within XI I am getting the following mapping error: 
    NO_MAPPINGPROGRAM_FOUND:  Mapping program is not available in runtime cache:
    I am expecting the fault mapping to be executed in this case but doesn't seem to be found.  Any ideas why this mapping error is occuring and not being directed to my fault message mapping?  Is the mapping expecting the soap envelope and body to be included in the payload?
    Any suggestions would be appreciated.
    Thanks,
    Nate

    Here are the errors I am seeing within the sxmb_moni transaction:
    Call adapter exception:
      <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Call Adapter
      -->
    - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
      <SAP:Category>XIServer</SAP:Category>
      <SAP:Code area="MAPPING">NO_MAPPINGPROGRAM_FOUND</SAP:Code>
      <SAP:P1>Object ID 35F8008AA0A830FC93FC221572A15ABD Software Component DC6FB8300EDE11DC8E05DB6DA3E77028</SAP:P1>
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:Stack>Mapping program is not available in runtime cache: Object ID 35F8008AA0A830FC93FC221572A15ABD Software Component DC6FB8300EDE11DC8E05DB6DA3E77028</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>
    Response Message Error:
      <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  XML Validation Inbound Channel Response
      -->
    - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
      <SAP:Category>Application</SAP:Category>
      <SAP:Code area="UNKNOWN">APPLICATION_ERROR</SAP:Code>
      <SAP:P1 />
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText>application fault</SAP:AdditionalText>
      <SAP:ApplicationFaultMessage namespace="NAMESPACE REMOVED">LoginFault</SAP:ApplicationFaultMessage>
      <SAP:Stack />
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>
    and response message payload:
      <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  XML Validation Inbound Channel Response
      -->
    - <LoginFault xmlns="NAMESPACE REMOVED">
      <exceptionCode>710</exceptionCode>
      <exceptionMessage>Login failed</exceptionMessage>
      </LoginFault>

  • ABAP Mapping in RFC to SOAP Scenario

    Hi Folks,
        I have a scenario to send data from RFC to SOAP. I want to use the ABAP MApping for this case. Can anybody guide me how to do the ABAP Mapping for this case ? It will be real help if somebody can give a step by step guide ?
    Regards,
       Santosh

    Hello Again,
    HOW TO DO ABAP MAPPING:
    Use this link and go to sec 3.1 Do exactly as mentioned in this link.
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/5c46ab90-0201-0010-42bd-9d0302591383
    OR
    1. Open http://<host>:<port>/exchangeProfile/index.html
    2. Choose IntegrationBuilder -> IntegrationBuilder.Repository ->
    com.sap.aii.repository.mapping.additionaltypes
    3. Maintain the following entry:
    R3_ABAP|Abapclass;R3_XSLT|XSL (ABAP Engine)
    4. Open http://<host>:<port>/rep/support/admin/index.html
    5. Choose Administration of Properties -> All Properties
    6. If the value associated to parameter com.sap.aii.repository.mapping.additionaltypes is not correct, choose REFRESH at the top of the page.
    How to call XI ABAP Mapping via RFC:
    /people/ricardoandres.maienza/blog/2007/04/06/how-to-call-xi-abap-mapping-via-rfc
    XI: ABAP mapping blogs
    /people/michal.krawczyk2/blog/2006/09/20/xi-abap-mapping-logs--more-standard-better-visibility
    /people/rahul.nawale2/blog/2006/11/01/dynamically-sending-a-mail-to-the-po-creator-using-xslt-abap-mapping
    PART 1
    /people/r.eijpe/blog/2005/11/10/xml-dom-processing-in-abap-part-i--convert-an-abap-table-into-xml-file-using-sap-dom-approach
    PART 2
    /people/r.eijpe/blog/2005/11/21/xml-dom-processing-in-abap-part-ii--convert-an-xml-file-into-an-abap-table-using-sap-dom-approach
    PART 3
    Convert an ABAP table into XML file using SAP DOM Approach
    /people/r.eijpe/blog/2006/02/19/xml-dom-processing-in-abap-part-iiia150-xml-dom-within-sap-xi-abap-mapping
    Testing ABAP Mapping
    /people/sameer.shadab/blog/2005/09/29/testing-abap-mapping
    Regards,
    Madan Agrawal

  • XI Mapping lookups RFC API

    Hi mates,
    Can you please share with me the following document on XI Mapping lookups RFC API by Michal?
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/xi/xi-code-samples/xi%20mapping%20lookups%20rfc%20api.pdf
    This link is broken I guess.
    thx in adv
    praveen
    [email protected]

    Hello,
    Why dont you get the article from here?
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/xi/xi-code-samples/mapping%20lookups:%20RFC%20API.pdf
    Regards,
    Jai Shankar

  • Parameter Mapping with RFC Callable Object not working

    Hi Folks
    Scenario
    I have a process scenario like this
    Interactive Form Callable Object A -triggers> Process [Interactive Form Callble Object B -> Interactive Form Callble Object C -> RFC Callable Object ]
    All the forms A, B, C use same form template, different sections of it lets say i, j and k are filled by different guys.
    Now my parameter mappings are as follows -
    a) Page level meeting between B & C called P Map.
    b) Process parameter mapping with Form A and appropriate section of P Map lets say section i
    c) fields of Form C are mapped to RFC callable object fields
    Problem
    The data filled in Form A [section i] disappears when I open and see the Form B.
    If I remove the mappings of fields of Form C with RFC callable objec fields, I am able to see it.
    Has anyone faced it before!

    Hi,
    This is a known issue on SP10 and it will be fixed in the next patch for SP10.
    Hope this helps!
    Best regards,
    David

  • How to Parse the XML generated by Mapping LookUp - RFC API

    Hi Friends,
    I m using the link by Michal Krawczyk for Mapping Lookups - RFC API
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/a03e7b02-eea4-2910-089f-8214c6d1b439
    How to parse the XML created in the target node ?
    Regards
    Pravesh

    Hi,
    Check the second half of my code in this blog,
    /people/bhavesh.kantilal/blog/2006/11/20/webservice-calls-from-a-user-defined-function
    It deals with webservice call's but almost the same for RFC.
    Regards
    Bhavesh

  • Scaling your Mapped BW RFC destination to the APS DF Service

    Hello Semantic People!
    If you are creating a UNX universe connecting to BW through the IDT and you have manually mapped your RFC destination to an Adaptive Processing Server Data Federation Service then you might be interested a new Wiki Page:   RFC Connections Mapping Scalability
    RFC Connections Mapping Scalability - Business Intelligence (BusinessObjects) - SCN Wiki
    and kbase 2028364 - RFC Connections Mapping Scalability:
    https://support.wdf.sap.corp/sap/support/notes/2028364

    Problem resolved once after SAP server is restarted. RFC destination test was also successful and I was able to retrieve data in Web Intelligence

  • File to RFC - XSLT Mapping after RFC structure has changed

    Hi
    I'm an XI beginner, and am looking at a File to RFC scenario which has been implemented in our 7.0 system.
    We have a requirement to add a new field to the RFC (which has already been done by the ABAPer) and I need to make the necessary changes in XI. So I have re-imported the RFC and added a field in Data Type (we had file content conversion and we have manually defined the Data Types).
    For mapping - is there a way to utilise the existing XSLT mapping without having to re-do the entire mapping in Stylus Studio? Is there an easy way to just add one additional field in Stylus Studio? or do I have to edit the xsl manually?
    Thanks
    Manoj

    Manoj,
    Let me explain you....
    1.Take the old XSL file into anote pad
    2.now import your newly modified source and target XSD and import into SS
    3.Perform the xslt mapping for the newly added source and target field
    4.generate the XSL for this mapping
    5.Now take the lines which mapped (Do not take all the lines in the generated XSL) and copy these few lines mapped
    6.Now go to the old XSL in the notepad and add the lines copied from the new XSL
    Now try to paste the entire XSL in SS then you would be able to see all the fields mapped in SS IF yes then you are done with XSLT mapping.
    Regards,
    Naveen.

  • Reg error in interface mapping in RFC to JDBC scenario

    Hi Techies,
    Iam trying to map the scenario RFC to JDBC.
    In configuration window Iam testing the configuration.
    when Iam testing it is giving the error.
    " com.sap.aii.utilxi.misc.api.BaseRuntimeException thrown during application mapping com/sap/xi/tf/_mm_mapping_: Parsing an empty source. Root element expected! "
    My mapping is as follows
                       mt_receiver                    
                                                            statement               
                                                                ROW          
                                                     action---insert     
                 ZHRT002----
         Table     
         Item----
    access     
              MANDT               
              PERNR                                     PERNR
              PERID                            PERID
              SHOPN                           SHOPN
    Sender
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:ZTEST_PI_ZHRT002 xmlns:ns0="urn:sap-com:document:sap:rfc:functions">
       <ZHRT002>
          <item>
             <MANDT/>
             <PERNR/>
             <PERID/>
    </item>
       </ZHRT002>
    </ns0:ZTEST_PI_ZHRT002>
    Reciver
    <?xml version="1.0" encoding="UTF-8"?>
    <ns1:mt_receiver xmlns:ns1="urn:sap-com:RFC2JDBC"><Statement1><ROW action="INSERT"><TABLE>ZHRT002</TABLE><access><PERNR></PERNR><PERID></PERID></access></ROW></Statement1></ns1:mt_receiver>
    Please give suggestion how to go about this.
    Thanks in advance,
    Regards,
    Kiran

    Hi,
    Please check the payload you are using to test the configuration.
    The structure seems to be Incorrect.
    Regards,
    Deepak

  • Error during mapping service, RFC-XI-File Adapter

    Hello,
      I have the following problem: I am using RFC to send some data to XI and then to File Adapter, however I get a short dump with "5990 Error during mapping service in XI". Even though mappings works, I tested using the document that comes in XI in Repository without any errors.
           What does this error means and is there any way to get more detailed explanation of my error. Thank you in advance for your help,
                   Dmitriy Mindich

    Synchronous RFC
    1. CALL FUNCTION func DESTINATION dest
                         parameter_list.
    Asynchronous RFC
    2. CALL FUNCTION func STARTING NEW TASK task
                    [DESTINATION {dest|{IN GROUP {group|DEFAULT}}}]
                    parameter_list
                    [{PERFORMING subr}|{CALLING meth} ON END OF TASK].
    Transactional RFC
    3. CALL FUNCTION func IN BACKGROUND TASK
                         [DESTINATION dest]
                         parameter_list
                         [AS SEPARATE UNIT].
    Use help function of your ABAP editor for more details.
    Regards
    Stefan

  • Should i Map thecommon RFC Model to component contrl or custom controller?

    In my webDynpro project , I have two modules one is DirectCustomer and InDirectCustomer. so i have set of RFS's in a single RFC model. In this  RFS's some are common to both the modules. some are independent to each other. so  i have created two controller component one for each module.Then i mapped the independent RFC'c to each controller seperately. But now the RFC's which are common to both modules to map, Better, should i map to  existing Componentcontroller or should i create new customcontroller (like commoncontroller).
    which i option is better, can u suggest me. I feel that, The common RFC's will be mapped to component controller, bcz it the Base controller for the both customcontroller , indrectly to the viewcontroller.
    Can any body give me the suggestion on this

    Hi Vishal,
    As far as I know it's recommended to use a custom controller for every RFC. This makes sense because if the RFC changes some day you only have to do changes in the specific custom controller.

  • Map a RFC table to a xsd node

    Hi experts, please help me with examples or links, I need to create a mapping to the xsd multiple lines complex type with a rfc table, when I try to create the map the following message comes up :
    Incompatible Expression Type.
    Expected: ZSMM_ITEMMAT
    Found: ItemMaterialCT

    Hi,
    you have to map on attribute level, as the complex types are not compatible (as the message indicates)

  • Mapping lookups - RFC API

    Hi
    I have cr8ed rfc lookup in UDF,and I want to parse this xml and use only the value I need
    I read in the forum that there are 2 ways of doing it :
    DOM and SAX
    any1 knows good weblogs/threads which ellaborates on how or explain how it should b done ?
    thx,Shai

    Hi Shai,
    This blog and article deals with calling your RFC from your JAVA MAPPING / User Defined Function.
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/uuid/801376c6-0501-0010-af8c-cb69aa29941c
    /people/sravya.talanki2/blog/2005/12/21/use-this-crazy-piece-for-any-rfc-mapping-lookups
    And now going to the next half of your question regarding SAX and DOM parsers....
    The user defined functions that you write in your Graphical Mapping has nothing to do with Java Mapping.
    In your Graphical Mapping, the parsing of source structure is handled interannly by XI.
    But, when you go for an explicit mapping technique like Java Mapping, you have to parse the source XML structure, so that you can write the logic for your mapping.
    Java Mapping will execute a method called Execute, that will take the source XML structure as the Input Stream and then, you have to parse the Input STream and to do this parsing, you use SAX or DOM parser.
    DOM processor loads the entire XML into the memory and is processor intenseive, SAX does it element by element and so is not processor intensive.
    If you are using SAX parser, there are 5 methods . They are:
    1) Start of the document(startDocument)
    2) start of the element(startElement)
    3) end of the element(endElement)
    4) end of the document(endDocument)
    5) chars()
    Also check with any java site about SAX events how it works etc.
    Java Mapping
    http://help.sap.com/saphelp_nw04/helpdata/en/e2/e13fcd80fe47768df001a558ed10b6/content.htm
    DOM parser API
    http://java.sun.com/j2se/1.4.2/docs/api/org/w3c/dom/package-frame.html
    On how to create XML docs with SAX and DOM go thruugh these links:
    http://www.cafeconleche.org/books/xmljava/chapters/ch09.html
    http://www.cafeconleche.org/books/xmljava/chapters/ch06.html
    Also go through these Blogs....
    /people/prasad.ulagappan2/blog/2005/06/08/sax-parser
    /people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-i
    /people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-ii
    /people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-iii
    I hope this helps...
    Regards,
    Abhy

  • Mapping FILE-RFC

    Hi everyone.
    I've made an XML.
    My message type is
    field: bukrs 1..unbounded.
    The file will contain N company codes.
    On the other side, i have a BAPI. This bapi contains, as tables, to fields : company and error.
    i want to make the mapping between the XML file and the internal table of the BAPI called company (defined in tables).
    How do i have to make the mapping?
    Thanks

    Hi inigo,
              There are many ways to proceed with this scenario.
      1. You can use graphical mapping wherein you need to import your BAPI in the integration repository and map the reqiurements as needed.
    Note: While doing complex mapping, be careful on fixing the context's for the source fields to get the desired output.
    2. You can also use ABAP mapping for the same.
        You create an ABAP mapping in SE24 transaction and specify the ABAP mapping in the mapping objects in your repository.
    3. If your scenario is strictly File to RFC, You don't need a mapping, create a inbound proxy out of the XML file in the SAP system, Loop throu the source XML data and dump it in the internal table specified and make a call with the RFC

Maybe you are looking for

  • Credit note..Urgent

    Hi Gurus, When i am creating a credit note with reference to billing document, how to customize that the user should not exceed more than the previous billing doucment value??? Ex: we have raised a billing value of  10000/- our user cannot create a c

  • Email Notification is approved but BPM Task is not getting completed

    Hi,    A transaction is submitted, the approver gets a email notification. The Human task is Actionable.    So in the email, approver can see Approve / Reject links. On clicking the links it generates a email response and it is sent to the server als

  • Oracle Form functions and procedures in APEX, how?

    I am working to recreate in APEX, already existing Read Only Forms in Oracle Forms. APEX Interactive Report functionality among other things, makes it worth while as well as targetting a different audience than the one that utilizies the Oracle Form

  • "Correct Drift" option corrects WAY too much.

    Whenever I would record using Audition 1.5 (Windows XP, fairly powerful computer) everything would be out of sync. It seemed that everything was compressed timewise, so as the track went on, the 2nd track was faster and faster than the 1st track. I c

  • Mac Lion will not configure Deskjet 3050A to wireless router. Have installed HP software 3 times

    downloaded drivers selected DEFAULT on printer what do I run on the MAC? Found printer installer and when I select it it says without having me eneter anything like wireless or USB that Installation Successful It is not