SAP Webservice returning HTML response instead of SOAP

<br>Hi,
I want to call a webservice created from an SAP function in SAP 6.40.
When I test this webservice with the TCPGateway tool, if no application exception occured, I receive the correct response : the <b>SOAP</b> response message:
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
   <soap-env:Body>
      <n0:ZWsCreateWagonResponse xmlns:n0="urn:sap-com:document:sap:soap:functions:mc-style">
      </n0:ZWsCreateWagonResponse>
   </soap-env:Body>
</soap-env:Envelope>
<br>But if an application exception occured in the web service, I receive the response message in <b>HTML</b> :
500 Internal Server Error
Error when processing your request
What has happened?
The URL .../sap/bc/srt/rfc/sap/z_ws_create_wagon was not called due to an error.
The following error text was processed in the system LSD : Exception condition "ALREADY_EXISTS" raised.
The termination type was: RABAX_STATE
The ABAP call stack was:
Function: Z_WS_CREATE_WAGON of program SAPLZ_WS_HU
Form: EXECUTE of program CL_SRG_RFC_PROXY_CONTEXT ---- CP
Form: IF_SOAP_APPLICATION_RT EXEC_PROCESSING of program CL_SOAP_APPLICATION_RFC ---- CP
Form: EXEC_PROCESSING of program CL_SOAP_RUNTIME_SERVER ---- CP
Form: EXECUTE_PROCESSING of program CL_SOAP_RUNTIME_ROOT ---- CP
Form: EXECUTE_PROCESSING of program CL_SOAP_RUNTIME_SERVER ---- CP
Form: EXEC_PROCESSING of program CL_SOAP_TRANSPORT_EXTENSN_ROOTCP
Form: EXEC_PROCESSING of program CL_SOAP_HTTP_EXTENSION ---- CP
Form: HANDLE_REQUEST of program CL_SOAP_TRANSPORT_EXTENSN_ROOTCP
Form: HANDLE_REQUEST of program CL_SOAP_HTTP_EXTENSION ---- CP
<br>When I call the web service in XI with a SOAP Receiver Adapter, I get the following exception (in case of application exception but also when no application exception occured) :
com.sap.aii.af.ra.ms.api.DeliveryException:
<br>invalid content type for SOAP: TEXT/HTML
So, my questions:
- how to receive a SOAP response instead of an HTML response in case of application exception in the web service ?
- why do I get an Invalid content type exception when the response is well a SOAP response ?
<br><br>Thanks in advance,
Laurence

Thanks for your response, Sandro.
The webservice which I use has been modified. Now if it throws an exception, I receive well a SOAP message :
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
   <soap-env:Body>
      <soap-env:Fault>
         <faultcode>soap-env:Client</faultcode>
         <faultstring xml:lang="en">ALREADY_EXISTS</faultstring>
         <detail>
            <n0:Z_WS_CREATE_WAGON.Exception xmlns:n0="urn:sap-com:document:sap:rfc:functions">
               <Name>ALREADY_EXISTS</Name>
               <Text>Virus scan profile /SIHTTP/HTTP_UPLOAD is not active</Text>
               <Message>
                  <ID>VSCAN</ID>
                  <Number>033</Number>
               </Message>
            </n0:Z_WS_CREATE_WAGON.Exception>
         </detail>
      </soap-env:Fault>
   </soap-env:Body>
</soap-env:Envelope>
About the exception managing :<br>
- In my integration process, I include the send step in a block, with property <i>Exceptions</i> =
ALREADY_EXISTS
- In the send step, in property <i>Exceptions</i>, I add <i>System Error</i>
ALREADY_EXISTS
- I insert an <i>Exception Branch</i> in the new block, <i>Exception Handler</i>
ALREADY_EXISTS
Is that correct?
Do I need to use Fault messages?
And how do I get the error message ?
<br>In transaction ST22, I have no dump.
<br>If it is a problem of exception managing, why do I get also the error (<i>com.sap.aii.af.ra.ms.api.DeliveryException: invalid content type for SOAP: TEXT/HTML</i>) when all is right in the web service call ?
Regards,
Laurence

Similar Messages

  • Dynamic Converter Not Returning HTML

    Hi,
    I'm trying to call get_dynamic_conversion service using RIDC on a word document to convert it to HTML. However, the service is not returning HTML but instead hda that starts as follows:
    <?hda version="11gR1-11.1.1.4.0-idcprod1-101229T001824" jcharset=UTF8 encoding=utf-8?>
    @Properties LocalData
    computedTemplateName=
    FileFormat=application/vnd.openxmlformats-officedocument.wordprocessingml.document
    RIDC Call:
    IdcClientManager manager = new IdcClientManager();
    IdcClient idcClient = manager.createClient("idc://localhost:4444");
    IdcContext userContext = new IdcContext("weblogic");
    DataBinder binder = idcClient.createBinder();
    binder.putLocal ("IdcService", "GET_DYNAMIC_CONVERSION");
    binder.putLocal ("dDocName", dDocName);
    binder.putLocal ("RevisionSelectionMethod", "LatestReleased");
    ServiceResponse respuesta = idcClient.sendRequest (userContext, binder);
    String html = respuesta.getResponseAsString();
    I can see the content item is been converted to HTML in the UCM and labelled as "Get Conversion". I'm also getting the html output when I access the content item as follows in the browser but in the application via RIDC.
    http://localhost:16200/cs/idcplg?IdcService=GET_DYNAMIC_CONVERSION&RevisionSelectionMethod=LatestReleased&dDocName=xxx_002
    Thanks,
    Raj

    Hi
    IdcService", "GET_DYNAMIC_CONVERSION need to be accompanied by the dID of the content that has to be HTML formatted .
    Thanks
    Srinath

  • PI SOAP access to third party Webservice,Return ERROR

    Hi Experts,
    I have one soap synchronous scenario access to third party WEBSERVICE,Return error.While testing the wsdl in soap ui, I am getting response, messages showing successfully processed. I think it is pi to send  xmlns:ns1='http://tempuri.org/'  on both sides should not be a single quotation mark, but I don't know how to adjust  PI set. how do you see.
    1、SOAP UI submitted to Webserver XML
    [2014-05-26 08:47:24.662] --- Recv data from SocketId=272 Socket=10880
    POST /MWGate/wmgw.asmx HTTP/1.1
    Accept-Encoding: gzip,deflate
    Content-Type: text/xml;charset=UTF-8
    SOAPAction: "http://tempuri.org/MongateCsSpSendSmsNew"
    User-Agent: Jakarta Commons-HttpClient/3.1
    Host: 10.0.0.253:8082
    Content-Length: 520
    <soapen:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/">
        <soapen:Header />
        <soapen:Body>
            <tem:MongateCsSpSendSmsNew>
                <tem:userId>DOA001</tem:userId>
                <tem:password>dennis</tem:password>
                <tem:pszMobis>1313773654</tem:pszMobis>
                <tem:pszMsg>1111</tem:pszMsg>
                <tem:iMobiCount>1</tem:iMobiCount>
                <tem:pszSubPort>*</tem:pszSubPort>
            </tem:MongateCsSpSendSmsNew>
        </soapen:Body>
    </soapen:Envelope>
    2、PI submitted to Webserver XML
    [2014-05-26 08:36:08.725] --- Recv data from SocketId=271 Socket=10704
    POST /MWGate/wmgw.asmx HTTP/1.0
    Accept: */*
    Host: 10.0.0.253:8082
    User-Agent: SAP-Messaging-com.sap.aii.af.sdk.xi/1.0505
    CallingType: SA
    content-id: <[email protected]>
    Content-Type: text/xml; charset=utf-8
    Content-Length: 417
    SOAPACTION: "http://tempuri.org/MongateCsSpSendSmsNew"
        <SOAP:Envelope xmlns:SOAP='http://schemas.xmlsoap.org/soap/envelope/'>
            <SOAP:Header />
            <SOAP:Body>
                <ns1:MongateCsSpSendSmsNew xmlns:ns1='http://tempuri.org/'>
                    <ns1:userId>DOA001</ns1:userId>
                    <ns1:password>dennis</ns1:password>
                    <ns1:pszMobis>13637731567</ns1:pszMobis>
                    <ns1:pszMsg>Constant</ns1:pszMsg>
                    <ns1:iMobiCount>1</ns1:iMobiCount>
                    <ns1:pszSubPort>*</ns1:pszSubPort>
                </ns1:MongateCsSpSendSmsNew>
            </SOAP:Body>
        </SOAP:Envelope>
    3、SXI_MONITOR   Payloads content:
      <ns1:MongateCsSpSendSmsNew xmlns:ns1="http://tempuri.org/">
            <ns1:userId>DOA001</ns1:userId>
            <ns1:password>dennis</ns1:password>
            <ns1:pszMobis>13637731567</ns1:pszMobis>
            <ns1:pszMsg>Constant</ns1:pszMsg>
            <ns1:iMobiCount>1</ns1:iMobiCount>
            <ns1:pszSubPort>*</ns1:pszSubPort>
        </ns1:MongateCsSpSendSmsNew>
    4、PI channel

    Hi Nathan,
    Have you tried the SOAP HTTP Axis function.
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/b092777b-ee47-2a10-17b3-c5f59380957f?overridelayout=t…
    https://help.sap.com/saphelp_nw04/helpdata/en/45/a39e244b030063e10000000a11466f/content.htm
    Configuring the Receiver Axis SOAP Adapter (SAP Library - SAP Exchange Infrastructure)
    Regards,
    Jannus Botha

  • Webservice hell -  invalid content type for SOAP: TEXT/HTML

    Hi All
    I'm trying to call a webservice in XI and getting the dreaded  "invalid content type for SOAP: TEXT/HTML" error.
    Running it in XMLSpy it works perfectly well, but not in XI.
    Here are some screenshots:
    1) The Request sent from XMLSpy
    [XMLSpy Request - Successful|http://www.host-images.com/u/files/3spjf72drc9ncjhtiovo.jpg]
    2) The successful response to XMLSpy
    [XMLSpy response|http://www.host-images.com/u/files/c3u8k9bplpzu8z6il61a.jpg]
    3) Here is the error in XI in RWB, together with the XML payload
    [XML and RWB error|http://www.host-images.com/u/files/9ex5dhqua9y07lhpja09.jpg]
    4) Here is the SOAP Comms Channel
    [Comms channel|http://www.host-images.com/u/files/w6pa90yy0nkly628535i.jpg]
    Note:
    1. The 'Target URL' and the 'SOAP Action' are taken directly from the parameters used successfully in XMLSpy
    2. I have already added 'localejbs/AF_Modules/MessageTransformBean' / 'Transform.ContentType' / text/xml;charset=utf-8
    I woul really appreciate some help with this, as I'm getting kind of desparate.
    Thanks in advance.

    Hi Mark / All
    Thanks for the info.  I have some additional questions please:
    1.  Regarding SOAP 1.2
    It apears that the WSDL provided allows for both 1.1 and 1.2.  Infact, when I sent the SOAP request in XMLSpy, the first thing I see if a pop-up window asking me to select 1) OrderServiceSoap or OrderServiceSoap12 ...
    [XMLSpy|http://www.host-images.com/u/files/g50y9xohakbhb7j5v3w4.jpg]
    However I don't see this option when I use the WSDL in XI, only a list:
    [XI|http://www.host-images.com/u/files/230urvn7okvb4jbad1o8.jpg]
    How can I emulate selecting the the non-1.2 version in XI?
    2.  Probably irrelevant but,  If I tick 'Do not use SOAP envelope'  option on the CC I get:
    MP: exception caught with cause com.sap.aii.af.ra.ms.api.RecoverableException: SOAP: response message contains an error XIAdapter/HTTP/ADAPTER.HTTP_EXCEPTION - HTTP 407 Proxy Authentication Required ( The ISA Server requires authorization to fulfill the request. Access to the Web Proxy filter is denied.  )
    Can anyone confirm if this is a consequence of ticking ''Do not use SOAP envelope', or if it indicates a underlying problem with the Proxy credentials I have entered.
    Thanks again.

  • Response struct of SOAP in particular case (in 9i AS Soap Server)

    In Oracle9i AS Soap Server,
    If the method is void type, which type of response struct will
    be sent from 9i Soap Server?
    1) Omit the response struct.
    2) Return a response struct with dummy value.

    Thanks for your response, Sandro.
    The webservice which I use has been modified. Now if it throws an exception, I receive well a SOAP message :
    <soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
       <soap-env:Body>
          <soap-env:Fault>
             <faultcode>soap-env:Client</faultcode>
             <faultstring xml:lang="en">ALREADY_EXISTS</faultstring>
             <detail>
                <n0:Z_WS_CREATE_WAGON.Exception xmlns:n0="urn:sap-com:document:sap:rfc:functions">
                   <Name>ALREADY_EXISTS</Name>
                   <Text>Virus scan profile /SIHTTP/HTTP_UPLOAD is not active</Text>
                   <Message>
                      <ID>VSCAN</ID>
                      <Number>033</Number>
                   </Message>
                </n0:Z_WS_CREATE_WAGON.Exception>
             </detail>
          </soap-env:Fault>
       </soap-env:Body>
    </soap-env:Envelope>
    About the exception managing :<br>
    - In my integration process, I include the send step in a block, with property <i>Exceptions</i> =
    ALREADY_EXISTS
    - In the send step, in property <i>Exceptions</i>, I add <i>System Error</i>
    ALREADY_EXISTS
    - I insert an <i>Exception Branch</i> in the new block, <i>Exception Handler</i>
    ALREADY_EXISTS
    Is that correct?
    Do I need to use Fault messages?
    And how do I get the error message ?
    <br>In transaction ST22, I have no dump.
    <br>If it is a problem of exception managing, why do I get also the error (<i>com.sap.aii.af.ra.ms.api.DeliveryException: invalid content type for SOAP: TEXT/HTML</i>) when all is right in the web service call ?
    Regards,
    Laurence

  • Consume SAP WebService Bean with Flex

    Hello,
    I have an flex application thaht call an sap java webservice bean. And this bean have his own xml namespace.
    How can I read this xml in flex ?
    I have done some test with e4x but I found no solution.
    flex :
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
         <mx:Script>
              <![CDATA[
                   import mx.controls.Alert;
                   import mx.collections.ArrayCollection;
                   import mx.rpc.events.ResultEvent;
                   [Bindable] private var liste:ArrayCollection = new ArrayCollection();
                   private function go(event:Event):void {
                        ws.getIViews.send();
                   private function ergebnis(event:ResultEvent):void {
                        for each(var xml:XML in event.result) {
                   liste.addItem(xml.child("pns:link"));
                        //liste = event.result as ArrayCollection;
                   private function fehler(event:Event):void {
                        Alert.show(event.target.toString(),"Fehler");
              ]]>
         </mx:Script>
         <mx:WebService id="ws" wsdl="http://x.xxt.net:50000/xxPortalServices/Config1?wsdl">
              <mx:operation name="getIViews" result="ergebnis(event)" resultFormat="e4x" fault="fehler(event)">
                   <mx:request>
                        <id>
                        </id>                    
                   </mx:request>
              </mx:operation>
         </mx:WebService>
         <mx:Button id="get" click="go(event)" label="hol"/>
         <mx:DataGrid id="dg" dataProvider="" x="61" y="65">
              <mx:columns>
                   <mx:DataGridColumn dataField="link"/>
              </mx:columns>
         </mx:DataGrid>
    </mx:Application>
    XML:
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
       <SOAP-ENV:Body>
          <rpl:getIViewsResponse xmlns:rpl="urn:xxPortalServicesVi">
             <rpl:Response xmlns:pns="urn:com.xx.ws.prt">
                <pns:IViewsModelDTO>
                   <pns:link>test123</pns:link>
                   <pns:pcdpath>portal_content/XX</pns:pcdpath>
                   <pns:title>test123</pns:title>
                </pns:IViewsModelDTO>
             </rpl:Response>
          </rpl:getIViewsResponse>
       </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    Edited by: Daniel Rothmund on Oct 17, 2009 6:47 PM

    namespace soapen = "http://schemas.xmlsoap.org/soap/envelope/";
    namespace rpl = "urn:xxPortalServicesVi";
    namespace pns = "urn:com.xx.ws.prt" ;
    use namespace soapen;
    somevariable = responsexml.someelement (to read the entire soap body)
    use namespace rpl ;
    somevariable = responsexml.someelement (to read getIViewsResponse)
    use namespace pns ;
    somevariable = responseexml.someelement (to read rpl:Response)
    i haven't tested this, but should work.
    you may also check this
    http://livedocs.adobe.com/flex/3/html/help.html?content=data_access_6.html
    Regards
    Raja
    Edited by: Durairaj Athavan Raja on Oct 26, 2009 8:40 AM

  • Webservices return error NosuchMethod

    Hi Masters.
    I am very new in WebServices and WEBDYNPROS on Java.
    I generated an Webservices to connect to MDM repository that generation finished OK .
    the problem is when I trying to executes that WS since SOAIU editor always return the next message of error
    the xlsd I am testing is :
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:ZWS_VENDOR_MDMVi" xmlns:urn1="urn:com.sap.mdm.ws.beans.zws_vendor_mdm" xmlns:urn2="urn:com.sap.mdm.ws.beans" xmlns:urn3="urn:com.sap.mdm.core.beans">
       <soapenv:Header/>
       <soapenv:Body>
          <urn:searchMDM_VENDORS>
             <urn:query>
                <!--Optional:-->
                <urn1:criteria>
                   <!--Zero or more repetitions:-->
                   <urn1:namedSearchCriteria></urn1:namedSearchCriteria>
                   <!--Zero or more repetitions:-->
                   <urn1:maskCriteria>1</urn1:maskCriteria>
                   <!--Optional:-->
                   <urn1:logicalOperator>1</urn1:logicalOperator>
                   <!--Optional:-->
                   <urn1:keywordCriteria>
                      <!--Optional:-->
                      <urn2:value>1</urn2:value>
                      <!--Optional:-->
                      <urn2:expressionOperator>1</urn2:expressionOperator>
                   </urn1:keywordCriteria>
                   <!--Optional:-->
                   <urn1:mDM_VENDOR_NUMBER>
                      <!--Optional:-->
                      <urn2:logicalOperator></urn2:logicalOperator>
                      <!--Zero or more repetitions:-->
                      <urn2:constraint>
                         <!--Optional:-->
                         <urn2:value>4300024</urn2:value>
                         <!--Optional:-->
                         <urn2:expressionOperator>EQUALS</urn2:expressionOperator>
                      </urn2:constraint>
                   </urn1:mDM_VENDOR_NUMBER>
                </urn1:criteria>
                <!--Optional:-->
                <urn1:resultDefinition>
                <urn2:fieldListType>ALL</urn2:fieldListType>
             <urn2:retrieveKeyMapping>false</urn2:retrieveKeyMapping>
             <urn2:loadAttributes>false</urn2:loadAttributes>
             <urn2:pageNumber>1</urn2:pageNumber>
             <urn2:pageSize>100</urn2:pageSize>
                </urn1:resultDefinition>
             </urn:query>
             <urn:reposInfo>
                <!--Optional:-->
                <urn3:dataLang>English [US]</urn3:dataLang>
                <!--Optional:-->
                <urn3:destinationName>MDM_Destination</urn3:destinationName>
                <!--Optional:-->
                <urn3:repositoryName>VENDOR_CATALOG</urn3:repositoryName>
                <!--Optional:-->
                <urn3:secureConnection>false</urn3:secureConnection>
                <!--Optional:-->
                <urn3:serverName>led1.la.holcim.net</urn3:serverName>
             </urn:reposInfo>
          </urn:searchMDM_VENDORS>
       </soapenv:Body>
    </soapenv:Envelope>
    the error WS is returned .
      <SOAP-ENV:Body xmlns:rpl="urn:ZWS_VENDOR_MDMVi">
          <rpl:searchMDM_VENDORSResponse xmlns:rn0="java:sap/standard" xmlns:rn1="urn:com.sap.mdm.ws.beans" xmlns:rn2="http://schemas.xmlsoap.org/soap/encoding/" xmlns:rn3="urn:com.sap.mdm.core.base" xmlns:rn4="urn:com.sap.mdm.ws.beans.zws_vendor_mdm" xmlns:rn5="urn:com.sap.mdm.core.beans">
             <Response>
                <rn1:executionStatus>
                   <rn1:status>Fault</rn1:status>
                   <rn1:description>com.sap.mdm.extension.session.ConnectionManagerEx.getMdmDestinationProperties(Ljava/lang/String;)Lcom/sap/mdm/session/NetWeaverMdmDestinationProperties;</rn1:description>
                   <rn1:fault>
                      <rn1:severity>Error</rn1:severity>
                      <rn1:text>java.lang.NoSuchMethodError: com.sap.mdm.extension.session.ConnectionManagerEx.getMdmDestinationProperties(Ljava/lang/String;)Lcom/sap/mdm/session/NetWeaverMdmDestinationProperties;
      at com.sap.mdm.ws.data.connection.AbstractWSConnectionManager.createUserSessionContextFromDestination(AbstractWSConnectionManager.java:101)
      at com.sap.mdm.ws.data.connection.BasicAuthenticationConnectionManagerImpl.createAuthenticatedSessionCtx(BasicAuthenticationConnectionManagerImpl.java:72)
      at com.sap.mdm.ws.data.EJBGateWay.createConnection(EJBGateWay.java:404)
      at com.sap.mdm.ws.data.EJBGateWay.executeOperation(EJBGateWay.java:210)
      at com.sap.mdm.ws.data.EJBGateWay.executeOperation(EJBGateWay.java:147)
      at com.sap.mdm.ws.gen.ejbs.ZWS_VENDOR_MDMBean.searchMDM_VENDORS(ZWS_VENDOR_MDMBean.java:47)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    any idea which is the problem . thanks in advaned.

    Hi Ravi.   thanks for you support.
    I made the test On WebService Navigator but the result was the same nosuchMethot. I am really doubing if componets are the currect version.
    Do you Know a guide over currect versions MDM componets are compatibility acorde My Netweaber 7.2  I have the next componets Installed right Now.
    MDM_EP
    1000.710.711.7.0.20110411202139
    MDM_JAVA_API
    1000.710.0.13.109.20141123194400
    MDM_WEB_SERVICES
    1000.710.710.13.0.20141201183346
    MDM_CONNECTOR
    1000.710.711.8.47.20130404190252
    MDM_WEB_SERVICES_RUNTIME
    1000.710.711.13.0.20141201183341
    MDM_JAVA_WD_FRAMEWORK
    1000.710.711.7.39.20130226190744
    Thanks in Advances

  • Web Service call - XI - SAP  and  SAP - XI  - Web Service response ???

    Hi ALL,
    Need some  guidance on the following Scenario :
    A Legacy system  would  transfer some data to SAP thoruhg a Web Service call and  would expect a response from SAP by way of a response to the same Web service call
    A synchronous Interface , inbound to sap via a Web service call and back  to the legacy system through the response to the same Web Service .
    Need to provide WSDL to the Legacy system
    Any help on how to do the above mentioned will be apreciated
    thanks in advance

    SD,
    Check this weblog for step by step procedure:
    /people/siva.maranani/blog/2005/09/03/invoke-webservices-using-sapxi
    Here instead of deploying in XI you will deploy your webservice in the legacy system.
    If you want to test this webservice then check this weblog:
    /people/siva.maranani/blog/2005/09/03/invoke-webservices-using-sapxi
    ---Satish

  • Connecting SAP XI to Websphere Commerce server via SOAP

    Hi, I hope you can help...
    I am currently attempting to connect to Websphere Commerce server 6.0.0.6 from SAP XI 3.0 using web services. Websphere Commerce has standard services for loading products that we would like to automate from SAP ECC. I have created the interface using an async/sync bridge in BPM.
    Matmas IDoc (Async) --> ProcessCatalogEntry (Sync Request) --> AcknowledgeCatalogEntry (Sync Response) --> ALEAUD IDoc (Async).
    This is working to an extent and I have a request and response in the message monitor
    However, in the response message I am receiving an authorisation failure as the webservice requires the following in the SOAP header:
      <soapenv:Header>
      <wsse:Security soapenv:mustUnderstand="1"
        xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wsswssecurity-secext-1.0.xsd">
          <wsse:UsernameToken>
            <wsse:Username>xxxxxxxx</wsse:Username>
            <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wssusername-token-profile1.0#PasswordText">xxxxxxxx
             </wsse:Password>
           </wsse:UsernameToken>
         </wsse:Security>
       </soapenv:Header>
    From reading several posts I  used the nosoap method to achieve this. I checked the "Do not use SOAP envelope"
    in my receiver SOAP channel. I downloaded the SOAP Envelope XSD and added to it to include my additional header and body elements.
    However, this is not working and I receive the following message in the monitor:
    SOAP: Response message contains an error XIAdapter/HTTP/ADAPTER.HTTP_EXCEPTION - HTTP Internal Server Error
    I also created an XSLT to add the required SOAP header but was unsure how to use this as part of a synchronous process...
    If you can, could you please advise me on how to resolve this issue...
    Many thanks,
    Pete
    Edited by: Pete White on Feb 4, 2010 11:49 AM

    Hello Thomas,
    thanks for your answer. We are already on SP19. Starting and stopping is reacting but only with the above mentioned errors.
    I think, that the classnames are OK because with a little Java JMS Testprogramm with the same parameters from the channeldefinition we can connect to the BEA Server. So this should be OK.
    Kind regards
    Manfred Schmidt-Voigt

  • Read values from html response

    Hi,
    I am trying to make a call to an API using UTL_HTTP POST method over SSL and read the response html page and extract the values from the reponse.
    I am able to call and get a response back in html format. I have stored the html response in a clob variable.
    Now i want to parse this html and extract values from the form input items and send them out through OUT parameters.
    For example, from below reponse i want to extract the value '1111d7nhcwse30wq' from 'I4GO_UNIQUEID'
    Can anyone help me with the code to parse this html response and extract the values.
    Any help is greatly appreciated.
    Thanks
    Sharath
    sample Code:
    PROCEDURE get_token (
    p_requesterreference IN VARCHAR2,
    p_cardnumber IN VARCHAR2,
    p_cardtype IN VARCHAR2,
    p_cardholdername IN VARCHAR2,
    p_expirationmonth IN VARCHAR2,
    p_expirationyear IN VARCHAR2,
    p_streetaddress IN VARCHAR2,
    p_postalcode IN VARCHAR2,
    p_cvv2code IN VARCHAR2,
    po_uniqueid OUT VARCHAR2,
    po_errorindicator OUT VARCHAR2,
    po_primaryerrorcode OUT VARCHAR2,
    po_response OUT VARCHAR2,
    po_status_code OUT VARCHAR2,
    po_reason_phrase OUT VARCHAR2
    IS
    v_url VARCHAR2 (200);
    v_url_params VARCHAR2 (32767);
    v_resp_str VARCHAR2 (32767);
    l_http_req UTL_HTTP.req;
    l_http_resp UTL_HTTP.resp;
    v_requesterreference VARCHAR2 (12) := p_requesterreference;
    v_i4go_cardnumber VARCHAR2 (32) := p_cardnumber;
    v_i4go_streetaddress VARCHAR2 (30) := p_streetaddress;
    v_i4go_postalcode VARCHAR2 (9) := p_postalcode;
    v_i4go_expirationmonth VARCHAR2 (2) := p_expirationmonth; -- MM format
    v_i4go_expirationyear VARCHAR2 (2) := p_expirationyear; -- yy format
    v_i4go_cvv2code VARCHAR2 (3) := p_cvv2code;
    v_name VARCHAR2 (256);
    v_value VARCHAR2 (1024);
    l_clob CLOB;
    pv_amp CONSTANT CHAR (1) := CHR (38);
    CURSOR setup_cur
    IS
    SELECT interface_id, interface_name, interface_url, account_id, site_id
    FROM rsv.shift4_setup
    WHERE interface_name = 'I4GO';
    v_setup_rec setup_cur%ROWTYPE;
    BEGIN
    OPEN setup_cur;
    FETCH setup_cur
    INTO v_setup_rec;
    CLOSE setup_cur;
    v_url := 'https://certify.i4go.com//index.cfm?fuseaction=account.PostCardEntry';
    v_url_params :=
    pv_amp
    || 'i4GO_AccountID='
    || v_setup_rec.account_id
    || pv_amp
    || 'i4Go_SiteID='
    || v_setup_rec.site_id
    || pv_amp
    || 'i4Go_CardNumber='
    || v_i4go_cardnumber
    || pv_amp
    || 'i4Go_ExpirationMonth='
    || v_i4go_expirationmonth
    || pv_amp
    || 'i4Go_ExpirationYear='
    || v_i4go_expirationyear
    || pv_amp
    || 'i4Go_CVV2Code='
    || v_i4go_cvv2code
    || pv_amp
    || 'i4Go_PostalCode='
    || v_i4go_postalcode;
    -- begin request using POST method
    UTL_HTTP.set_response_error_check (FALSE);
    UTL_HTTP.set_transfer_timeout (180);
    UTL_HTTP.set_wallet ('file:/etc/ORACLE/WALLETS/oracle', 'welcome1');
    l_http_req := UTL_HTTP.begin_request (v_url, 'POST');
    UTL_HTTP.set_header (l_http_req, 'User-Agent', 'Mozilla/4.0');
    UTL_HTTP.set_header (l_http_req, 'Content-Type', 'application/x-www-form-urlencoded');
    UTL_HTTP.set_header (l_http_req, 'content-length', LENGTH (v_url_params));
    UTL_HTTP.write_text (l_http_req, v_url_params);
    -- get response
    l_http_resp := UTL_HTTP.get_response (l_http_req);
    po_status_code := l_http_resp.status_code;
    po_reason_phrase := l_http_resp.reason_phrase;
    -- read response into a clob
    DBMS_LOB.createtemporary (l_clob, FALSE);
    BEGIN
    LOOP
    UTL_HTTP.read_text (l_http_resp, v_resp_str, 32767);
    DBMS_LOB.writeappend (l_clob, LENGTH (v_resp_str), v_resp_str);
    END LOOP;
    EXCEPTION
    WHEN UTL_HTTP.end_of_body
    THEN
    -- end response
    UTL_HTTP.end_response (l_http_resp);
    END;
    -- Fre resources
    DBMS_LOB.freetemporary (l_clob);
    EXCEPTION
    WHEN OTHERS
    THEN
    DBMS_LOB.freetemporary (l_clob);
    DBMS_OUTPUT.put_line (UTL_HTTP.get_detailed_sqlerrm);
    RAISE;
    END;
    sample response:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
         <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
         <title>Return With Payment Token</title>
         <script src="js/jquery-1.6.4.min.js" type="text/javascript"></script>
         <script type="text/javascript"><!--
              picSpinner= new Image(40,40);
              picSpinner.src="images/loading040.gif";
              bodyOnLoad = function() {
                   $("#noScriptDiv").hide();
                   $("#scriptDiv").show();
                   $("#i4GoMainForm").submit();
         //--></script>
    </head>
    <body onload="bodyOnLoad();">
         <form name="i4GoMainForm" id="i4GoMainForm" action="http://google.com" method="POST" onsubmit="$('#i4Go_submit').attr('disabled','disabled');">
                   <input name="I4GO_RESPONSE" type="hidden" value="SUCCESS" />
                   <input name="I4GO_RESPONSECODE" type="hidden" value="1" />
                   <input name="I4GO_CARDTYPE" type="hidden" value="VS" />
                   <input name="I4GO_UNIQUEID" type="hidden" value="1111d7nhcwse30wq" />
                   <input name="I4GO_EXPIRATIONMONTH" type="hidden" value="12" />
                   <input name="I4GO_EXPIRATIONYEAR" type="hidden" value="2012" />
                   <input name="I4GO_CARDHOLDERNAME" type="hidden" value="" />
                   <input name="I4GO_STREETADDRESS" type="hidden" value="" />
                   <input name="I4GO_POSTALCODE" type="hidden" value="65000" />
              <div id="scriptDiv" style="font-family:Arial, Helvetica, sans-serif;font-size:18px;visibility:hidden;">
                   <img src="images/loading040.gif" alt="Spinner..." />  Loading...
              </div>
              <div id="noScriptDiv" style="font-family:Arial, Helvetica, sans-serif;">
                   <noscript>
                                       <h1>Statement of Tokenization</h1>
                                       <p>The payment information you have submitted has been securely stored in the Shift4 PCI-DSS certified data center and a token representing this information will be sent to the merchant for processing. Below is the information that will be returning to the originating merchant:</p>
                                       <ul>
                                            <li>Response: <strong>SUCCESS</strong></li>
                                            <li>Response Code: <strong>1</strong></li>
                                            <li>Card Type: <strong>VS</strong></li>
                                            <li>Token: <strong>1111d7nhcwse30wq</strong></li>
                                       </ul>
                   </noscript>
    <input type="submit" name="i4Go_submit" id="i4Go_submit" value="Continue" />
              </div>
         </form>
    </body>
    </html>
    Edited by: sgudipat on Apr 24, 2012 1:20 PM

    Here is working example for your HTML using xpath to extract values from html
    You can store your html response in clob variable and then extract the value with xpath
    declare
       l_clob clob;
       l_value varchar2(100);
       l_xml xmltype;
      begin
         l_clob :='<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
      <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
      <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
      <title>Return With Payment Token</title>
      <script src="js/jquery-1.6.4.min.js" type="text/javascript"></script>
      <script type="text/javascript"><!--
       picSpinner= new Image(40,40);
       picSpinner.src="images/loading040.gif";
       bodyOnLoad = function() {
       $("#noScriptDiv").hide();
       $("#scriptDiv").show();
       $("#i4GoMainForm").submit();
      //--></script>
       </head>
       <body onload="bodyOnLoad();">
       <form name="i4GoMainForm" id="i4GoMainForm" action="http://google.com" method="POST" onsubmit="$(''#i4Go_submit'').attr(''disabled'',''disabled'');">
       <input name="I4GO_RESPONSE" type="hidden" value="SUCCESS" />
       <input name="I4GO_RESPONSECODE" type="hidden" value="1" />
       <input name="I4GO_CARDTYPE" type="hidden" value="VS" />
       <input name="I4GO_UNIQUEID" type="hidden" value="1111d7nhcwse30wq" />
       <input name="I4GO_EXPIRATIONMONTH" type="hidden" value="12" />
       <input name="I4GO_EXPIRATIONYEAR" type="hidden" value="2012" />
       <input name="I4GO_CARDHOLDERNAME" type="hidden" value="" />
       <input name="I4GO_STREETADDRESS" type="hidden" value="" />
       <input name="I4GO_POSTALCODE" type="hidden" value="65000" />
      <img src="images/loading040.gif" alt="Spinner..." />  Loading...
       <noscript>
       Statement of Tokenization
       The payment information you have submitted has been securely stored in the Shift4 PCI-DSS certified data center and a token representing this information will be sent to the merchant for processing. Below is the information that will be returning to the originating merchant:
           Response: SUCCESS
           Response Code: 1
           Card Type: VS
           Token: 1111d7nhcwse30wq
       </noscript>
       <input type="submit" name="i4Go_submit" id="i4Go_submit" value="Continue" />
       </form>
       </body>
       </html>';
         execute immediate 'alter session set events =''31156 trace name context forever, level 2''';
         l_xml := xmltype(l_clob);
         execute immediate 'alter session set events =''31156 trace name context off''';
         select extractvalue( l_xml
                            , '/html/body/form/input[@name="I4GO_CARDTYPE"]/@value'
                            , 'xmlns="http://www.w3.org/1999/xhtml"' )
         into l_value
         from dual;
         dbms_output.put_line(l_value);
       end;
    Problem when parsing html with xpath and xmltype
    Edited by: peterv6i.blogspot.com on Apr 26, 2012 9:38 AM

  • Mapping problem in SOAP response to RFC response - RFC-XI-SOAP scenario

    Hi gurus,
    response structure from SOAP is as below (inbound msg - in SXMB_MONI)
    MONI and RWB shows successful(I am using graphical mapping)
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Inbound Message
      -->
    - <ns0:testrequestResponse xmlns:ns0="conversion" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" Status="Success">
    - <ns0:SAP_OUT>
           <ns0:F1 Value="1234" />
           <ns0:F2 Value="2345" />
         - <ns0:SAP_LINES>
             - <ns0:SAP_LINE>
                    <ns0:SAP_L Value="1" />
                    <ns0:Field5 Value="" />
                  - <ns0:SAP_S1>
                           - <ns0:SAP_S>
                                   <ns0:ID Value="11111" />
                                   <ns0:SAP__NO Value="0001" />
                                   <ns0:DATE1 Value="08/15/2008 00:00:00:000" />
                                   <ns0:FST/>
                             </ns0:SAP_S>
                    </ns0:SAP_S1>
             </ns0:SAP_LINE>
          </ns0:SAP_LINES>
      </ns0:SAP_OUT>
      </ns0:testrequestResponse>
    I make the RFC response with same structure and mapped it but it is not giving the full structure rather it is giving only this (Outbound Msg in SXMB_MONI)
      <?xml version="1.0" encoding="UTF-8" ?>
    - <ns1:Z_MYRFC.Response xmlns:ns1="urn:sap-  com:document:sap:rfc:functions">
      <STATUS>Success</STATUS>
      </ns1:Z_MYRFC.Response>
    what went wrong?

    Hi,
    You would have forgot to map parent node coming after <STATUS>Success</STATUS>
    Make sure that you have properly mapped all the parents and there child.
    Are you getting the same result while Testing it standalone?
    Thanks
    Sunil Singh

  • No Response in synchronous SOAP adapter

    Hi Experts,
           I configured a soap-xi-soap scenario on XI 7.0, and i can run the whole scenario successfully. But i can not get the response from the outbound.
           I tested my scenario via XML spy, when i sent the request, i always got the following content in XML Spy:
    <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
         <SOAP:Header/>
         <SOAP:Body/>
    </SOAP:Envelope>
    But if i sent a request to my target web service directly, i can get the correctly ressult. like this:
        <?xml version="1.0" encoding="utf-8"?>
    <SOAP-ENV:Envelope xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
         <SOAP-ENV:Body xmlns:rpl="urn:WS_Hello_NameSi">
              <rpl:sayHiResponse xmlns:rn0="http://schemas.xmlsoap.org/soap/encoding/" xmlns:rn1="java:sap/standard">
                   <rpl:Response>This is Hello World test.</rpl:Response>
              </rpl:sayHiResponse>
         </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    I used message monitor and channel monitor, all the information display successful.
    when i use  "SXMB_MONI" monitor, the technical routing is correct, but the content in response is wrong?
    So what is the problem? Can somebody help me?
    BTW, i want to use TCP Gate to monitor the request, unfortunately i can not capture anything in my scenario. but i can capture the request if i sent a request to web servies.
    Thanks & regards
    Rocky

    Hi Matias,
       Thanks your reply!
       My question has been solved. Because i use the wrong Quality of service;
    ·    BE (Best Effort):
    The message is sent synchronously. The sender waits for a response before it continues processing.
    ·   EO (Exactly Once):
    The message is sent asynchronously. The sender does not wait for a response. The Integration Engine and the Adapter Engine guarantee that the message is sent and processed exactly once.
    ·  EOIO (Exactly Once In Order):
    Messages are delivered with the same queue names (supplied by the application) in the same sequence that they were sent from the sender system. Message processing is asynchronous in this case.
    Use the Best effort for synchronous scenario.
    Thanks&Regards
    Rocky

  • ALV GRID  and Integrated ITS 7 (SAP GUI for HTML) - dissapears on reload

    Hi All,
    We have a custom report that uses an ALV grid to display information to the user. Within this grid, there are fields that are display only and fields that are editable. Also, the grid is wider than the screen's width. It works fine in ECC. It also worked fine when we were using ITS 6.4.
    We have recently upgraded to ITS 7. Now when we run the report using a Transaction iView (in EP 7) or the Webgui service (SAP GUI for HTML), if a field that is editable has focus when an event is triggered that reloads the grid, the screen becomes blank. So, you can click the Save button and the screen goes blank, also, there are date fields in the grid and if you choose a new date, the grid reloads and the screen becomes blank.
    We have found that when the screen is blank, you can use the "Page Up" button on your keyboard and the last few columns of the grid will appear. As if the entire grid has moved off-screen to the left.
    If you click onto a non-editable field and refresh or save, the grid returns to its normal state.
    We are on Basis Patch level 15.
    Does anyone have any ideas on how to fix this?
    Also, does anyone know of a standard SAP transaction we can call from the Webgui that would have a similar setup...with an ALV grid containing editable and non-editable fields? We would like to rule out any errors in the report itself. Since it worked before we upgraded and it works fine in ECC. This would be a really big help too.
    Thank you so much!
    -Kevin

    Hi,
    Thanks Raymond, I have seen Note 314568. I could not get the second link to work but I have looked at just about every Note in reference to Integrated ITS 7 and Tables or ALV Grids and there are very many, so it would appear that SAP has had a hard time with implementing this control, but I have not seen any instance that matches the problem we are having.
    Unfortunately, SAP will not investigate this unless we can provide a standard Transaction that exhibits the same behavior.
    If anyone knows of a standard SAP Transaction that displays an ALV Grid that is wider than the screen (requiring a horizontal scroll bar) and with editable and non-editable fields, that would be fantastic. If we can test against that, then we would know for sure if this is a problem with ITS / SAP GUI for HTML, or if there is an issue with this specific report.
    Thanks!
    -Kevin

  • Accessing local clipboard with SAP GUI for HTML - alternatives?!?

    I need some creative suggestions (PLEASE!!!) to a problem that weu2019re having replicating functionality that works in SAPGUI but which we canu2019t get working in SAP GUI for HTML.
    In SAPGUI we are able to open an external browser and pass a URL for the page we want to open.  Once the page is open the user enters some data and receives a response which we then copy to the local workstation clipboard.  From within ABAP we then read the clipboard contents and then copy them in to a field in the SAP screen.  It works BRILLIANTLY! 
    However, Iu2019m not able to get the same functionality to work in SAP GUI for HTML with method CLIPBOARD_IMPORT of CL_GUI_FRONTEND_SERVICES.  Apparently this class and the methods can not be used in SAP GUI for HTML u2013 however OSS note 314568 seems to suggest otherwise with this statement:
    Clipboard access
    In SAP GUI for HTML it is not possible to:
    - read or write the clipboard using ABAP Objects class CL_GUI_FRONTEND_SERVICES.
      This limitation no longer exists with ITS 6.20 Patch 23, SAP Netweaver 2004 SP 19 and SAP Netweaver 2004s SP 10.
    Has anyone been able to use the class CL_GUI_FRONTEND_SERVICES to read from the Clipboard since this statement was made in this OSS note?
    And my bigger question u2013 does anyone have a creative idea for a solution that will work?

    Thank you experts,
    Your answers have been really helpfull, we have to try another method, by Studio Program or ABAP code, unfortunely we have to implement this in so many computers, so is impossible to configure one by one.
    Thanks to both, and have a nice 2009!
    Ricardo Pineda
    Edited by: Ricardo Pineda on Jan 13, 2009 2:09 AM

  • SAP GUI for HTML on Portal

    Hello All,
    I have transaction iViews on the portal and I am using SAP GUI for HTML. Upon launching this iView, i get the logon page, even though I have SSO set up and working fine.
    Now, the problem is, even after logging on with qualified credentials, the logon page disappears, 'Logon is starting' appears then the logon page reappears, as if nothing happened.
    Any ideas as to why this is happening and how I can fix it?
    Regards,
    Motaz

    Edgar: The ITS is working and the service launches successfully through the GUI.
    I overcame the issue by using SAP GUI for Windows instead. I guess there is a problem when using the HTML GUI from a public IP. Something to do with security or a conflict in the 'hosts' file.
    Regards,
    Motaz

Maybe you are looking for