WLS adding m: namespace to webservice response

I have created the most simple webservice possible to recreate the problem, the HelloWorld webservice. It takes a name parameter as string to the getGreeting operation and returns a string response. As you will see in the examples enclosed below, the response has a namespace generated as xmlns:m="http://www.mywebsite.com". The true namespace, as defined in the WSDL (also enclosed below), is xmlns:hwns="http://www.mywebsite.com".
This is really a problem for me in working with responses in Aqualogic and XPath to parse the response. I expect a namespace of 'hwns' and instead get the mystery namespace of 'm' which I cannot depend upon appearing consistently. All help in resolving this would be greatly appreciated.
Request:
<?xml version="1.0" encoding="UTF-8" ?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:q0="http://www.mywebsite.com/"           
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<q0:getGreeting>
<q0:name>Danno</q0:name>
</q0:getGreeting>
</soapenv:Body>
</soapenv:Envelope>
Response:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header />
<soapenv:Body>
<m:getGreetingResponse xmlns:m="http://www.mywebsite.com/">
<m:return>Hello Dan!</m:return>
</m:getGreetingResponse>
</soapenv:Body>
</soapenv:Envelope>
WSDL:
<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:hwns="http://www.mywebsite.com/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" name="HelloWorldServiceDefinitions" targetNamespace="http://www.mywebsite.com/">
     <types>
          <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.mywebsite.com/"           
               xmlns:xs="http://www.w3.org/2001/XMLSchema">
               <!-- TIP: Start your element names off lower case. This will more closely match the
                    Java naming conventions when you generate the code -->
               <xs:element name="getGreeting">
                    <xs:complexType>
                         <xs:sequence>
                              <xs:element name="name" type="xs:string"/>
                         </xs:sequence>
                    </xs:complexType>
               </xs:element>
               <xs:element name="getGreetingResponse">
                    <xs:complexType>
                         <xs:sequence>
                              <xs:element name="return" type="xs:string"/>
                         </xs:sequence>
                    </xs:complexType>
               </xs:element>
          </xs:schema>
     </types>
     <message name="getGreeting">
          <part name="getGreeting" element="hwns:getGreeting"/>
     </message>
     <message name="getGreetingResponse">
          <part name="getGreetingResponse" element="hwns:getGreetingResponse"/>
     </message>
     <portType name="HelloWorldPort">
          <operation name="getGreeting" parameterOrder="getGreeting">
               <input message="hwns:getGreeting"/>
               <output message="hwns:getGreetingResponse"/>
          </operation>
     </portType>
     <binding name="HelloWorldServiceSoapBinding" type="hwns:HelloWorldPort">
          <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
          <operation name="getGreeting">
               <soap:operation soapAction="" style="document"/>
               <input>
                    <soap:body parts="getGreeting" use="literal"/>
               </input>
               <output>
                    <soap:body parts="getGreetingResponse" use="literal"/>
               </output>
          </operation>
     </binding>
     <service name="HelloWorldService">
          <port name="HelloWorldSoapPort" binding="hwns:HelloWorldServiceSoapBinding">
               <soap:address location="http://localhost:7001/hello/HelloWorldService"/>
          </port>
     </service>
</definitions>

The only way I found for doing this was create a transformation on the final response in the very beginning of my bpel process and add the xsi namespace explcitily.
Regards

Similar Messages

  • Adding default namespace after inlinedXML() in OSB

    Hi All,
    Please suggest me for the following.
    We are sending one data in xml format from proxy service.
    Following is the message we are getting in OSB to send
    <Notification>
    <Type>Data</Type>
    <Channel>webservice</Channel>
    <Security>NONSSL</Security>
    <Message>
    <type>Transfer</type>
    <msg><![CDATA[<Transfer></Transfer>]]></msg>
    </Message>
    <Destination>XXXXXX</Destination>
    <Priority>HIGH</Priority>
    </Notification>>
    Ideally what we are sending in our CDATA there should not be any change.
    but when we are printing out body variable after inlinedxml() function.
    its adding default namespace in Transfer tag.
    <Body xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/" xmlns="http://schemas.xmlsoap.org/soap/envelope/">
    <Transfer xmlns="">
    </Transfer>
    </Body>>
    why OSB is putting xmlns="" in Transfer tag.
    Regards,
    ABHISHEK
    Edited by: abhishek on Sep 11, 2012 12:52 AM
    Edited by: abhishek on Sep 11, 2012 1:04 AM

    Hi ,
    Thanks for reply and suggestion. now I got why its adding the namespace.
    Now i got the problem. when we are not adding any namespace OSB environment is adding the default namespace.
    My use case is :
    when the body variable is
    <Transfer xmlns=''></Transfer>
    My outbound of proxy is following
    <?xml version="1.0" encoding="UTF-8"?>
    <Transfer xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/"></Transfer>
    I need my outbound variable is like
    <?xml version="1.0" encoding="UTF-8"?>
    <Transfer></Transfer>
    Then I tried to send the body variable (providing default namespace) <Transfer xmlns='' xmlns:soap-env=''></Transfer>
    but still getting the
    <Transfer xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/"></Transfer> as outbound variable
    Is there any way to remove this namespace from outbound variable.
    Thanks,
    Abhishek
    Edited by: abhishek on Sep 12, 2012 1:38 AM
    Edited by: abhishek on Sep 12, 2012 1:41 AM

  • Webservice response (XML response) with tag not mandatory

    Hello all,
    I have a problem with a webservice response.
    I implemented a wsdl who created some method to call webservices (Methox X, Y ,Z).
    I call the method 'X' with a table of string who have3 values in input, and I have in a  XML Answer of the webservice call that :
    <tag1> Value 1.1
    <tag2> Value 1.2
    <tag3> Value 1.3
    <message>OK
    <tag3> Value 2.3
    <message>KO
    <tag1> Value 3.1
    <tag2> Value 3.2
    <tag3> Value 3.3
    <message>OK
    Tags 1, 2 and 3 are not mandatory in wsdl (Min occurs = 0).
    In output of the method 'X' (created by wsdl implemantation) a ABAP structure with that :
    ValueTag1 | ValueTag2 | ValueTag3 | message
    Value 1.1 | Value 1.2 | Value 1.3 | OK
    Value 3.1 | Value 3.2 | Value 2.3 | KO
    No value. | No value. | Value 3.3 | OK
    I expect to have logically:
    ValueTag1 | ValueTag2 | ValueTag3 | message
    Value 1.1 | Value 1.2 | Value 1.3 | OK
    No value. | No value. | Value 2.3 | KO
    Value 3.1 | Value 3.2 | Value 3.3 | OK
    SAP put into the line 2of the structure, data of 3rd response because it dont found tag in the 2nd response.
    If i do my call, value by value and i concatenate anwsers, i have no problem.
    I dont understand the error and i cant find SAP note on the subject.
    Someone know ths problem ?
    Thanks.

    Hello,
    I have a wsdl file who describe webmethod and his parameters.
    I implemented this wsdl into a client proxy.
    SAP create automatically some CLASS, METHOD, STRUTURE.
    I call one of this method to ask the webservice.
    A XML flow sent and the webservice respond to me with a other XML flow.
    The XML flow response his automatically transforme by SAP, and i receive it into a structure in output of my method.
    Example :
    CREATE OBJECT XXX
      EXPORTING
        logical_port_name = `ZZZZ`.
    CATCH cx_ai_system_fault INTO fault.
      RAISE EXCEPTION fault.
    IF XXX IS BOUND.
      TRY.
        XXX->METHODYYY(
                EXPORTING
                   input =  ii_input
                IMPORTING
                   output = oo_output ).
       CATCH cx_ai_system_fault INTO fault1.
         RAISE EXCEPTION lr_fault1 .
       CATCH Error_ws INTO fault2.
         RAISE EXCEPTION lr_fault2.
       CATCH cx_ai_application_fault INTO fault3.
         RAISE EXCEPTION lr_fault3.
       CLEANUP.
      ENDTRY.
    ENDIF.
    METHODYYY was created by SAP with wsdl file.
    ii_input and oo_output and typed like structure in wsdl file.
    I can see XML flow and his content in SOAMANAGER transaction when i activate full trace.

  • Send back IDOC ack with details  to  webservice response ?

    Hi Friends ,
    Can we send IDOC acknowledgment  as SOAP response . Our scenario is say for example create SO via Webservice call . Our requirement is to use IDOC only not RFC/BAPI etc . Even we know that IDOC is asynchronous we need to return the SO number which is created .So ,
    1. Can we get Ack with SO number which is created and map to Webservice response filed ? 
    Thanks .,
    V.Rangarajan

    Hi Rangrajan,
    You Have to Identify in which Idoc you want to get the response back in R3 then Map Response of Webservice that contains SO to the idoc identified and you well get all the things you require in R3.
    Let me make few things clear:
    You have to use BPM for this
    ALEAUD is for IDOC acknowledgment not for Idoc response (There is difference between ack and response). So it will not serve your purpose.
    Report IDX_ALEREQUEST is to convert the idoc acknowledgment (ALEAUD) to XML formate.
    Thanks
    Sunil Singh

  • Webservice response times --How can we improve ?

    Hi All,
    I am making two different calls to a Function module from java
    1. web service   2. Jco
    When I go to STAD transaction i can see webservice response timings are more compared to Jco.
    What intresting here for is CPU timings and DB timings.
    Some case The DB timings for webservice 3 to 4 times more than Jco  .
    Ideally DB timings should be similar in both the cases..right ??
    CPU timngs also more in webservice ? Why ? How we optimze this for good performance of web service ??
    My webservice is simple one conatins 4 input parmaters (simple type)  retuening a simple structure.
    Jco response time is around 500-2000 (ms)
    web service response time is  2000-5000  (ms)
    Looking for expert suggestions from our community
    Thanks in advance.
    Best Regards,Anilkumar

    hi,
    JCo is an native binary RFC oder FastRFC, walks through the Gateway,
    Webservice are textoriented, more Overhead and in summary with still less performance,
    walks through the ICM
    e.g. RFC-Connections are ca. 10 times faster than Webservices!

  • WebService response charset problems

    Some time ago I posted a problem regarding unicode characters in WebService
    responses from WL7.0. I received a patch that helped partially - after the
    patch was applied, WL no longer threw any exception when an utf character
    was included in the response. So far so good.
    However, a problem arises when I call the WebService from a .NET client;
    .NET doesn't understand that the response is utf-8 encoded, so when the
    response is deserialized on the client side the encoded characters (such as
    å, ä, ö) come out as question marks. It seems that the Content-Type header
    doesn't specify the correct charset (I would expect something like
    'Content-Type:text/xml; charset=utf-8', but the charset=... part seems to be
    missing)
    By fiddling about a bit with the .NET generated proxy class I managed to
    force .NET to think that the Content-Type mime header does in fact contain
    the correct value (quite messy - I can supply the code if anyone should be
    interested). However, this should not be necessary - the solution I came up
    with is awkward and the only thing needed is that the correct Content-Type
    header be included in the WebService response. Is there a way to specify a
    default value for this?
    I tried creating a handler to intercept the response and set this specific
    mime header, but no luck - the value I set seems to be ignored (i tried
    ctx.getMessage().getMimeHeaders().setHeader("Content-Type", "text/xml;
    charset=utf-8");, as well as ...addHeader()). Besides, even if this did work
    it would seem unnecessarity complicated to create a handler and set it to
    handle all the methods in my WebService (there are quite a few).
    Any ideas?
    /Mattias Arthursson
    Compost Marketing

    This problem should be fixed in SP1. If the system property
    user.lang is not english, then SP1 will use utf-8 as charset
    (I think this will be your case).
    In SP1 you can also set a system property to change charset :
    weblogic.webservice.i18n.charset="my-char-set"
    regards,
    -manoj
    "Mattias Arthursson" <[email protected]> wrote in message
    news:[email protected]...
    Some time ago I posted a problem regarding unicode characters inWebService
    responses from WL7.0. I received a patch that helped partially - after the
    patch was applied, WL no longer threw any exception when an utf character
    was included in the response. So far so good.
    However, a problem arises when I call the WebService from a .NET client;
    .NET doesn't understand that the response is utf-8 encoded, so when the
    response is deserialized on the client side the encoded characters (suchas
    å, ä, ö) come out as question marks. It seems that the Content-Type header
    doesn't specify the correct charset (I would expect something like
    'Content-Type:text/xml; charset=utf-8', but the charset=... part seems tobe
    missing)
    By fiddling about a bit with the .NET generated proxy class I managed to
    force .NET to think that the Content-Type mime header does in fact contain
    the correct value (quite messy - I can supply the code if anyone should be
    interested). However, this should not be necessary - the solution I cameup
    with is awkward and the only thing needed is that the correct Content-Type
    header be included in the WebService response. Is there a way to specify a
    default value for this?
    I tried creating a handler to intercept the response and set this specific
    mime header, but no luck - the value I set seems to be ignored (i tried
    ctx.getMessage().getMimeHeaders().setHeader("Content-Type", "text/xml;
    charset=utf-8");, as well as ...addHeader()). Besides, even if this didwork
    it would seem unnecessarity complicated to create a handler and set it to
    handle all the methods in my WebService (there are quite a few).
    Any ideas?
    /Mattias Arthursson
    Compost Marketing

  • [svn] 1307: modules: added support for automatically adding " use namespace X", depending on the -target-player value

    Revision: 1307
    Author: [email protected]
    Date: 2008-04-18 16:28:33 -0700 (Fri, 18 Apr 2008)
    Log Message:
    modules: added support for automatically adding "use namespace X", depending on the -target-player value
    * similar to how we add "use namespace AS3"
    * symmetric with ASC's -use feature, however we don't have equivalent commandline support yet
    Bugs: n/a
    QA: Nothing in particular, except for testing the new functionality of -target-player (email me about this)
    Doc: Maybe: If we doc about "use namespace AS3" being added to all Flex compiles, we may want to talk about this.
    Reviewers: Pete and Erik
    Modified Paths:
    flex/sdk/trunk/frameworks/flex-config.xml
    flex/sdk/trunk/lib/asc.jar
    flex/sdk/trunk/modules/asc/src/java/macromedia/asc/embedding/BatchCompiler.java
    flex/sdk/trunk/modules/asc/src/java/macromedia/asc/embedding/Compiler.java
    flex/sdk/trunk/modules/asc/src/java/macromedia/asc/embedding/ScriptCompiler.java
    flex/sdk/trunk/modules/asc/src/java/macromedia/asc/parser/Parser.java
    flex/sdk/trunk/modules/asc/src/java/macromedia/asc/util/Context.java
    flex/sdk/trunk/modules/asc/src/java/macromedia/asc/util/ContextStatics.java
    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/SymbolTable.java
    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/MetaDataParser.java
    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/common/Configuration.java
    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/common/DefaultsConfigurator.java
    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/css/StyleDef.java
    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/css/StyleModule.java
    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/css/StylesContainer.java
    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/InterfaceCompiler.java
    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/reflect/TypeTable.java
    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/rep/AtEmbed.java
    flex/sdk/trunk/modules/swfutils/src/java/flash/swf/tools/SwfxPrinter.java

    Thanks for your attention.
    In the above logs, higher resolutions seems to be detected on both screens, hence my surprise :
    [ 391.631] (II) intel(0): Printing probed modes for output LVDS1
    [ 391.631] (II) intel(0): Modeline "1600x900"x60.0 110.00 1600 1664 1706 2010 900 903 906 912 -hsync -vsync (54.7 kHz eP)
    [ 391.897] (II) intel(0): Printing probed modes for output HDMI1
    [ 391.897] (II) intel(0): Modeline "1680x1050"x59.9 119.00 1680 1728 1760 1840 1050 1053 1059 1080 +hsync -vsync (64.7 kHz eP)
    If it can help here is also my current xrandr output (after having called it manually to use the preferred resolution of each screen)
    itanguy ~ $ xrandr
    Screen 0: minimum 320 x 200, current 1680 x 1050, maximum 8192 x 8192
    LVDS1 connected 1600x900+0+0 (normal left inverted right x axis y axis) 309mm x 174mm
    1600x900 60.0*+ 40.0
    1024x768 60.0
    800x600 60.3 56.2
    640x480 59.9
    VGA1 disconnected (normal left inverted right x axis y axis)
    HDMI1 connected 1680x1050+0+0 (normal left inverted right x axis y axis) 434mm x 270mm
    1680x1050 59.9*+
    1280x1024 75.0 60.0
    1152x864 75.0
    1024x768 75.1 60.0
    800x600 75.0 60.3
    640x480 75.0 60.0
    720x400 70.1
    DP1 disconnected (normal left inverted right x axis y axis)
    HDMI2 disconnected (normal left inverted right x axis y axis)
    HDMI3 disconnected (normal left inverted right x axis y axis)
    DP2 disconnected (normal left inverted right x axis y axis)
    DP3 disconnected (normal left inverted right x axis y axis)
    If needed, I may reboot and provide xrandr output after boot (it will be 1024x768), or could other logs help you ? Please ask...

  • XML Namespace in WebService Request/Response

    Hi all,
    I have a question regarding xml namespace usage in wsdl and the corresponding request/response messages.
    I have already browsed quite some articles about xml namespaces as well as some forum threads, but I am still not sure.
    I have the following part of a wsdl document (generated by Integration Directory), defining a targetnamespace.
    u2026
    <wsdl:types>
        <xsd:schema targetNamespace="http://www.dorma.com/sap/xi/finance"
                             xmlns="http://www.dorma.com/sap/xi/finance"
                             xmlns:xsd="http://www.w3.org/2001/XMLSchema">
            <xsd:element name="DebtorGetDetailResponse" type="Z_BAPI_DEBTOR_GETDETAIL_Response"></xsd:element>
            u2026
            <xsd:complexType name="Z_BAPI_DEBTOR_GETDETAIL_Response">
                <xsd:sequence>
                    <xsd:element name="DEBITOR_COMPANY_DETAIL" type="BAPI1007_5" minOccurs="0">
                    </xsd:element> u2026
                </xsd:sequence>
            </xsd:complexType>
            u2026
        </xsd:schema>
        u2026
    </wsdl:types>
    u2026
    In my understanding, all types defined in the schema section of a wsdl document will be in the targetnamespace, if defined.
    Therefore the element DEBITOR_COMPANY_DETAIL would be in the namesapce
    http://www.dorma.com/sap/xi/finance
    However, the ABAP proxy generates a response message like follows,
    where only the root element is in this namespace and the child elements are in the global namespace:
    <?xml version="1.0" encoding="utf-8"?>
    <ns1:DebtorGetDetailResponse xmlns:ns1="http://www.dorma.com/sap/xi/finance"
                xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
        <DEBITOR_COMPANY_DETAIL>
            u2026
        </DEBITOR_COMPANY_DETAIL>
        u2026
    </ns1:DebtorGetDetailResponse>
    Do I have a wrong understand of the wsdl (xml schema) or is this an erroneous behavior?
    The problem is that some 3rd-party software web service module does not accept
    the response message as not complient with the respective wsdl document.
    Any input is appreciated.
    Thanks
    Hans
    Edited by: Hans-Jürgen Schwippert on Oct 1, 2008 12:02 PM

    I have the same problem. I am trying to connect to a webservice running on IBM websphere but it doesn't accept the xml in my request. It appears to be the same namespace issue.
    Did you ever find a solution for this?
    Is it a valid webservice call if you omit the namespace for an element or is this a bug in the Adaptive WS implementation?
    Web Dynpro web service model generated request:
    <?xml version="1.0" encoding="UTF-8"?>
    <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:Header>
    <sapsess:Session xmlns:sapsess="http://www.sap.com/webas/630/soap/features/session/">
    <enableSession>true</enableSession>
    </sapsess:Session>
    </SOAP-ENV:Header>
    <SOAP-ENV:Body>
    look between these lines -
    <ns1:tamKontrolleraKontoLastAnrop xmlns:ns1="http://schemas.fora.se/modell/tam/1.0/TAM_Data">
    <AnvandarNamn>30039647</AnvandarNamn>
    </ns1:tamKontrolleraKontoLastAnrop>
    look between these lines -
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    As you can see the tag
    <AnvandarNamn>30039647</AnvandarNamn>
    is missing a namespace.
    It should be
    <ns1:AnvandarNamn>30039647</ns1:AnvandarNamn>
    Using a third part tool called Soapui i generate this request that works:
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tam="http://schemas.fora.se/modell/tam/1.0/TAM_Data">
       <soapenv:Header/>
       <soapenv:Body>
          <tam:tamKontrolleraKontoLastAnrop>
             <tam:AnvandarNamn>30039647</tam:AnvandarNamn>
          </tam:tamKontrolleraKontoLastAnrop>
       </soapenv:Body>
    </soapenv:Envelope>

  • How to work with Arrays (or Lists) in WebService responses?

    Good Evening!
    In a BPEL process I invoked a some Webservice which return me a list of persons. Like this:
    <response>
    <personList>
    <person>Person1</person>
    <person>Person2</person>
    <person>Person3</person>
    </persons>
    </respons>
    Now i need to do something with Every returned element (like to invoke another webservice with parameter "person" (so i need to invoke a webservice for a 3 times))
    How i can do this?
    In Assign element CopyRules i see only:
    response |_
    personList|_
    person
    Like a person is a simple element, not a list.
    Should i use a For Each Element? And what to do next?
    Thank you.

    http://download.oracle.com/docs/cd/E12483_01/integrate.1013/b28981/manipdoc.htm#BABCHBFB
    http://clemensblog.blogspot.com/2006/03/bpel-looping-over-arrays-collections.html
    http://oraclebpelindepth.blogspot.com/2008/09/arrays-in-bpel_21.html
    you indeed need for each and loop over every person element in
    in the loop you can do the invokes of the other service with the input-data of the corresponding person-element-data
    person[1]/name
    person[2]/name
    etc

  • Catching error messages in Webservice response

    Hi,
    The webservice I am trying to call from ABAP is throwing address not found exception which is caught by cx_ai_system_fault exception class. This class only returns <faultcode> and <faultstring> but not <ErrorCode> and <ErrorMsg> in <detail> node.
    Is there any way I could get information from <detail> node?
    Below is response I am getting from webservice.
    <?xml version="1.0" encoding="utf-16"?>
    <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <soap:Body>
    <soap:Fault>
    <faultcode>soap:Client</faultcode>
    <faultstring>Fault occurred</faultstring>
    <faultactor>http://testserver/Addressverification/addressservices.asmx</faultactor>
    <detail>
    <ErrorCode xmlns="http://www.testserver.com">2</ErrorCode>
    <ErrorMsg xmlns="http://www.testserver.com">ADDRESS NOT FOUND</ErrorMsg>
    </detail>
    </soap:Fault>
    </soap:Body>
    </soap:Envelope>
    Thank you,
    Jagadish

    If you see proxy structure created from wsdl then you can find exception class which may have "Detail" node.
    Regards,
    gourav

  • Setting webservice response content type / charset header

    I have a webservice .war file.
    I need to set the content-type/charset http header and add another http header. I wrote a filter to do that and had partial success. The other header (pics-label) is indeed sent in the response with the correct value. However, setting the content type proved to be another matter.
    I read through the documentation that one can set the system property weblogic.webservice.i18n.charset=utf-8. However, this doesn't seem to work. The filter setting the header also doesn't work. It seems that weblogic has the final word on that. Only when I set the <web-service> element attribute charset="UTF-8" does the header gets back to the client.
    Due to deployment/build related issues which I won't get into, this is most annoying.
    If anyone has encountered a similiar issue and have a solution/workaround/thoughts I'll be glad to hear about it.
    P.S.
    Also tried -Dfile.encoding=UTF-8 but didn't do any good.
    Thanks.

    you don't define a charset for non-text file types. Excel files are not text files.

  • WebService Response not resolvable

    When my webservice run send(), it returns the following error
    [WSDLError faultString="Element
    http://tempuri.org/dcli.xsd:dgInfoWrapper
    not resolvable" faultCode="WSDL.BadElement" faultDetail="null"]
    But dgInfoWrapper is the response element. Why
    myWebService.send() requires the response element.
    <element name="dgInfoWrapper">

    <complexType>

    <sequence>
    <element name="vecDgInfo" type="dcli:dgInfoOutArray"
    minOccurs="1" maxOccurs="1" nillable="false"/>
    <element name="result" type="dcli:cmdResult" minOccurs="1"
    maxOccurs="1"/>
    </sequence>
    </complexType>
    </element>
    operation name="getHostsByDg">
    <documentation>Service definition of function
    dcli__getHostsByDg</documentation>
    <input message="tns:getHostsByDg"/>
    <output message="tns:dgInfoWrapper"/>
    </operation>
    Thanks in advance for any help.

    Hi,
    To begin troubleshooting, you may check any monthly applications' running like update or anti-virus.
    Thanks,
    Gordon

  • Webservice Response Attachement Deserialize XOP Include Error

    Hello experts,
    I am consuming a non SAP Webservice. The response contains a HTML attachment and the XOP Include element can not be interpreted.
    The Response:
    <ns2:html_content><xop:Include xmlns:xop="http://www.w3.org/2004/08/xop/include" href="cid:[email protected]"/></ns2:html_content>
    The error message in SOAMANAGER:
    CL_SXMLP_DATA_ST .. internal error 1001 and error text CX_ST_MATCH_TYPE:XSLT Exception bei Offset 431, XPath soapenv: Envelope...... html_content(1)xop:Incldue(1) Value for type y expected (falut location is 1)
    The type y stands for binary (ABAP Type Mapping). The SAP System Release is 700 with level 27.
    I need the HTML. What is there to do, so that SAP can interpret the response?
    Thanks for the help,
    Flavius

    Hi Flavius, have you resolve your problem?
    maybe you can check oss note 1582187 - Limited support of XOP/MTOM via SOAP
    luca

  • WebService response object in XML - parsing attributes

    Hi- new to Flex and I'm trying to parse out the attributes of the response object. I can get the entire object and see that its working, but I cant get just a single attribute. It pulls weather info for world cities. For example, I just want the location name and temperature.
    Any advice on this? Thanks!
    <?xml version="1.0"?>
    <!-- fds\rpc\RPCResultFaultMXML.mxml -->
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
                    xmlns:s="library://ns.adobe.com/flex/spark">
        <mx:Script>
            <![CDATA[
                import mx.rpc.soap.SOAPFault;        
                import mx.rpc.events.ResultEvent;
                import mx.rpc.events.FaultEvent;
                import mx.controls.Alert;
                import mx.utils.ObjectUtil;
                public function showErrorDialog(event:FaultEvent):void {
                    // Handle operation fault.
                    Alert.show(event.fault.faultString, "Error");
                public function defaultFault(event:FaultEvent):void {
                    // Handle service fault.
                    if (event.fault is SOAPFault) {
                        var fault:SOAPFault=event.fault as SOAPFault;
                        var faultElement:XML=fault.element;
                        // You could use E4X to traverse the raw fault element returned in the SOAP envelope.
                    Alert.show(event.fault.faultString, "Error");              
                public function log(event:ResultEvent):void {
                    // Handle result.
                    trace(event.result);
                    //trace(ObjectUtil.toString(event.result));
                    //var len:int;
                    //len = event.result.length;
                    //trace(len);
                    //trace(event.result);
                    //trace(event.result.GetWeatherResponse.Location);
                    //var myXML:XML = new XML(event.result);
                    //trace(myXML.attribute("Location"));
            ]]>
        </mx:Script>
        <mx:WebService id="WeatherService" wsdl="http://www.webservicex.com/globalweather.asmx?wsdl"
                       fault="defaultFault(event)">
            <mx:operation name="GetWeather"
                          fault="showErrorDialog(event)"
                          result="log(event)"
                          resultFormat="xml">
                <mx:request>
                    <CityName>{myCity.text}</CityName>
                    <CountryName>{myCountry.text}</CountryName>
                </mx:request>
            </mx:operation>
        </mx:WebService>
        <mx:TextInput id="myCity" text="Madrid"/>
        <mx:TextInput id="myCountry" text="Spain"/>
        <!-- Call the web service operation with a Button click. -->
        <mx:Button width="60" label="Get Weather"
                  click="WeatherService.GetWeather.send();"/>
        <!-- Display the Weather -->
        <mx:Label text="Weather:"/>
        <mx:TextArea text="{WeatherService.GetWeather.lastResult}" height="200"/>
    </mx:Application>

    The WSDL says GetWeatherResponse is a string, and it appears to be a string of XML, so set <mx:operation resultFormat="object"> as this will unwrap the SOAP response value and leave a string typed value intact. You can then create a new ActionScript 3.0 E4X-based XML instance from the unwrapped string:
        var myXML:XML = new XML(event.result.toString());
    You can then travese the XML document using E4X syntax, a simple example is included below:
        trace(myXML..Location);
        trace(myXML..Temperature);

  • Webservice response in BPM scenario

    I am doing a BPM scenario where I take data from ERP asynchronously using proxy and send it as a request to a third party synchronous webservice. The webservice gives a response and I am using the response to send it further along to other systems.
    Everything works fine if correct messages are sent and received. The problem starts when PI/BPM receives an un-expected response from the webservice. If the webservice sends an unknown error message in the response, the mapping fails and goes into the error queue. (smq2)
    And the real problem is every successful message or response after that also goes into the same queue and getting stuck. Why is this happenning? Do we need to monitor and clear the error queues all the time so that subsequent successful messages go through BPM corrrectly?
    Do you guys think it is a cache problem or something else?
    Thank you.

    this is because there is no proper error handling in your BPM.
    you need to handle the exceptions in case of mapping or communication failures.
    refer : http://help.sap.com/saphelp_nw04/helpdata/en/33/4a773f12f14a18e10000000a114084/frameset.htm

Maybe you are looking for