Quantcast
Channel: SCN : All Content - All Communities
Viewing all articles
Browse latest Browse all 3668

Client Proxy and Extended XML Handling

$
0
0

Hi guys,

 

Have any of you worked with a client proxy generated by a WSDL?

 

I am encountering the following problemu2026 when I generate the proxy, everything is fine; but when trying to consume a WebService, calling the method through my program, I receive this exception, CX_AI_SYSTEM_FAULT, with the following message:

 

SOAP:1.001 CX_ST_GROUP_MISSING_CASE:XSLT exception. Falta elemento PurchaseNumber

 

I have directly executed the proxy customer by making an test (F8) and the same mistake results, but when I activate the u201CExtended XML Handlingu201D checkbox, the client proxy works well and I obtained answers from the WebService. I have been looking for some info about Extended XML Handling and I have done what is suggested in the examples codes but the same mistake has come out. However, when executing the proxy in test and activating Extended XML Handling, it works out. I have tried to fill in the CONTROLLER tables and it didnu2019t work either.

 

I have debugged the proxy test and the Extended XML Handling parameter is sent, but not from my program, although I set it with u2018Xu2019 with method u201Cset_extended_xml_handlingu201D.

 

Has someone consume an external service by activating the Extended XML Handling from the program?

 

Thanks for the help!

 

This is my WSDL:

 

http://194.224.215.78/eb2bcESB/purchaseProxy?wsdl

 

This is my code:

 

v_proxy TYPE REF TO zpx_co_orderws, u201CThis is my proxy client generated  with the WSDL

v_server_context = cl_proxy_access=>get_server_context( ).

 

v_payload_protocol ?= v_server_context->get_protocol( if_wsprotocol=>payload ).

 

CALL METHOD v_payload_protocol->set_extended_xml_handling( extended_xml_handling = 'X' ).

 

TRY.

        CALL METHOD v_proxy->delete_purchases

          EXPORTING

            input  = purchases_request

          IMPORTING

            output = purchases_response.

 

      CATCH cx_ai_system_fault INTO sys_fault.

        IF sys_fault IS NOT INITIAL.

          v_text = sys_fault->get_text( ).

          v_error = 'X'.

        ELSE.

          v_error = ' '.

        ENDIF.

 

      CATCH cx_ai_application_fault INTO appl_fault.

        IF appl_fault IS NOT INITIAL.

          v_text = sys_fault->get_text( ).

          v_error = 'X'.

        ELSE.

          v_error = ' '.

        ENDIF.

    ENDTRY.


Viewing all articles
Browse latest Browse all 3668

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>