cancel
Showing results for 
Search instead for 
Did you mean: 

MalformedMessageException log on XI

Former Member
0 Kudos

Hi experts,

We are using XI 3.0 on a synchronous SOAP to RFC scenario. This scenario is working correctly.

Intentionally we changed one end tag of payloadu00B4s xml after calling XI, just to simulate that kind of error and to know if XI logs it somewhere.

At SOAP Client Tool we received the following XML:

<?xml version="1.0" ?> 
<!--  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>XIAdap ter</context> 
          <code>MalformedMessageException</code>
          <text>
            <![CDATA[
java.lang.NullPointerException; nested exception caused by:
java.lang.NullPointerException; nested exception caused by: 
com.sap.engine.lib.xml.parser.NestedSAXParserException:
Fatal Error: com.sap.engine.lib.xml.parser.ParserException:
Document is not well-formed:Start-tag 'un' is different from
end-tag 'aaaa'(:main:, row:1, col:262)(:main:,row=1, col=262)
-> com.sap.engine.lib.xml.parser.ParserException: Document
is not well-formed: Start-tag 'un' is different from end-tag
'aaaa'(:main:, row:1, col:262)
            ...
            
          
        
      
    
  
]]>

We didnu00B4t find that log at SXMB_MONI, neither at Runtime Workbench (Communication Channel Monitoring) nor at Message Dialog Tool. It only appeared at SOAP Client Tool that we are using. Is there a way to XI show that error log?

Thanks,

Gabriela

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Gabriela,

Usually any soap client verifies the payload according to the schema you are using and then it sends to the receiving application. In your case since the start and end of the payload or the substructure is not the same so your soap client itself is not sending the data to sap. So the best thing would be have the start and end tag but instead try using the segement name as different when compared to the original one and then the message should be logged in sxmb_moni and then you should see a error. Thats just my thought on this.

Regards,

---Satish

Answers (3)

Answers (3)

Former Member
0 Kudos

Gabriela,

Use "XMBWS.NoSOAPIgnoreStatusCode = true" in the SOAP channel -> module tab -> Module configuration.

Regards,

Neetesh

rodrigoalejandro_pertierr
Active Contributor
0 Kudos

hi

do this,

select Schema Validation in Sender Agreement to validate that the structure you are receiving from the sender system is equal to the structure you defined in PI.

Also copy the inbound payload and do a test mapping, may be a case sensitive error in the name of same fields. you will realize of this if a field or segment is red in the test tab in Message Mapping.

Thanks

RP

Shabarish_Nair
Active Contributor
0 Kudos

i dont think the request might have even hit XI.

This might be an exception triggered by SOAP UI itself on doing a structure check on the WSDL before sending the message out