XI SOAP-ENV request!!!

Hi all,
I have a problem that is not resolved yet and I’m feeling quite worried because I used up all the hypotheses that knew!!! I did a test that it gave a light, where problem are placed, but I don’t know how I can fix it. I hope that somebody could help me…
Calling the web service directly via an external tool as a web service client using soap sender adapter, the request SOAP-ENV is:
<?xml version="1.0" encoding="UTF-8" ?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xs="http://www.w3.org/2001/XMLSchema"><SOAP-ENV:Body SOAP-ENV:encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'><b><ns1:send xmlns:ns1='prt:service:pt.edp.sync'><send_1_param2 xsi:type='xs:string'>teste</send_1_param2></ns1:send></b></SOAP-ENV:Body></SOAP-ENV:Envelope>
And it works fine!
Using the same external tool also as a web service client, but now trough XI, the SOAP-ENV request is a little bit different: (the tag with send method it lack!!!)
<b>…
<ns1:send_1_param2 xmlns:ns1='prt:service:pt.edp.sync'>teste</ns1:send_1_param2>
…</b>
It seams that method <b>“send”</b> is not being invoked, if you look to the previous SOAP-ENV you see the tag with method <b><ns1:send …></b> before tag with input parameter <b><ns1:send_1_param2…></b> I think that this tag should come into soap request invoked by XI. For one reason that I don’t know, this tag doesn’t come... and when I look to the log of web service provider invoked from XI (is a SAP EP) the log gives me this message:
<b>Method with name send_1_param2 is not defined in wsdl file
[EXCEPTION]     
java.lang.NoSuchMethodException</b>
It seams that XI wants to invoke a method with a wrong name <b>“send_1_param2”</b>; the method to be invoked should be <b>“send”</b> and not <b>“send_1_param2”</b>!!! Can anybody explain me why this happening? Did I forget something, some configuration steps?
Any help are appreciated.
Regards,
Ricardo.

Hi guys,
Here the answer… like I promise!
All I get is a little explanation about web services rpc-styled in SOAP FAQ (note 856597) under question: “Q: Can I convert an RPC styled WSDL to a document styled WSDL?”
Some RPC styled service implementations have problems with such non conformant SOAP service. Therefore, we also need to adjust the message accordingly.
First we need to find what kind of elements (tags) are missing on the soap request/response and add these elements (adjust the message accordingly).
I fixed my problem using XSLT extension (ABAP Engine). All I did was following the steps provided in the Robert Eijpe weblog /people/r.eijpe/blog/2005/11/04/using-abap-xslt-extensions-for-xi-mapping
But you also could create your own request using graphical mapping and add the missing tags. In my case a just only needed to add <operator> tag to invoke the right method.
I test with both (XSLT and Graphical mapping) and it works
I hope it helps anybody with identical problems.
Cheers,
Ricardo.

Similar Messages

  • SOAPException: faultCode=SOAP-ENV:Protocol; msg=Missing content type

    I have a WSDL file for which I have created a Web Service stub/skeleton through jdeveloper(version 10.1.2.3.0). Below is the complete code which has been generated by developer. Now whenever i try to run this file in jdeveloper I get the following exception. Please let me know how to resolve this issue.
    Also error message is received at the following line of code:
    *msg.send(endpointURL, ""<<some URL>>", requestEnv);*
    {code}
    *Exception Message*
    {code}
    [SOAPException: faultCode=SOAP-ENV:Protocol; msg=Missing content type.]
    at org.apache.soap.transport.TransportMessage.read(TransportMessage.java:249)
    at oracle.soap.transport.http.OracleSOAPHTTPConnection.post(OracleSOAPHTTPConnection.java:973)
    at oracle.soap.transport.http.OracleSOAPHTTPConnection.send(OracleSOAPHTTPConnection.java:722)
    at org.apache.soap.messaging.Message.send(Message.java:125)
    at mypackage.NPVNSDLStub.PANDetails(NPVNSDLStub.java:88)
    at mypackage.NPVNSDLStub.main(NPVNSDLStub.java:41)
    {code}
    *Code generated by Jdeveloper*
    {code}
    package mypackage;
    import oracle.soap.transport.http.OracleSOAPHTTPConnection;
    import org.apache.soap.encoding.SOAPMappingRegistry;
    import org.w3c.dom.Element;
    import java.util.Vector;
    import oracle.jdeveloper.webservices.runtime.WrappedDocLiteralStub;
    import java.net.URL;
    import org.apache.soap.Envelope;
    import org.apache.soap.Body;
    import org.apache.soap.messaging.Message;
    import java.util.Properties;
    * Generated by the Oracle JDeveloper 10g Web Services Stub/Skeleton Generator.
    * Date Created: Wed Feb 29 18:39:33 IST 2012
    * WSDL URL: file:/C:/WS/sample.wsdl
    public class NPVNSDLStub extends WrappedDocLiteralStub
    public NPVNSDLStub()
    m_httpConnection = new OracleSOAPHTTPConnection();
    public static void main(String[] args)
    try
    NPVNSDLStub stub = new NPVNSDLStub();
    stub.PANDetails("aaaaa8888a");
    catch(Exception ex)
    ex.printStackTrace();
    private String _endpoint = "<<some URL>>";
    public String getEndpoint()
    return _endpoint;
    public void setEndpoint(String endpoint)
    _endpoint = endpoint;
    private OracleSOAPHTTPConnection m_httpConnection = null;
    private SOAPMappingRegistry m_smr = null;
    public String PANDetails(String Request) throws Exception
    URL endpointURL = new URL(_endpoint);
    Envelope requestEnv = new Envelope();
    Body requestBody = new Body();
    Vector requestBodyEntries = new Vector();
    String wrappingName = "PANValidationRequest";
    String targetNamespace = "<<namespace url>>";
    Vector requestData = new Vector();
    requestData.add(new Object[] {"Request", Request});
    requestBodyEntries.addElement(toElement(wrappingName, targetNamespace, requestData, false));
    requestBody.setBodyEntries(requestBodyEntries);
    requestEnv.setBody(requestBody);
    Message msg = new Message();
    msg.setSOAPTransport(m_httpConnection);
    *msg.send(endpointURL, "<<some URL>>", requestEnv);*
    Envelope responseEnv = msg.receiveEnvelope();
    Body responseBody = responseEnv.getBody();
    Vector responseData = responseBody.getBodyEntries();
    return (String)fromElement((Element)responseData.elementAt(0), java.lang.String.class);
    {code}
    Edited by: EJP on 2/03/2012 17:22: added code tags, but your indentation needs fixing                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

    Kishore,
    See the links referenced in these threads.
    Web Services and R12
    Re: Web Services and R12
    Integrated SOA Gateway
    Re: Integrated SOA Gateway
    Regards,
    Hussein

  • SOAP Receiver: Problem with SOAP Multipart Request (wsdl:part)

    Dear PI experts,
    our partner provided a WSDL with the following definition (I modified it to keep it simple and showing the principles)
       <wsdl:message name="nameOfMessage">
          <wsdl:part element="part1" name="header" />
          <wsdl:part element="part2" name="parameters" />
          <wsdl:part element="part3" name="attachment" />
       </wsdl:message>
    After importing this WSDL in ESR, I found the following definition on tab 'WSDL':
             <xsd:complexType name="nameOfMessage">
                <xsd:sequence>
                   <xsd:element name="header" type="authentication" />
                   <xsd:element name="parameters" type="businessDatal" />
                   <xsd:element name="attachment" type="Binary" />
                </xsd:sequence>
             </xsd:complexType>
    When creating the request message in PI it looks as follows:
    <nameOfMessage>
    <header/>
    <parameters/>
    <attachment/>
    </nameOfMessage>
    However our WebService provider expects the following:
    <soap:env>
    <authentication/>
    <parameters/>
    <attachment/>
    </soap:env>
    When using SoapUI and importing the WSDL the request message looks as expected by the web service provider and the part names are resolved.
    I could try to convert the request using XSLT but this does not seem to be a best practice approach.
    Do you have any advice on how to handle this issue?
    Thank you very much.

    Hi Florian,
    I modified some WS to be handled by another systems, and sometimes, when the SOAP adapter is involved, you send a Request to PI (that has NOT the same structure, than the declared in the MM) but it takes the req. anyway.
    Did you try sending a request?
      Juan.

  • SOAP RECEIVER: Possible to change the soap header request

    Hi
    Is it possible to change what is included in the soap header like namespaces (.. xmlns:ns="http://what.com"
    Specifically I need to have the "http://Strange.org/thisis.xsd" (see below) included in the header and the <ns:pi-create> included in SOAP-ENV
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:ns="http://Strange.org/thisis.xsd">
    <SOAP-ENV:Body>
    <ns:pi-create>
    <request>
    <request-data>...
    </request-data>
    </request>
    </ns:pi-create>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    Hope somebody can help
    Cheers

    Hi Bowie,
    1.You can change the Namespace. condition is no obj's under the namesapce then only it's possible otherwise u can't.
    2.create a new namesapce what ever u want and copy all the obj's under that namesapce.finally delete the previous one.
    XMLAnonymizerBean
    Use
    You use this module to anonymize XML elements and attributes by removing namespaces or namespace prefixes from the XML document of the main payload.
    You can define a particular namespace prefix for each namespace. You can also change the encoding attribute of the XML declaration.
    Integration
    You can use the module in adapters that can be extended in the module processor.
    Activities
    Entries in the Processing Sequence
    ●      Insert the module before the adapter module.
    If the adapter comprises multiple modules, for information about the position of the module, see: Extending the Module Chain in the Module Processor
    ●      Enter the module name AF_Modules/XMLAnonymizerBean.
    ●      Select the Module Type Local Enterprise Bean.
    ●      The system proposes a module key.
    Entries in the Module Configuration
    ●      anonymizer.acceptNamespaces
    Enter a list of namespaces and their prefixes that are to be kept in the XML document as follows: namespace1 n1 namespace2 n2 u2026
    To enter a namespace without a prefix, enter '' (two single quotation marks).
    Any namespaces you do not specify are removed from the XML document.
    ●      anonymizer.quote
    Specify the character to be used to enclose the attribute values.
    The default value is '. The parameter is optional.
    ●      anonymizer.encoding
    To use a code page other than UTF-8, enter it.  The parameter is optional.
    For example, enter ISO-8859-1.
    Example
    The anonymizer.acceptNamespaces parameter has the following value:
    urn:sap-com:document:sap:rfc:functions rfc urn:sap-com:document:sap:soap:functions:mc-style rfc
    ●      Payload before using the XMLAnonymizerBean:
    <Z_PAYMITEM_GET_LIST
      xmlns="urn:sap-com:document:sap:rfc:functions"
      xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/"
      xmlns:xsd="http://www.w3.org/2001/XMLSchema"
      xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <I_ACCOUNTIDENT xmlns="">
        <ACCOUNT_NUMBER>0080000094</ACCOUNT_NUMBER>
        <BANK_COUNTRY>DE</BANK_COUNTRY>
        <BANK_COUNTRY_ISO>DE</BANK_COUNTRY_ISO>
      </I_ACCOUNTIDENT>
    </Z_PAYMITEM_GET_LIST>
    ●      Payload after using the XMLAnonymizerBean:
    <?xml version='1.0' encoding='utf-8'?>
    <rfc:Z_PAYMITEM_GET_LIST
      xmlns:rfc='urn:sap-com:document:sap:rfc:functions'>
      <I_ACCOUNTIDENT>
        <ACCOUNT_NUMBER>0080000094</ACCOUNT_NUMBER>
        <BANK_COUNTRY>DE</BANK_COUNTRY>
        <BANK_COUNTRY_ISO>DE</BANK_COUNTRY_ISO>
      </I_ACCOUNTIDENT>
    </rfc:Z_PAYMITEM_GET_LIST>
    with rgds,
    MFH

  • SOAP Login Request Problem

    Hi,
    I have been trying to send a login request via Pear SOAP, without success.  Any ideas about what is wrong with the request?
    The Request:
    POST /dswsbobje/services/Session HTTP/1.0
    User-Agent: PEAR-SOAP 0.12.0-beta
    Host: 192.168.130.52
    Content-Type: text/xml; charset=UTF-8
    Content-Length: 615
    SOAPAction: "http://session.dsws.businessobjects.com/2007/06/01/login"
    Connection: close
    <?xml version="1.0" encoding="UTF-8"?>
    <SOAP-ENV:Envelope
    xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:ns4="http://session.dsws.businessobjects.com/2007/06/01">
    <SOAP-ENV:Body>
    <ns4:login>
    <credential xsi:type="EnterpriseCredential" AuthType="secEnterprise" Login="Administrator" Password="Password" Domain="ptgdw3" ReportedHostName="ptgdw3:6400"/>
    <version></version></ns4:login>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    ... and the response:
    HTTP/1.1 500 Internal Server Error
    Server: Apache-Coyote/1.1
    Content-Type: text/xml;charset=UTF-8
    Date: Wed, 04 Mar 2009 17:52:11 GMT
    Connection: close
    <?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><soapenv:Fault><faultcode>soapenv:Server.generalException</faultcode><faultstring>java.lang.NullPointerException</faultstring><detail><DSWSException xmlns="http://dsws.businessobjects.com/2007/06/01"><ID xmlns="">S2</ID><Message xmlns="">login exception (Error: WSE 99998)</Message><Operation xmlns="">http://session.dsws.businessobjects.com/2007/06/01/login</Operation><CallStackTrace xmlns="">java.lang.NullPointerException&#xd;
        at com.businessobjects.dsws.session.SessionSkeleton.login(Unknown Source)&#xd;
        at com.businessobjects.dsws.session.SessionMessageReceiverInOut.invokeBusinessLogic(Unknown Source)&#xd;
        at org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(AbstractInOutSyncMessageReceiver.java:42)&#xd;
        at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:96)&#xd;
        at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:145)&#xd;
        at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)&#xd;
        at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:120)&#xd;
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)&#xd;
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)&#xd;
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)&#xd;
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)&#xd;
        at com.businessobjects.dsws.wsc.common.axis.FlashFilter.doFilter(Unknown Source)&#xd;
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)&#xd;
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)&#xd;
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)&#xd;
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)&#xd;
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)&#xd;
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)&#xd;
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)&#xd;
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)&#xd;
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)&#xd;
        at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)&#xd;
        at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)&#xd;
        at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)&#xd;
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)&#xd;
        at java.lang.Thread.run(Thread.java:595)&#xd;

    Hi Matt,
    Unfortunately there isn't anything currently available on the proper structure of the soap request to communicate with the web services SDK.  What I would recommend doing is creating a regular web services SDK app (Or just download a sample), and then use a sniffer to look at the soap messages being sent back and forth.  You should be able to take those messages and modify them to suit your needs.
    Shawn

  • OSB not adding SOAP-ENV:encodingStyle attribute, invoke fails

    Hi, I have a WSDL that when inspected by XMLSpy, creates the following payload.
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
         <SOAP-ENV:Body>
              <m:logOut xmlns:m="http://konnex.aarp.org/wsdl/HartfordServicesSecure" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
                   <String_1 xsi:type="xsd:string">String</String_1>
              </m:logOut>
         </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    When I try to invoke this via OSB, I get the following message.
    <env:Envelope env:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns0="http://konnex.aarp.org/types/HartfordServicesSecure">
         <env:Body>
              <env:Fault>
                   <faultcode>env:Client</faultcode>
                   <faultstring>JAXRPCTIE01: caught exception while handling request: unexpected encoding style: expected=http://schemas.xmlsoap.org/soap/encoding/, actual=</faultstring>
              </env:Fault>
         </env:Body>
    </env:Envelope>
    The reason is because OSB is not putting in the *SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/* attribute. I verified this in obtunnel.
    I'm currently trying to work around this in OSB using xquery but so far I've had no luck.
    Thanks in Advance.

    hi,
    I have two policies applies on business service :
    1. Password digest policy
    <wsp:Policy wsu:Id="PasswrdDigest" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:wssp="http://www.bea.com/wls90/security/policy" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
    <wssp:Identity>
              <wssp:SupportedTokens>
                   <wssp:SecurityToken TokenType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#UsernameToken">
                   <wssp:UsePassword Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest"/>
              </wssp:SecurityToken>
              </wssp:SupportedTokens>
              </wssp:Identity>
    </wsp:Policy>
    2. Message Interval Policy
    <wsp:Policy wsu:Id="MessageAge" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy">
    <wssp:MessageAge Age="60" xmlns:wssp="http://www.bea.com/wls90/security/policy"/>
    </wsp:Policy>
    Please share your views.

  • What's the easiest way to make a SOAP client request in java?

    I need to make a request to a website that provides tv listings. Basically I just need to make a simple SOAP request for the listings and the site provides them in XML format.
    What's the easiest way to do this? Do I need to download a package like Axis2 or JAX-WS? These seem kind of overkill for what I want to do, since I don't need to run a server. Is there something in the Java standard libraries that will do this? Is it difficult to just write the code for this my self?

    I've been trying to do it with HTTP POST commands. Here is the sample SOAP envelope that the site gives:
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
         <SOAP-ENV:Body>
              <m:download xmlns:m="urn:TMSWebServices" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
                   <startTime xsi:type="xsd:dateTime">2005-02-22T19:00:00Z</startTime>
                   <endTime xsi:type="xsd:dateTime">2005-02-22T21:00:00Z</endTime>
              </m:download>
         </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>I can post this to the URL and it gives me back a generic xml file as a reply with no listings. The problem is that the site requires credentials, so I assume I have to login somehow first. Can anyone tell me how I would do this?

  • Webservice doesn't work with: soap-env:mustUnderstand="1"

    Hi friends,
    I created a Webservice Consumer with the assistant, indicating the URL of my WSDL.
    Then I created the logical port in SOAMANAGER, using the same URL.
    When I test the Webservice Consumer I get the following error:
    SoapFaultCode:3  MustUnderstand headers:
    [Action,
    To] are not understood.
    The XML petition to the Webservice is:
    <soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
         <soap-env:Header>
              <sap:Trace xmlns:sap="http://www.sap.com/webas/630/soap/features/runtime/tracing/">
                   <sap:TraceLevel>Error</sap:TraceLevel>
                   <sap:TraceContext>
                        <TRC_PATTERN>WSTEST</TRC_PATTERN>
                        <TRC_KEY>4D635EAAEFA70022E10000009353966F</TRC_KEY>
                        <TRC_SSID>EDU_02</TRC_SSID>
                        <TRC_USER>DES005</TRC_USER>
                        <TRC_TS>20110223153559</TRC_TS>
                        <TRC_COUNTER>99</TRC_COUNTER><TRC_EXTERN></TRC_EXTERN><TRC_REQBASED></TRC_REQBASED><TRC_PPVERS>2</TRC_PPVERS>
                   </sap:TraceContext>
              </sap:Trace>
              <wsa:To soap-env:mustUnderstand="1" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing">
                   http://soades.upc.edu:8193/EconomiaFinances/InformacioPersona
              </wsa:To>
              <wsa:From xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing">
                   <wsa:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:Address>
              </wsa:From>
              <wsa:ReplyTo xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing">
                   <wsa:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:Address>
              </wsa:ReplyTo>
              <wsa:FaultTo xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing">
                   <wsa:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:Address>
              </wsa:FaultTo>
              <wsa:Action soap-env:mustUnderstand="1" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://comprovacio.ws.upcnet.com/InformacioPersonaImpl/consultaCNRequest</wsa:Action>
              <wsa:MessageID xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing">uuid:4d635ec2-efa7-0022-e100-00009353966f</wsa:MessageID>
         </soap-env:Header>
         <soap-env:Body>
              <n0:consultaCN xmlns:n0="http://comprovacio.ws.upcnet.com" xmlns:prx="urn:sap.com:proxy:EDU:/1SAI/TAS65AC049944F09BF8D2C4:701:2010/02/19">
                   <n0:cn>joan.ayala</n0:cn>
              </n0:consultaCN>
         </soap-env:Body>
    </soap-env:Envelope>
    People from my systems team, told me that if instead of having:
    soap-env:mustUnderstand="1"
    I had:
    soap-env:mustUnderstand="0"
    Then, It would work properly. Does anybody know if it is possible to change this value of the XML ?
    Or any other solution can be helpful. Thanks !!!

    Hi,
    You can not modify the SOAP Request just like that. But it seems that your provider does not understand the WS-Addressing protocol properties. If this is synchrnous WS call ,you can try via soamanager to eclude addressing protocol via SOAMANAGER transaction.
    Find your logical port , go to Messaging Tab and set Message ID Protocol to "suppressTransfer".
    Best Regards,
    Desi

  • Differences between SOAP-ENV and soapenv

    Hi all,
    I am trying to find out why some SOAP request (inbound web services) in siebel work and do not work when the namespace prefix is SOAP-ENV and soapenv,
    For example XML Spy generates "</SOAP-ENV:Envelope>" where as soapUI generates "<soapenv:Envelope>" and some difference in the name spaces.
    Intrestingly other scenarios like invoking inbound web services with WS-Security and with out security had worked fine when tested from XML Spy.
    Why is siebel not accepting the xml from XML Spy for Siebel Authentication scenario?
    Thank you

    Hi, just to let you all know, and please correct me if I am wrong, I have found this on the internet:
    http://mail-archives.apache.org/mod_mbox/ws-axis-user/200308.mbox/%3C00fd01c35ba6$ed85e620$6f01a8c0@TPX21%3E
    Although, the SOAP spec uses the namespace prefixes of SOAP-ENV and
    SOAP-ENC, these prefixes aren't required. You can use any string you like as
    a namespace prefix, just as long as it maps to the appropriate namespace
    name. The reason why the spec bothers with telling us the notational
    conventions is that prefix names (e.g., SOAP-ENV) aren't normative, and the
    spec just happens to be using this set of naming conventions. So the prefix
    name doesn't matter. Only the actual referenced namespace name (e.g.,
    http://schema.xmlsoap.org/soap/envelope/) matters.
    I confirmed this information from an expert from Fusion Middleware and he says that the name-prefix could be anything as long as it is mapped in the namespace (URL from the SOAP XML).

  • BPEL process times out when SOAP-ENV:Fault is received from service.

    Hi - I have a BPEL process identical to one in 10.1.2.0.2. If I execute the same test, the BPEL console displays the following on the console for version 10.1.2.0.2.
    <Response>Clientwhen invoking endpointAddress 'http://galileo.wlgore.com:5555/soap/default', [ISS.0088.9134] Exception occurred while processing the body of the messageAxisFault faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Client faultSubcode: faultString: [ISS.0088.9134] Exception occurred while processing the body of the message faultActor: http://galileo.wlgore.com:5555/soap/default faultNode: faultDetail: {http://www.webMethods.com/2001/10/soap/encoding}exception: <className>com.wm.pkg.art.error.DetailedServiceException</className>
         <message lang="">[ART.117.4002] Adapter Runtime (Adapter Service): Unable to invoke adapter service GORE_DSI_Services.AdaptorService:WorkOrderCompletion. BSFN error code: 2 Number of error: 1 Error item 1 ErrorLevel : 1 ErrorID : 0 DDItem : 0115 lineNumber : 5371 fileName : nd3n1114.c subText : alphaDescription : Error: Work Order Number Invalid glossaryText : CAUSE . . . . The Work Order Number entered does not exist in the Work Order Master file (F4801). RESOLUTION. . Either enter the correct Work Order Number or create a new Work Order for the number on the display. javax.resource.ResourceException: BSFN error code: 2 Number of error: 1 Error item 1 ErrorLevel : 1 ErrorID : 0 DDItem : 0115 lineNumber : 5371 fileName : nd3n1114.c subText : alphaDescription : Error: Work Order Number Invalid glossaryText : CAUSE . . . . The Work Order Number entered does not exist in the Work Order Master file (F4801). RESOLUTION. . Either enter the correct Work Order Number or create a new Work Order for the number on the display. at com.psft.xpi.adapter.erp.service.BSFNExecuteTemplateImpl.execute(BSFNExecuteTemplateImpl.java:306) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.psft.xpi.adapter.erp.service.BSFNExecuteTemplate.execute(BSFNExecuteTemplate.java:134) at com.wm.adk.cci.interaction.WmInteraction.execute(WmInteraction.java:70) at com.wm.pkg.art.ns.AdapterServiceNode.invokeService(AdapterServiceNode.java:596) at com.wm.pkg.art.ns.ARTNSService.baseInvoke(ARTNSService.java:47) at com.wm.app.b2b.server.invoke.InvokeManager.process(InvokeManager.java:554) at com.wm.app.b2b.server.invoke.StatisticsProcessor.process(StatisticsProcessor.java:44) at com.wm.app.b2b.server.invoke.ServiceCompletionImpl.process(ServiceCompletionImpl.java:221) at com.wm.app.b2b.server.invoke.ValidateProcessor.process(ValidateProcessor.java:49) at com.wm.app.b2b.server.ACLManager.process(ACLManager.java:194) at com.wm.app.b2b.server.invoke.DispatchProcessor.process(DispatchProcessor.java:39) at com.wm.app.b2b.server.AuditLogManager.process(AuditLogManager.java:384) at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:486) at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:359) at com.wm.app.b2b.server.ServiceManager.invoke(ServiceManager.java:246) at com.wm.app.b2b.server.BaseService.invoke(BaseService.java:155) at com.wm.lang.flow.FlowInvoke.invoke(FlowInvoke.java:324) at com.wm.lang.flow.FlowState.invokeNode(FlowState.java:580) at com.wm.lang.flow.FlowState.step(FlowState.java:438) at com.wm.lang.flow.FlowState.invoke(FlowState.java:403) at com.wm.app.b2b.server.FlowSvcImpl.baseInvoke(FlowSvcImpl.java:1749) at com.wm.app.b2b.server.invoke.InvokeManager.process(InvokeManager.java:554) at com.wm.app.b2b.server.invoke.StatisticsProcessor.process(StatisticsProcessor.java:44) at com.wm.app.b2b.server.invoke.ServiceCompletionImpl.process(ServiceCompletionImpl.java:221) at com.wm.app.b2b.server.invoke.ValidateProcessor.process(ValidateProcessor.java:49) at com.wm.app.b2b.server.ACLManager.process(ACLManager.java:194) at com.wm.app.b2b.server.invoke.DispatchProcessor.process(DispatchProcessor.java:39) at com.wm.app.b2b.server.AuditLogManager.process(AuditLogManager.java:384) at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:486) at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:359) at com.wm.app.b2b.server.ServiceManager.invoke(ServiceManager.java:246) at com.wm.app.b2b.server.ServiceManager.invoke(ServiceManager.java:113) at com.wm.app.b2b.server.Service.doInvoke(Service.java:607) at com.wm.app.b2b.server.Service.doInvoke(Service.java:556) at wm.server.soap.envelope(soap.java:98) at sun.reflect.GeneratedMethodAccessor35.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.wm.app.b2b.server.JavaService.baseInvoke(JavaService.java:287) at com.wm.app.b2b.server.invoke.InvokeManager.process(InvokeManager.java:554) at com.wm.app.b2b.server.invoke.StatisticsProcessor.process(StatisticsProcessor.java:44) at com.wm.app.b2b.server.invoke.ServiceCompletionImpl.process(ServiceCompletionImpl.java:221) at com.wm.app.b2b.server.invoke.ValidateProcessor.process(ValidateProcessor.java:49) at com.wm.app.b2b.server.ACLManager.process(ACLManager.java:194) at com.wm.app.b2b.server.invoke.DispatchProcessor.process(DispatchProcessor.java:39) at com.wm.app.b2b.server.AuditLogManager.process(AuditLogManager.java:384) at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:486) at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:359) at com.wm.app.b2b.server.ServiceManager.invoke(ServiceManager.java:246) at com.wm.app.b2b.server.ServiceManager.invoke(ServiceManager.java:128) at com.wm.app.b2b.server.HTTPSOAPHandler._process(HTTPSOAPHandler.java:457) at com.wm.app.b2b.server.HTTPSOAPHandler.process(HTTPSOAPHandler.java:111) at com.wm.app.b2b.server.Dispatch.run(Dispatch.java:298) at com.wm.util.pool.PooledThread.run(PooledThread.java:105) at java.lang.Thread.run(Thread.java:534) </message>
    </Response>
    With this version, however, we either receive "java.lang.IllegalStateException: "Cannot call setRollbackOnly() current thread is NOT associated with a transaction" or a timeout error.
    I captured the return message from both servers and it is identical (shown below):
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:xsd="http://www.w3.org/1999/XMLSchema">
         <SOAP-ENV:Body>
              <SOAP-ENV:Fault>
                   <faultcode>SOAP-ENV:Client</faultcode>
                   <faultstring>[ISS.0088.9134] Exception occurred while processing the body of the message</faultstring>
                   <faultactor>http://galileo.wlgore.com:5555/soap/default </faultactor>
                   <detail xmlns:webM="http://www.webMethods.com/2001/10/soap/encoding">
                        <webM:exception>
                             <webM:className>com.wm.pkg.art.error.DetailedServiceException</webM:className>
                             <webM:message xml:lang="">="">[ART.117.4002] Adapter Runtime (Adapter Service): Unable to invoke adapter service GORE_DSI_Services.AdaptorService:WorkOrderCompletion. BSFN error code: 2 Number of error: 1 Error item 1 ErrorLevel : 1 ErrorID : 0 DDItem : 0115 lineNumber : 5371 fileName : nd3n1114.c subText : alphaDescription : Error: Work Order Number Invalid glossaryText : CAUSE . . . . The Work Order Number entered does not exist in the Work Order Master file (F4801). RESOLUTION. . Either enter the correct Work Order Number or create a new Work Order for the number on the display. javax.resource.ResourceException: BSFN error code: 2 Number of error: 1 Error item 1 ErrorLevel : 1 ErrorID : 0 DDItem : 0115 lineNumber : 5371 fileName : nd3n1114.c subText : alphaDescription : Error: Work Order Number Invalid glossaryText : CAUSE . . . . The Work Order Number entered does not exist in the Work Order Master file (F4801). RESOLUTION. . Either enter the correct Work Order Number or create a new Work Order for the number on the display. at com.psft.xpi.adapter.erp.service.BSFNExecuteTemplateImpl.execute(BSFNExecuteTemplateImpl.java:306) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.psft.xpi.adapter.erp.service.BSFNExecuteTemplate.execute(BSFNExecuteTemplate.java:134) at com.wm.adk.cci.interaction.WmInteraction.execute(WmInteraction.java:70) at com.wm.pkg.art.ns.AdapterServiceNode.invokeService(AdapterServiceNode.java:596) at com.wm.pkg.art.ns.ARTNSService.baseInvoke(ARTNSService.java:47) at com.wm.app.b2b.server.invoke.InvokeManager.process(InvokeManager.java:554) at com.wm.app.b2b.server.invoke.StatisticsProcessor.process(StatisticsProcessor.java:44) at com.wm.app.b2b.server.invoke.ServiceCompletionImpl.process(ServiceCompletionImpl.java:221) at com.wm.app.b2b.server.invoke.ValidateProcessor.process(ValidateProcessor.java:49) at com.wm.app.b2b.server.ACLManager.process(ACLManager.java:194) at com.wm.app.b2b.server.invoke.DispatchProcessor.process(DispatchProcessor.java:39) at com.wm.app.b2b.server.AuditLogManager.process(AuditLogManager.java:384) at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:486) at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:359) at com.wm.app.b2b.server.ServiceManager.invoke(ServiceManager.java:246) at com.wm.app.b2b.server.BaseService.invoke(BaseService.java:155) at com.wm.lang.flow.FlowInvoke.invoke(FlowInvoke.java:324) at com.wm.lang.flow.FlowState.invokeNode(FlowState.java:580) at com.wm.lang.flow.FlowState.step(FlowState.java:438) at com.wm.lang.flow.FlowState.invoke(FlowState.java:403) at com.wm.app.b2b.server.FlowSvcImpl.baseInvoke(FlowSvcImpl.java:1749) at com.wm.app.b2b.server.invoke.InvokeManager.process(InvokeManager.java:554) at com.wm.app.b2b.server.invoke.StatisticsProcessor.process(StatisticsProcessor.java:44) at com.wm.app.b2b.server.invoke.ServiceCompletionImpl.process(ServiceCompletionImpl.java:221) at com.wm.app.b2b.server.invoke.ValidateProcessor.process(ValidateProcessor.java:49) at com.wm.app.b2b.server.ACLManager.process(ACLManager.java:194) at com.wm.app.b2b.server.invoke.DispatchProcessor.process(DispatchProcessor.java:39) at com.wm.app.b2b.server.AuditLogManager.process(AuditLogManager.java:384) at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:486) at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:359) at com.wm.app.b2b.server.ServiceManager.invoke(ServiceManager.java:246) at com.wm.app.b2b.server.ServiceManager.invoke(ServiceManager.java:113) at com.wm.app.b2b.server.Service.doInvoke(Service.java:607) at com.wm.app.b2b.server.Service.doInvoke(Service.java:556) at wm.server.soap.envelope(soap.java:98) at sun.reflect.GeneratedMethodAccessor35.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.wm.app.b2b.server.JavaService.baseInvoke(JavaService.java:287) at com.wm.app.b2b.server.invoke.InvokeManager.process(InvokeManager.java:554) at com.wm.app.b2b.server.invoke.StatisticsProcessor.process(StatisticsProcessor.java:44) at com.wm.app.b2b.server.invoke.ServiceCompletionImpl.process(ServiceCompletionImpl.java:221) at com.wm.app.b2b.server.invoke.ValidateProcessor.process(ValidateProcessor.java:49) at com.wm.app.b2b.server.ACLManager.process(ACLManager.java:194) at com.wm.app.b2b.server.invoke.DispatchProcessor.process(DispatchProcessor.java:39) at com.wm.app.b2b.server.AuditLogManager.process(AuditLogManager.java:384) at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:486) at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:359) at com.wm.app.b2b.server.ServiceManager.invoke(ServiceManager.java:246) at com.wm.app.b2b.server.ServiceManager.invoke(ServiceManager.java:128) at com.wm.app.b2b.server.HTTPSOAPHandler._process(HTTPSOAPHandler.java:457) at com.wm.app.b2b.server.HTTPSOAPHandler.process(HTTPSOAPHandler.java:111) at com.wm.app.b2b.server.Dispatch.run(Dispatch.java:298) at com.wm.util.pool.PooledThread.run(PooledThread.java:105) at java.lang.Thread.run(Thread.java:534)</webM:message>
                        </webM:exception>
                   </detail>
              </SOAP-ENV:Fault>
         </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    Thanks,
    RM

    We have tested this same scenario for several services and are experiencing the same result... timing out instead of returning the fault. This is a critical issue for us and would prevent us from implementing this software.

  • Remove SOAP-ENV tags from xml RECEIVER RESPONSE payload (XSL needed?)

    Hi
    I need to remove some tags from the payload of a RESPONSE message in a SOAP webservice scenarion.
    The received payload looks like this:
    before -
    <?xml version="1.0" encoding="UTF-8"?>
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns="http://tempuri.org/what.xsd">
    <SOAP-ENV:Body>
      <ns:crejob-resp>
        <response-data>
          <Result>0</Result>
        </response-data>
      </ns:crejob-resp>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    after it should look like this
    after -
    <?xml version="1.0" encoding="UTF-8"?>
    <crejob-resp>
       <response-data>
          <Result>0</Result>
       </response-data>
    </crejob-resp>
    I was thinking of using XSL as a "pre-burner" step before my mapping program but need help to XSL on this.
    Hope somebody can help
    Cheers

    I am sorry to be such a pain in the a..
    But I still get the wrong result (with your first option, 2nd option is not working):
    <?xml version="1.0" encoding="UTF-8"?>
    <crejob-resp>
      <response-data>0<Result>0</Result></response-data>
    </crejob-resp>
    Hope u can help again
    and also my source can look like: (unbounded on response-data)
    <?xml version="1.0" encoding="UTF-8"?>
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns="http://tempuri.org/what.xsd">
    <SOAP-ENV:Body>
    <ns:crejob-resp>
       <response-data>
          <Result>0</Result>
       </response-data>
       <response-data>
          <Result>1</Result>
       </response-data>
       <response-data>
          <Result>2</Result>
       </response-data>
    </ns:crejob-resp>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    Edited by: Bowie on Jul 2, 2009 3:08 PM

  • URL and PORT for SOAP SENDER request

    Hi
    according to SAP doc the URL to SOAP SENDER request is:
    http://IP:PORT/XISOAPAdapter/MessageServlet?channel=:SERVICE:SOAPCOMMCHANNEL
    Where do I find the IP and the PORT to use?
    br

    Hi,
    The IP is of your XI System.
    PORT number depends on the instance number. Usually it is 00 for default instance (then port no will be 8000). click on propose URL and you will get it.
    Also you can go to SMICM transaction in your XI system and choose Goto-> HTTPS Server->Display data to get the port no.
    Regards,
    Jitender

  • SOAP:ENV Error: Resource..not found on this server

    I created a simple java class with a method that returns org.w3c.dom.Element type.
    Created web service for this class and method in Jdeveloper.
    Deployed this web service in OC4J locally (as explained by other web services examples).
    Then I created a Client Stub for this web service (.wsdl file).
    When testing this client stub ( I followed the same steps as mentioned in OTN DEPT/EMP Web Service), I get the following exception:
    D:\JDEVELOPER\jdk\bin\javaw.exe -ojvm -classpath D:\JDEVELOPER\jdev\mywork\MyWorkspace\MyProject2\classes;D:\JDEVELOPER\jdev\lib\jdev-rt.jar;D:\JDEVELOPER\jdbc\lib\classes12.jar;D:\JDEVELOPER\jdbc\lib\nls_charset12.jar;D:\JDEVELOPER\jdev\lib\jdev-rt.jar;D:\JDEVELOPER\soap\lib\soap.jar;D:\JDEVELOPER\lib\xmlparserv2.jar;D:\JDEVELOPER\jlib\javax-ssl-1_2.jar;D:\JDEVELOPER\jlib\jssl-1_2.jar;D:\JDEVELOPER\j2ee\home\lib\activation.jar;D:\JDEVELOPER\j2ee\home\lib\mail.jar;D:\JDEVELOPER\j2ee\home\lib\http_client.jar;D:\JDEVELOPER\lib\xmlparserv2.jar;D:\JDEVELOPER\lib\xmlcomp.jar;D:\JDEVELOPER\rdbms\jlib\xsu12.jar GetProductsClient
    [SOAPException: faultCode=SOAP-ENV:Protocol; msg=Unsupported response content type &quot;text/html&quot;, must be: &quot;text/xml&quot;. Response was:
    &lt;HTML&gt;&lt;HEAD&gt;&lt;TITLE&gt;404 Not Found&lt;/TITLE&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;H1&gt;404 Not Found&lt;/H1&gt;Resource /MyWorkspace-MyProject2-context-root/GetProducts not found on this server&lt;/BODY&gt;&lt;/HTML&gt;
    The SOAP response is as bellow:
    HTTP/1.1 404 Not Found
    Date: Wed, 27 Nov 2002 15:36:27 GMT
    Server: Oracle9iAS (9.0.3.0.0) Containers for J2EE
    Content-Length: 171
    Connection: Close
    Content-Type: text/html
    <HTML><HEAD><TITLE>404 Not Found</TITLE></HEAD><BODY><H1>404 Not Found</H1>Resource /MyWorkspace-MyProject2-context-root/GetProducts not found on this server</BODY></HTML>
    The Debug shows, the Method getProductsXM() in the client stub is failing at
    Response response = call.invoke(endpointURL, "");
    This appears to be generating fault and the code is throughing exception which is not casted in to a Element type.
    Not sure what is causing this to fail. And I have not toucjed/ changed the URI for this webservice myself at all. Whatever URIs or Name spaces are there, they are all generarted by JDeveloper.
    I was trying to create a web service that display/return Resultset.
    Any feedback/suggestions ? I would appreciate if you can point me to some sample code that does this ( returning Resultset as XML -<ROWSET> Element)
    Thanks,
    Madhu

    Does this do the trick?
    Server side class:
    import org.w3c.dom.*;
    import oracle.xml.parser.v2.*;
    public class Employee
    public Employee ()
    public Element getEmployeeElement(){
    Document doc = new XMLDocument();
    Element elAdd = doc.createElement( "employee");
    Element elA = doc.createElement( "name");
    elA.appendChild(doc.createTextNode("Mike"));
    elAdd.appendChild(elA);
    doc.appendChild(elAdd);
    return doc.getDocumentElement();
    Generated Interface from JDev:
    * Generated by the Oracle9i JDeveloper Web Services Interface Generator
    * Date Created: Wed Nov 27 11:42:37 PST 2002
    * This interface lists the subset of public methods that you
    * selected for inclusion in your web service's public interface.
    * It is referenced in the web.xml deployment descriptor for this service.
    * This file should not be edited.
    public interface IEmployee
    public org.w3c.dom.Element getEmployeeElement();
    Generated client with a print method to output the result (using WSDL generated by JDeveloper):
    import oracle.soap.transport.http.OracleSOAPHTTPConnection;
    import org.apache.soap.encoding.soapenc.BeanSerializer;
    import org.apache.soap.encoding.SOAPMappingRegistry;
    import org.apache.soap.util.xml.QName;
    import java.net.URL;
    import org.apache.soap.Constants;
    import org.apache.soap.Fault;
    import org.apache.soap.SOAPException;
    import org.apache.soap.rpc.Call;
    import org.apache.soap.rpc.Parameter;
    import org.apache.soap.rpc.Response;
    import org.w3c.dom.Element;
    import java.util.Vector;
    import java.util.Properties;
    import oracle.xml.parser.v2.*;
    * Generated by the Oracle9i JDeveloper Web Services Stub/Skeleton Generator.
    * Date Created: Wed Nov 27 11:39:29 PST 2002
    * WSDL URL: file:/D:/demo/Workspace5/Project1/src/Employee.wsdl
    public class EmployeeStub
    public EmployeeStub()
    m_httpConnection = new OracleSOAPHTTPConnection();
    m_smr = new SOAPMappingRegistry();
    public static void main(String[] args)
    try
    EmployeeStub stub = new EmployeeStub();
    // Add your own code here.
    Element e = stub.getEmployeeElement();
    ((XMLElement)e).print(System.out);
    catch(Exception ex)
    ex.printStackTrace();
    public String endpoint = "http://127.0.0.1:8888/Workspace5-Project1-context-root/Employee";
    private OracleSOAPHTTPConnection m_httpConnection = null;
    private SOAPMappingRegistry m_smr = null;
    public Element getEmployeeElement() throws Exception
    Element returnVal = null;
    URL endpointURL = new URL(endpoint);
    Call call = new Call();
    call.setSOAPTransport(m_httpConnection);
    call.setTargetObjectURI("Employee");
    call.setMethodName("getEmployeeElement");
    call.setEncodingStyleURI(Constants.NS_URI_LITERAL_XML);
    Vector params = new Vector();
    call.setParams(params);
    call.setSOAPMappingRegistry(m_smr);
    Response response = call.invoke(endpointURL, "");
    if (!response.generatedFault())
    Parameter result = response.getReturnValue();
    returnVal = (Element)result.getValue();
    else
    Fault fault = response.getFault();
    throw new SOAPException(fault.getFaultCode(), fault.getFaultString());
    return returnVal;
    public void setMaintainSession(boolean maintainSession)
    m_httpConnection.setMaintainSession(maintainSession);
    public boolean getMaintainSession()
    return m_httpConnection.getMaintainSession();
    public void setTransportProperties(Properties props)
    m_httpConnection.setProperties(props);
    public Properties getTransportProperties()
    return m_httpConnection.getProperties();
    Mike.

  • SOAP/HTTP request

    Hi,
    I need to build a BPEL process that will receive a SOAP/HTTP request.
    can any one explain the work arround.
    1. Do I need the schema for incoming SOAP message?.
    2. Do i need to change the wsdl?.
    3. Will BPEL support SOAP attachments if so is there any work arround?.
    I am currently using Oracle BPEL 10.1.2.0.2.
    Your help would be appreciated..
    Thanks,
    Mamatha

    The WSDLs in 10.1.3.1 will take SOAP requests - not sure about what you would have to do for 10.1.2.x
    Knowing the XSD of the SOAP request, and being able to import it as a schema will make things a lot easier - use the SOAP XSD to replace the payload variable element for request and response message types.
    Not sure about attachments...

  • Changing SOAP-ENV prefix in SAAJ?

    I'm using the latest webservices pack from Sun and have hit a roadblock.
    We have some external clients that are relying on the SOAP messages we send them to have the prefix namespace <SOAP>. The SAAJ implementation seems to be hardcoding <SOAP-ENV>.
    Is there anyway to specify/override the default SOAP namespace prefix?
    i.e.
    <SOAP-ENV:Envelope> --> <SOAP:Envelope>
    Thanks,
    - Tim

    I managed to change my SOAP-ENV but the problem then is that unless you declare the namespace in every tag it add a xmlns="" to the first non specified tag.
    how I changed the SOAP-ENV is as follows
    SOAPPart part = msg.getSOAPPart();
    //get the envelope
    SOAPEnvelope envelope = part.getEnvelope();
    //add the soap declaration
    envelope.addNamespaceDeclaration("soap","http://schemas.xmlsoap.org/soap/envelope/");
    //remove the default SOAP-ENV
    envelope.removeNamespaceDeclaration("SOAP-ENV");
    //Set the prefix to soap instead of SOAP-ENV
    envelope.setPrefix("soap");
    Mike

Maybe you are looking for