Skip to Content
author's profile photo Former Member
Former Member

SOAP to RFC - how to create MI

Hello Experts,

I try to make SOAP to RFC interface. I plan to use complete RFC function parameters in SOAP call so I tried to make a Message Interface from RFC, then I made Interface Mapping based on two (request + response) Message Mapping as one-to-one mapping.

After starting interface there is an error with maping, seems that there is a problem with namespaces:

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?><!-- Request Message Mapping --> <RFC_READ_TABLE xmlns='urn:sap-com:document:sap:rfc:functions' xmlns:rfc='urn:sap-com:document:sap:rfc:functions' xmlns:SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/'>
			<DELIMITER xmlns='urn:sap-com:document:sap:rfc:functions'/>
			<NO_DATA xmlns='urn:sap-com:document:sap:rfc:functions'/>
			<QUERY_TABLE xmlns='urn:sap-com:document:sap:rfc:functions'>
			T000</QUERY_TABLE>
			<ROWCOUNT xmlns='urn:sap-com:document:sap:rfc:functions'/>
			<ROWSKIPS xmlns='urn:sap-com:document:sap:rfc:functions'/>
			<DATA xmlns='urn:sap-com:document:sap:rfc:functions'>
				<item>
					<WA/>
				</item>
			</DATA>
			<FIELDS xmlns='urn:sap-com:document:sap:rfc:functions'>
				<item>
					<FIELDNAME/>
					<OFFSET/>
					<LENGTH/>
					<TYPE/>
					<FIELDTEXT/>
				</item>
			</FIELDS>
			<OPTIONS xmlns='urn:sap-com:document:sap:rfc:functions'>
				<item>
					<TEXT/>
				</item>
			</OPTIONS>
		</RFC_READ_TABLE>

I think that there is a problem with xmlns='urn:sap-com:document:sap:rfc:functions'.

Any help?

TIA

Add a comment
10|10000 characters needed characters exceeded

Assigned Tags

Related questions

3 Answers

  • Best Answer
    author's profile photo Former Member
    Former Member
    Posted on Apr 01, 2008 at 04:51 AM

    Hi,

    Try to use the RFCNormalizer.jar A standard XSLT progrma by SAP to normalize to RFC specific namespaces etc

    Have a Look at the thread

    [how-can-the-payload-of-a-xi-message-be-normalized-;

    rfcnormalizer.jar file has got inbuilt XSL mapping program that has to be executed after your original mapping.

    import this .xsl file as Imported Archive(under Mapping Objects) in to Integration repository.use this in interface mapping as XSLT Mapping after your original mapping.

    Hope this helps,

    Reward points if helpful

    Regards,

    Abhishek

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Mar 31, 2008 at 02:19 PM

    hi

    you are creating the SOAP to RFC scenarios

    in that the RFC is a sysn

    that is request and response to create tow mapping that is request and response and create one message interface

    Soap Req----> Rfc Req

    Rfc Resp----->Soap Resp

    these two type of mapping

    create message interface for Soap Req -


    > Soap Resp

    and check

    i hope your prob will solved

    thanks

    Regards

    vijay

    Edited by: Vijay Yewale on Mar 31, 2008 4:21 PM

    Add a comment
    10|10000 characters needed characters exceeded

    • Former Member

      Hello,

      as I wrote previously I made both mappings, which working fine in test mode with dummy values:

      <?xml version="1.0" encoding="UTF-8"?>
      
      <ns0:RFC_READ_TABLE xmlns:ns0="urn:sap-com:document:sap:rfc:functions">
         <DELIMITER/>
         <NO_DATA/>
      ...
      

      .

      But problem is that SOAP delivers data:

      <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
      <!-- Message Branch According to Receiver List -->
      <RFC_READ_TABLE xmlns='urn:sap-com:document:sap:rfc:functions' xmlns:rfc='urn:sap-com:document:sap:rfc:functions' xmlns:SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/'>
      			<DELIMITER xmlns='urn:sap-com:document:sap:rfc:functions'/>
      			<NO_DATA xmlns='urn:sap-com:document:sap:rfc:functions'/>
      			<QUERY_TABLE xmlns='urn:sap-com:document:sap:rfc:functions'>
      			T000</QUERY_TABLE>
      ...
      

      .

      so I get following error in mapping in step Add raw attribute \[ xmlns:ns0="urn:sap-com:document:sap:rfc:functions"\]

      Cannot produce target element /ns0:RFC_READ_TABLE/QUERY_TABLE. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd

      Mariusz

  • Posted on Mar 31, 2008 at 02:14 PM

    Mariusz,

    While creating Message Interface, did you used the same RFC_READ_TABLE under imported objects?

    raj,

    Add a comment
    10|10000 characters needed characters exceeded

Before answering

You should only submit an answer when you are proposing a solution to the poster's problem. If you want the poster to clarify the question or provide more information, please leave a comment instead, requesting additional details. When answering, please include specifics, such as step-by-step instructions, context for the solution, and links to useful resources. Also, please make sure that you answer complies with our Rules of Engagement.
You must be Logged in to submit an answer.

Up to 10 attachments (including images) can be used with a maximum of 1.0 MB each and 10.5 MB total.