cancel
Showing results for 
Search instead for 
Did you mean: 

namespaces and mappings error

former_member737583
Participant
0 Kudos

Scenario: ABAP Proxy => XI => WebService

Communication: asynchronous.

When I'm sending request from ABAP Proxy to WebService through XI, request is mapped and send correctly. The problem is answer.

I'm receiving following XML from WebService:

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?><!-- Request Message Mapping --> 
<Result xmlns:A='http://schemas.xmlsoap.org/soap/encoding/' 
xmlns:s='http://www.w3.org/2001/XMLSchema-instance' 
xmlns:E='http://schemas.xmlsoap.org/soap/envelope/' 
xmlns:y='http://www.w3.org/2001/XMLSchema'>
<Function s:type='y:string'>Sd2Ids_SzfExport</Function>
<r>
<SZF>
<DATRKAKT>there a lot of subelements</DATRKAKT>
</SZF>
</r>
</Result>

but SAP is expecting for message with namespace ns0! (tested in IR)

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!-- Request Message Mapping -->
<ns0:Result xmlns:A='http://schemas.xmlsoap.org/soap/encoding/' xmlns:s='http://www.w3.org/2001/XMLSchema-instance' 
xmlns:E='http://schemas.xmlsoap.org/soap/envelope/' 
xmlns:y='http://www.w3.org/2001/XMLSchema'>
<Function s:type='y:string'>Sd2Ids_SzfExport</Function>
<r>
<SZF>
<DATRKAKT>there a lot of subelements</DATRKAKT>
</SZF>
</r>
</ns0:Result>

How can I add ns0 into response form WebService or how should I modify my definitions in IR to ommit this namespace ns0?

Edited by: Tomasz Suchanek on Oct 7, 2008 11:28 AM

Accepted Solutions (0)

Answers (3)

Answers (3)

former_member737583
Participant
0 Kudos

Combination of java mapping and XMLAnonymizerBean helps

Former Member
0 Kudos

Hi

You need to use XMLAnynonymizerBean to remove this problem

refer

http://help.sap.com/saphelp_nw70/helpdata/EN/45/d169186a29570ae10000000a114a6b/content.htm

Thanks

Gaurav

former_member737583
Participant
0 Kudos

There is something what I still do not understand.

Let imagine that we have input XML:


<MY_DATA
  xmlns="http://some.adress.com/file.wsdl"
  xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/"
>
  <INPUT>
    <ACCOUNT_NUMBER>0080000094</ACCOUNT_NUMBER>
    <BANK_COUNTRY>PL</BANK_COUNTRY>
    <BANK_COUNTRY_ISO>PL</BANK_COUNTRY_ISO>
  </INPUT>
</MY_DATA>

and I need output


<soap:MY_DATA
  xmlns="http://some.adress.com/file.wsdl"
  xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/"
>
  <INPUT>
    <ACCOUNT_NUMBER>0080000094</ACCOUNT_NUMBER>
    <BANK_COUNTRY>PL</BANK_COUNTRY>
    <BANK_COUNTRY_ISO>PL</BANK_COUNTRY_ISO>
  <INPUT>
</soap:MY_DATA>

How should I configure XML Anonymizer Bean?

VijayKonam
Active Contributor
0 Kudos

Use XML Ananymizer module in your receiver adapter

VJ

former_member737583
Participant
0 Kudos

Could you tell me how?

I've read about them but as far I know it is for adding not removing namespaces. I need to add namespace!