WS using document-style encoding

Could someone point me to article(s)/tutorial(s) how to create WebService with document-style encoding (as oposed to RPC-encoding) using NetWeaver?
Thanks in advance,
VS

[ -closed with no resolution- ]

Similar Messages

  • Quick Web Services Using Document Style Messaging

    Hello all,
    I am using Apache Axis and am trying to set up a document style (message based) webservice that will receive a DOM object, modify that DOM object, and return it as a new DOM object. I have not problems with standard RPC style webservices, but am unsure as to where to go with the more complex. I have included everything that may be helpful to give me an answer.....
    I have set up my webservice (a very simple one to get this going):
    package testing.webservices;
    import org.w3c.dom.Document;
    import org.apache.axis.MessageContext;
    public class DocTest{
    public Document doSubmission(MessageContext msgContext, Document inDoc)throws Exception{
    return inDoc;
    I set this class up in Axis with my deploy.wsdd file:
    <deployment name="test" xmlns="http://xml.apache.org/axis/wsdd/"
    xmlns:java="http://xml.apache.org/axis/wsdd/providers/java"
    xmlns:xsi="http://www.w3.org/2000/10/XMLSchema-instance">
    <service name="DocService" style="java:MSG">
    <parameter name="className" value="testing.webservices.DocTest" />
    <parameter name="allowedMethods" value="doSubmission" />
    </service>
    </deployment>
    When I look at Axis it lists this DocService as an active service. Can anyone tell me what the client code would look like to send a Document object to my simple webservice and receive a document object back? Any help would be greatly appreciated.
    J-Rod
    NOTE: This is what I have so far:
    import .....
    public class DocTestClient{
    public static void main(String[] args) throws Exception {
    String fileName = "C:\\Dev\\MyXmlFile.xml";
    String uri = "file:" + new File(fileName).getAbsolutePath( );
    DocumentBuilderFactory factory =DocumentBuilderFactory.newInstance();
    DocumentBuilder builder = factory.newDocumentBuilder();
    Document doc = builder.parse(uri);
    String endpointURL = "http://localhost:8080/axis/services/DocService";
    Service service = new Service();
    Call call = (Call) service.createCall();
    call.setTargetEndpointAddress(new java.net.URL(endpointURL) );
    call.setOperationName(new QName("http://testing.webservices", "doSubmission") );
    ?????? WHAT DO I DO HERE to access the send the doc object and receive it back?????
    }

    Just thought I'd post an update. We figured out how to stream the required data as a string so I OK now. We ended up going with java:RPC to string data back and forth.
    Thanks
    J-Rod

  • Document style webservice

    Hello
    I have created a document style webservice, the method signature takes Element as argument and returns elements back. ( i guess this is the limitation of using Document Style Web Service, as I would have rather prefered to have a complex type JAVABEAN as an argument)
    Now going ahead, i have deployed this service to OC4J server and when I create the Stub at the client side, the return type of the method gets convered to Vector instead of Element.
    Can anyone help me out how to get the Element return type back at the stub end.
    Any help will highly be appreciated.
    Also is there is a way to create a complex type Webservice using Document style ?
    prab

    Hello,
    It is possible with OracleAS 10.1.3 out of the box.
    Which release are you using?
    Regards
    Tugdual Grall

  • Complex schemas using Document Literal Web Services

    I am trying to use document style web services and top down approach. I prepared a request, response and fault schema. In those schemas i have attributes defined. When i use WSCOMPILE, it does not generate proper classes, if the schema is too complex. It has worked only for simple schemas. Is there any other way of doing it?

    Hi!
    If you are using jwsdp 1.6 or earlier and I remember correctly this uses JAXB 1.0 for databinding, which doesnt support all schema constructs.. Even if I'm wrong on that, you could use the -f:nodatabinding option with wscompile and do your own databinding with for example xmlbeans, which supports all schema constructs and is far more flexible than jaxb 1.0 (= personal opinion ;-)
    good luck!
    /Ole

  • Use of RPC-Encoding service style in PSFT Integration Broker

    It appears that in PT 8.46, the only service style supported for integration is RPC-Encoding. Can someone confirm this for me? This is an outdated standard, not supported by the WS-I, and not in WSDL2. I'm wondering why this was used, if there's an option to configure it to use Document Literal instead, or to see if later versions of PeopleTools support more service styles.
    Thanks.

    Hi,
    PeopleSoft Integration Broker generates WSDLs which conforms to WSDL 1.1. PeopleSoft supports document style.
    I am able to generate Document style WSDLs in both 8.46 and 8.48 PeopleTools version. Please see below:
    PeopleTools 8.46
    <wsdl:binding name="CUSTOMER_SYNCBinding" type="wsdl_target:CUSTOMER_SYNC">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="CUSTOMER_SYNCSoapIn">
    <soap:operation style="document" soapAction="CUSTOMER_SYNCSoapIn" />
    PeopleTools 8.48
    <wsdl:binding name="DEPT_SYNC_Binding" type="tns:DEPT_SYNC_PortType">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
    <wsdl:operation name="DEPT_SYNC">
    How did you generate your WSDL?
    -Siva

  • Calling a document style web service using a pl/sql wrapper method

    Just wanted to find out if anybody has a working example of invoking a document style web service from Oracle 10g database on a Unix environment.
    We have java test class that invokes the web service, and we are trying to use a pl/sql wrapper to invoke a Java Web Service client. So far, we are encountering an End of File Communication error from Oracle which essentially terminates the session with the database.
    On the Oracle application server side we are able to see a successful HTTP request made to the application server via server log, which is hosting the web service, since we are registering HTTP 200 success codes. However, we do not see any other errors from the application in the server logs. Most likely since the client side fails, before actually getting a chance to invoke the web service. This has been verified by commenting the client code leaving the print statements. The first call to the Service Factory method (XFire) to look up the service is where the PL/SQL procedure fails with an End of File communication error.

    Remove the when others section and see the actual error and post that.
    http://tkyte.blogspot.com/2008/06/when-others-then-null-redux.html
    http://tkyte.blogspot.com/2007/03/dreaded-others-then-null-strikes-again.html

  • BPEL using binding style='document'

    Hi guys,
    I am new to BPEL. I was wondering if anyone could tell me if Collaxa has any deployable examples that use a binding style='document' instead of rpc for its bindings in WSDL and SOAP?
    Any help would be appreciated,
    Thanks in advance
    Faraz Khan

    Faraz,
    Most of our BPEL samples expose a document style interface to their client. The only that do not are the "C:\orabpel\samples\demos\IBMSamples".
    On the other side, BPEL PM can call both document and rpc style service.
    Edwin

  • AxisFault seen while invoking document style web service

    I am seeing the following stacktrace when I try to invoke a document-style web service.
    <partnerRole name="MyWebService1_Role">
    <ServiceName>{http://idm.oracle.com/}MyWebService1</ServiceName>
    <PortType>{http://idm.oracle.com/}MyWebService1</PortType>
    <Address>null</Address>
    </partnerRole>
    <conversationId>bpel://localhost/default/ProvisioningFromDAS~1.0/4202-BpInv0-BpSeq0.3-3</conversationId>
    <properties>{}</properties>
    </partnerLink>
    <2005-09-06 09:23:37,650> <DEBUG> <default.collaxa.cube.ws> <WSIFInvocationHandler::invoke> Fault happened
    AxisFault
    faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Client
    faultSubcode:
    faultString: caught exception while handling request: expected element is missing: {http://idm.oracle.com/}attribute
    faultActor:
    faultNode:
    faultDetail:
    {http://xml.apache.org/axis/}stackTrace:caught exception while handling request: expected element is missing: {http://idm.oracle.com/}attribute
    at org.collaxa.thirdparty.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:221)
    at org.collaxa.thirdparty.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:128)
    at org.collaxa.thirdparty.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1083)
    at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
    at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
    What could this mean ?

    Hi,
    I am getting a similar issue. I created a Document-style/literal webservice and deployed on Weblogic 9.2 . Then I generated client stubs using clientgen. I get the following exception stack trace:
    java.rmi.RemoteException: web service invoke failed: javax.xml.soap.SOAPException:
    failed to serialize class java.lang.Objectweblogic.xml.schema.binding.SerializationException: type mapping lookup failure on
    class=class com.sun.org.apache.xerces.internal.dom.DeferredDocumentImpl TypeMapping=TYPEMAPPING SIZE=3
    ENTRY 1:
    class: java.lang.Object
    xsd_type: ['http://xmlns.ozarkexpress.com/business/sell']:stns:echoDocumentResponse
    ser: weblogic.xml.schema.binding.internal.builtin.XSDAnyCodec@1125127
    deser: weblogic.xml.schema.binding.internal.builtin.XSDAnyCodec@18dfef8
    ENTRY 2:
    class: java.lang.Object
    xsd_type: ['http://xmlns.ozarkexpress.com/business/sell']:stns:echoDocument
    ser: weblogic.xml.schema.binding.internal.builtin.XSDAnyCodec@15e83f9
    deser: weblogic.xml.schema.binding.internal.builtin.XSDAnyCodec@2a5330
    ENTRY 3:
    class: java.lang.Object
    xsd_type: ['http://www.w3.org/2001/XMLSchema']:xsd:anyType
    ser: weblogic.xml.schema.binding.internal.builtin.XSDAnyCodec@bb7465
    deser: weblogic.xml.schema.binding.internal.builtin.XSDAnyCodec@d6c16c

  • Document style Problem

    We have three issues when trying to implement a document-style service. I will
    document them all but I'd suggest you go through them all before attempting to
    answer any of them.
    We are trying to implement a service that has the following signature:
    public void echoDom(Document doc)
    We want the delivery of our message to be of style ("document"). Therefore, we
    modified our servicegen entry to include the style="document" under the service.
    It looks like the following:
    <servicegen
    destEar="${appDir}/dom.ear"
    warName="dom.war">
    <service
    javaClassComponents="examples.dom.EchoDom"
    targetNamespace="http://examples.org"
    serviceName="dom"
    serviceURI="/EchoDomService"
         generateTypes="True"
    expandMethods="True"
    style="document">
    <client
    packageName="examples.dom"
    clientJarName="client.jar"
    />
    </service>
    <classpath>
    <pathelement path="${temp_dir}"/>
    <pathelement path="${java.class.path}"/>
    </classpath>
    </servicegen>
    1. FIRST PROBLEM:
    The first problem we're having is that it does not compile with the combination
    of our signature being of type void (as shown above) and the style="document"
    in build.xml.
    The error is the following:
    [servicegen] Generating service "dom" ...
    [servicegen] Generating XML types and serializers from java classes (examples.do
    m.EchoDom) ...
    [servicegen] weblogic.utils.AssertionError: ***** ASSERTION FAILED *****[  void:
    null ]
    [servicegen] at weblogic.utils.Debug.assertion(Debug.java:84)
    [servicegen] at weblogic.xml.schema.binding.internal.codegen.Compiler.compile
    (Compiler.java:111)
    [servicegen] at weblogic.xml.schema.binding.internal.XSDTypeMappingBuilder.ma
    pClass(XSDTypeMappingBuilder.java:88)
    [servicegen] at weblogic.xml.schema.binding.internal.TypeMappingBuilderBase.a
    ddMapping(TypeMappingBuilderBase.java:183)
    [servicegen] at weblogic.ant.taskdefs.webservices.autotype.ComponentAutoTyper
    .mapComponent(ComponentAutoTyper.java:155)
    [servicegen] at weblogic.ant.taskdefs.webservices.autotype.JavaAutoTyper.run(
    JavaAutoTyper.java:80)
    [servicegen] at weblogic.ant.taskdefs.webservices.autotype.AutoTypeTask.execu
    te(AutoTypeTask.java:353)
    [servicegen] at weblogic.ant.taskdefs.webservices.servicegen.ServiceGenTask.g
    enerateService(ServiceGenTask.java:251)
    [servicegen] at weblogic.ant.taskdefs.webservices.servicegen.ServiceGenTask.e
    xecute(ServiceGenTask.java:146)
    [servicegen] at org.apache.tools.ant.Task.perform(Task.java:217)
    [servicegen] at org.apache.tools.ant.Target.execute(Target.java:164)
    [servicegen] at org.apache.tools.ant.Target.performTasks(Target.java:182)
    [servicegen] at org.apache.tools.ant.Project.executeTarget(Project.java:601)
    [servicegen] at org.apache.tools.ant.Project.executeTargets(Project.java:560)
    [servicegen] at org.apache.tools.ant.Main.runBuild(Main.java:454)
    [servicegen] at org.apache.tools.ant.Main.start(Main.java:153)
    [servicegen] at org.apache.tools.ant.Main.main(Main.java:176)
    2. SECOND PROBLEM
    If we change the signature to become:
    public Document echoDom(Document doc)
    then the build works but when we try to test our service, it gives us the following:
    [java] java.rmi.RemoteException: web service invoke failed; nested exceptio
    n is:
    [java] javax.xml.soap.SOAPException: failed to serialize xml:weblogic.
    xml.schema.binding.SerializationException: type mapping lookup failure on class=
    class weblogic.apache.xerces.dom.DocumentImpl TypeMapping=TYPEMAPPING SIZE=6
    [java] ENTRY 1:
    [java] class: org.w3c.dom.Document
    [java] xsd_type: ['http://examples.org']:p3:echoDom
    [java] ser: weblogic.xml.schema.binding.internal.builtin.DocumentCode
    c@5973ea
    [java] deser: weblogic.xml.schema.binding.internal.builtin.DocumentCode
    c@49131c
    [java] ENTRY 2:
    [java] class: java.lang.Object
    [java] xsd_type: ['http://examples.org']:p1:echoDomResponse
    [java] ser: weblogic.xml.schema.binding.internal.builtin.XSDAnyCodec@
    5b99f
    [java] deser: weblogic.xml.schema.binding.internal.builtin.XSDAnyCodec@
    3. THIRD PROBLEM:
    Now, when we revert back to style="rpc" and everything works fine and dandy (although
    not as we want it because, as I mentioned above, we want a void signature and
    a document style), we get the following added tag around our body content, which
    we did not add ourselves, nor are we sure yet why it shows up:
    We pass it the following argument:
    <those dummy="hi">
    <this xmlns="mynamespace">
    <f:that xmlns:f="yournamespace">
    <or> a lot of random < </or>
    <f:the>
    </f:the>
    <f:other> foo bar blaz</f:other>
    </f:that>
    </this>
    </those>
    We get the following (notice the <document> tag around it):
    <env:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <env:Body>
    <m:echoDom xmlns:m="http://examples.org"
    env:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <document>
    <those dummy="hi">
    <this xmlns="mynamespace">
    <f:that xmlns:f="yournamespace">
    <or> a lot of random < </or>
    <f:the>
    </f:the>
    <f:other> foo bar blaz</f:other>
    </f:that>
    </this>
    </those>
    </document>
    </m:echoDom>
    </env:Body>
    </env:Envelope>
    4. PROBLEM FOUR (just remembered this one):
    If we use the standard test page (provided with WLS), with (3) above, it chops
    off the "those" and it still wraps it within this new <document> element as show
    below:
    <!--REQUEST.................-->
    <env:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <env:Header>
    </env:Header>
    <env:Body>
    <m:echoDom xmlns:m="http://examples.org"
    env:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <document>
    <this xmlns="mynamespace">
    <f:that xmlns:f="yournamespace">
    <or> a lot of random < </or>
    <f:the>
    </f:the>
    <f:other> foo bar blaz</f:other>
    </f:that>
    </this>
    </document>
    </m:echoDom>
    </env:Body>
    </env:Envelope>
    We're not so worried about the fourth because it seems like a bug but the first
    three (especially the first) are most important. Any ideas would be appreciated.
    Thanks
    sami

    Ok I tried it out, DOM with document style web
    service is not working in WLS 7.0.2. I filed
    CR104719. Please contact support with this case
    number to get a patch.
    Sorry for the trouble.
    http://manojc.com
    "sami titi" <[email protected]> wrote in message
    news:[email protected]...
    >
    We're using WLS7 SP2, patch: CR102544_70sp2_v2.jar
    thanks
    "manoj cheenath" <[email protected]> wrote:
    Quick question, before i try this out.
    Which version of WLS? SP?
    http://manojc.com
    "sami titi" <[email protected]> wrote in message
    news:[email protected]...
    We have three issues when trying to implement a document-style service.I
    will
    document them all but I'd suggest you go through them all beforeattempting to
    answer any of them.
    We are trying to implement a service that has the following signature:
    public void echoDom(Document doc)
    We want the delivery of our message to be of style ("document").Therefore, we
    modified our servicegen entry to include the style="document" underthe
    service.
    It looks like the following:
    <servicegen
    destEar="${appDir}/dom.ear"
    warName="dom.war">
    <service
    javaClassComponents="examples.dom.EchoDom"
    targetNamespace="http://examples.org"
    serviceName="dom"
    serviceURI="/EchoDomService"
    generateTypes="True"
    expandMethods="True"
    style="document">
    <client
    packageName="examples.dom"
    clientJarName="client.jar"
    />
    </service>
    <classpath>
    <pathelement path="${temp_dir}"/>
    <pathelement path="${java.class.path}"/>
    </classpath>
    </servicegen>
    1. FIRST PROBLEM:
    The first problem we're having is that it does not compile with thecombination
    of our signature being of type void (as shown above) and thestyle="document"
    in build.xml.
    The error is the following:
    [servicegen] Generating service "dom" ...
    [servicegen] Generating XML types and serializers from java classes(examples.do
    m.EchoDom) ...
    [servicegen] weblogic.utils.AssertionError: ***** ASSERTION FAILED*****[  void:
    null ]
    [servicegen] at weblogic.utils.Debug.assertion(Debug.java:84)
    [servicegen] atweblogic.xml.schema.binding.internal.codegen.Compiler.compile
    (Compiler.java:111)
    [servicegen] atweblogic.xml.schema.binding.internal.XSDTypeMappingBuilder.ma
    pClass(XSDTypeMappingBuilder.java:88)
    [servicegen] atweblogic.xml.schema.binding.internal.TypeMappingBuilderBase.a
    ddMapping(TypeMappingBuilderBase.java:183)
    [servicegen] atweblogic.ant.taskdefs.webservices.autotype.ComponentAutoTyper
    mapComponent(ComponentAutoTyper.java:155)
    [servicegen] atweblogic.ant.taskdefs.webservices.autotype.JavaAutoTyper.run(
    JavaAutoTyper.java:80)
    [servicegen] atweblogic.ant.taskdefs.webservices.autotype.AutoTypeTask.execu
    te(AutoTypeTask.java:353)
    [servicegen] atweblogic.ant.taskdefs.webservices.servicegen.ServiceGenTask.g
    enerateService(ServiceGenTask.java:251)
    [servicegen] atweblogic.ant.taskdefs.webservices.servicegen.ServiceGenTask.e
    xecute(ServiceGenTask.java:146)
    [servicegen] at org.apache.tools.ant.Task.perform(Task.java:217)
    [servicegen] at org.apache.tools.ant.Target.execute(Target.java:164)
    [servicegen] atorg.apache.tools.ant.Target.performTasks(Target.java:182)
    [servicegen] atorg.apache.tools.ant.Project.executeTarget(Project.java:601)
    [servicegen] atorg.apache.tools.ant.Project.executeTargets(Project.java:560)
    [servicegen] at org.apache.tools.ant.Main.runBuild(Main.java:454)
    [servicegen] at org.apache.tools.ant.Main.start(Main.java:153)
    [servicegen] at org.apache.tools.ant.Main.main(Main.java:176)
    2. SECOND PROBLEM
    If we change the signature to become:
    public Document echoDom(Document doc)
    then the build works but when we try to test our service, it givesus the
    following:
    [java] java.rmi.RemoteException: web service invoke failed; nestedexceptio
    n is:
    [java] javax.xml.soap.SOAPException: failed to serializexml:weblogic.
    xml.schema.binding.SerializationException: type mapping lookup failureon
    class=
    class weblogic.apache.xerces.dom.DocumentImpl TypeMapping=TYPEMAPPINGSIZE=6
    [java] ENTRY 1:
    [java] class: org.w3c.dom.Document
    [java] xsd_type: ['http://examples.org']:p3:echoDom
    [java] ser:weblogic.xml.schema.binding.internal.builtin.DocumentCode
    c@5973ea
    [java] deser:weblogic.xml.schema.binding.internal.builtin.DocumentCode
    c@49131c
    [java] ENTRY 2:
    [java] class: java.lang.Object
    [java] xsd_type: ['http://examples.org']:p1:echoDomResponse
    [java] ser:weblogic.xml.schema.binding.internal.builtin.XSDAnyCodec@
    5b99f
    [java] deser:weblogic.xml.schema.binding.internal.builtin.XSDAnyCodec@
    3. THIRD PROBLEM:
    Now, when we revert back to style="rpc" and everything works fine anddandy (although
    not as we want it because, as I mentioned above, we want a void
    signature
    and
    a document style), we get the following added tag around our body
    content,
    which
    we did not add ourselves, nor are we sure yet why it shows up:
    We pass it the following argument:
    <those dummy="hi">
    <this xmlns="mynamespace">
    <f:that xmlns:f="yournamespace">
    <or> a lot of random < </or>
    <f:the>
    </f:the>
    <f:other> foo bar blaz</f:other>
    </f:that>
    </this>
    </those>
    We get the following (notice the <document> tag around it):
    <env:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <env:Body>
    <m:echoDom xmlns:m="http://examples.org"
    env:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <document>
    <those dummy="hi">
    <this xmlns="mynamespace">
    <f:that xmlns:f="yournamespace">
    <or> a lot of random < </or>
    <f:the>
    </f:the>
    <f:other> foo bar blaz</f:other>
    </f:that>
    </this>
    </those>
    </document>
    </m:echoDom>
    </env:Body>
    </env:Envelope>
    4. PROBLEM FOUR (just remembered this one):
    If we use the standard test page (provided with WLS), with (3) above,it
    chops
    off the "those" and it still wraps it within this new <document>
    element
    as show
    below:
    <!--REQUEST.................-->
    <env:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <env:Header>
    </env:Header>
    <env:Body>
    <m:echoDom xmlns:m="http://examples.org"
    env:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <document>
    <this xmlns="mynamespace">
    <f:that xmlns:f="yournamespace">
    <or> a lot of random < </or>
    <f:the>
    </f:the>
    <f:other> foo bar blaz</f:other>
    </f:that>
    </this>
    </document>
    </m:echoDom>
    </env:Body>
    </env:Envelope>
    We're not so worried about the fourth because it seems like a bug butthe
    first
    three (especially the first) are most important. Any ideas would beappreciated.
    Thanks
    sami

  • Problem in Jdeveloper 10.1.3, web services and document style.possible bug?

    Hello!
    I would like to generate a document-style web service from a wsdl file. The problem is that when I use it I get the following error:
    "operation echoStruct must have exactly one parameter as part of the SOAP body when used with a document-bare binding. All other parameters must be mapped to headers."
    A similar message is shown with other wsdl file that I'm using.
    I'm attaching the file that use to test it.
    Could you help me and tell me how I can fix it, please? or is it a bug?
    Regards,
    Antonio.
    <definitions xmlns:s1="http://soapinterop.org" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s0="http://soapinterop.org/xsd" xmlns:s2="http://soapinterop.org/AbstractTypes" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://soapinterop.org">
         <types>
              <s:schema elementFormDefault="qualified" targetNamespace="http://soapinterop.org/xsd">
                   <s:import namespace="http://soapinterop.org"/>
                   <s:element name="echoStructParam" type="s0:SOAPStruct"/>
                   <s:complexType name="SOAPStruct">
                        <s:sequence>
                             <s:element minOccurs="1" maxOccurs="1" name="varFloat" type="s:float"/>
                             <s:element minOccurs="1" maxOccurs="1" name="varInt" type="s:int"/>
                             <s:element minOccurs="0" maxOccurs="1" name="varString" type="s:string"/>
                        </s:sequence>
                   </s:complexType>
                   <s:element name="echoStructReturn" type="s0:SOAPStruct"/>
                   <s:element name="echoStringArrayParam" type="s1:ArrayOfString"/>
                   <s:element name="string" type="s:string"/>
                   <s:element name="echoStringArrayReturn" type="s1:ArrayOfString"/>
                   <s:element name="echoStringParam" type="s:string"/>
                   <s:element name="echoStringReturn" type="s:string"/>
              </s:schema>
              <s:schema elementFormDefault="qualified" targetNamespace="http://soapinterop.org">
                   <s:import namespace="http://soapinterop.org/xsd"/>
                   <s:complexType name="ArrayOfString">
                        <s:sequence>
                             <s:element minOccurs="0" maxOccurs="unbounded" ref="s0:string"/>
                        </s:sequence>
                   </s:complexType>
                   <s:element name="ArrayOfString1" nillable="true" type="s1:ArrayOfString1"/>
                   <s:complexType name="ArrayOfString1">
                        <s:sequence>
                             <s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string"/>
                        </s:sequence>
                   </s:complexType>
                   <s:element name="string" nillable="true" type="s:string"/>
              </s:schema>
              <s:schema targetNamespace="http://soapinterop.org/AbstractTypes">
                   <s:complexType name="StringArray">
                        <s:complexContent mixed="false">
                             <s:restriction base="soapenc:Array">
                                  <s:sequence>
                                       <s:element minOccurs="0" maxOccurs="unbounded" name="String" type="s:string"/>
                                  </s:sequence>
                             </s:restriction>
                        </s:complexContent>
                   </s:complexType>
              </s:schema>
         </types>
         <message name="echoStructSoapIn">
              <part name="echoStructParam" element="s0:echoStructParam"/>
         </message>
         <message name="echoStructSoapOut">
              <part name="echoStructResult" element="s0:echoStructReturn"/>
         </message>
         <message name="echoStringArraySoapIn">
              <part name="echoStringArrayParam" element="s0:echoStringArrayParam"/>
         </message>
         <message name="echoStringArraySoapOut">
              <part name="echoStringArrayResult" element="s0:echoStringArrayReturn"/>
         </message>
         <message name="echoStringSoapIn">
              <part name="echoStringParam" element="s0:echoStringParam"/>
         </message>
         <message name="echoStringSoapOut">
              <part name="echoStringResult" element="s0:echoStringReturn"/>
         </message>
         <portType name="WSDLInteropTestDocLitSoap">
              <operation name="echoStruct">
                   <input message="s1:echoStructSoapIn"/>
                   <output message="s1:echoStructSoapOut"/>
              </operation>
              <operation name="echoStringArray">
                   <input message="s1:echoStringArraySoapIn"/>
                   <output message="s1:echoStringArraySoapOut"/>
              </operation>
              <operation name="echoString">
                   <input message="s1:echoStringSoapIn"/>
                   <output message="s1:echoStringSoapOut"/>
              </operation>
         </portType>
         <binding name="WSDLInteropTestDocLitSoap" type="s1:WSDLInteropTestDocLitSoap">
              <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
              <operation name="echoStruct">
                   <soap:operation soapAction="http://soapinterop.org/" style="document"/>
                   <input>
                        <soap:body use="literal"/>
                   </input>
                   <output>
                        <soap:body use="literal"/>
                   </output>
              </operation>
              <operation name="echoStringArray">
                   <soap:operation soapAction="http://soapinterop.org/" style="document"/>
                   <input>
                        <soap:body use="literal"/>
                   </input>
                   <output>
                        <soap:body use="literal"/>
                   </output>
              </operation>
              <operation name="echoString">
                   <soap:operation soapAction="http://soapinterop.org/" style="document"/>
                   <input>
                        <soap:body use="literal"/>
                   </input>
                   <output>
                        <soap:body use="literal"/>
                   </output>
              </operation>
         </binding>
         <service name="WSDLInteropTestDocLit">
              <port name="WSDLInteropTestDocLitSoap" binding="s1:WSDLInteropTestDocLitSoap">
                   <soap:address location="http://mssoapinterop.org/asmx/wsdl/InteropTestDocLit.asmx"/>
              </port>
         </service>
    </definitions>

    Dev update: WSDL file seems fine. The problem is that it's for a document-bare service and, by default, the Unwrap Wrapped Parameters option on step 2 of the top-down wizard is enabled and checked. This means that we try to pick apart the input message into a series of parameters, yielding the error shown because a document-bare operation must have only one input parameter.
    If the Unwrap Wrapped Parameters option is unchecked, creation of the top-down service will succeed. In future, we ought to disable the option completely for everything but document-wrapped services, as that's the only time it applies.
    This is covered by bug 4630382.

  • Wsdl2service and document style

    Hello everybody.
    This is very urgent so any help will be really appreciated.
    I have a WSDL which uses document/literal style/encoding. I am running wsdl2service on it to generate java classes, and then proceeding successfully to generate and deploy a web service. The weblogic test page also works successfully.
    But when I look at the SOAP on-the-wire message, it is not document style SOAP compliant, for example, for the operation CreateNewAccount, that takes in the schema Customer.xsd, I get the following message :
    <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:m0="http://www.schema.com/Bank">
         <SOAP-ENV:Body>
              <m:CreateNewAccount xmlns:m="http://www.telcordia.com/TestWebServices/Bank.wsdl">
                   <m0:Name></m0:Name>
                   <m0:SSN></m0:SSN>
                   <m0:Balance>0</m0:Balance>
                   <m0:Address>
                        <m0:Number></m0:Number>
                        <m0:Street></m0:Street>
                        <m0:State></m0:State>
                        <m0:Zip></m0:Zip>
                   </m0:Address>
              </m:CreateNewAccount>
         </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    The way I understand, if this were document styled web-service, the operation name in above should be replaced by Customer.xsd root element name. (Pls see the attached WSDL).
    I tried the same WSDL with the Systinet server, and it produced a SOAP message that I was expecting.
    If I changed this WSDL to rpc mode, the CreateNewAccount node is followed by the Customer node, which is fine.
    So my question is, is this a WLS 81 SP2 bug, or am I doing something wrong or missing something?
    The WSDL :
    <?xml version="1.0" encoding="UTF-8"?>
    <definitions xmlns:tns="http://www.telcordia.com/TestWebServices/Bank.wsdl" xmlns:ws="http://www.telcordia.com/TestWebServices/Bank.wsdl" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:sch="http://www.schema.com/Bank" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://www.telcordia.com/TestWebServices/Bank.wsdl">
         <import namespace="http://www.schema.com/Bank" location="Customer.xsd"/>
         <import namespace="http://www.schema.com/Bank" location="Ack.xsd"/>
         <types>
              <xs:schema xmlns:tns="http://www.telcordia.com/TestWebServices/Bank.wsdl"/>
         </types>
         <message name="CreateNewAccountRequest">
              <part name="body" element="sch:Customer"/>
         </message>
         <message name="CreateNewAccountResponse">
              <part name="body" element="sch:Ack"/>
         </message>
         <portType name="CreateNewAccountPortType">
              <operation name="CreateNewAccount">
                   <input message="tns:CreateNewAccountRequest"/>
                   <output message="tns:CreateNewAccountResponse"/>
              </operation>
         </portType>
         <binding name="CreateNewAccountBinding" type="tns:CreateNewAccountPortType">
              <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
              <operation name="CreateNewAccount">
                   <input>
                        <soap:body parts="body" use="literal"/>
                   </input>
                   <output>
                        <soap:body parts="body" use="literal"/>
                   </output>
              </operation>
         </binding>
         <service name="AccountService">
              <port name="ws:CreateNewAccountPort" binding="tns:CreateNewAccountBinding">
                   <soap:address location="http://taste.mk.telcordia.com:45000/TWS/NewAccountRequest"/>
              </port>
         </service>
    </definitions>
    =======================================================
    The schemas :
    <?xml version="1.0" encoding="UTF-8"?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.schema.com/Bank" targetNamespace="http://www.schema.com/Bank" elementFormDefault="qualified">
         <xsd:element name="Customer">
              <xsd:complexType>
                   <xsd:all>
                        <xsd:element name="Name"/>
                        <xsd:element name="SSN"/>
                        <xsd:element name="Balance" type="xsd:integer"/>
                        <xsd:element name="Address">
                             <xsd:complexType>
                                  <xsd:all>
                                       <xsd:element name="Number"/>
                                       <xsd:element name="Street"/>
                                       <xsd:element name="State"/>
                                       <xsd:element name="Zip"/>
                                  </xsd:all>
                             </xsd:complexType>
                        </xsd:element>
                   </xsd:all>
              </xsd:complexType>
         </xsd:element>
    </xsd:schema>
    ++++++++++++++++++++++++++++++++++++++++++++++++++++++
    <?xml version="1.0" encoding="UTF-8"?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.schema.com/Bank" targetNamespace="http://www.schema.com/Bank" elementFormDefault="qualified" attributeFormDefault="unqualified">
         <xsd:element name="Ack">
              <xsd:complexType>
                   <xsd:all>
                        <xsd:element name="SSN"/>
                        <xsd:element name="AccountNumber"/>
                   </xsd:all>
              </xsd:complexType>
         </xsd:element>
    </xsd:schema>

    The generated web-services.xml from wsdl2service can have either style="rpc" or
    style="document". And in order to accomodate doc/lit operations that have multiple
    params you would need to edit the web-services.xml to have style="documentwrapped".
    Regards
    Shridhar
    Laxman Siyani <[email protected]> wrote:
    Hi,
    I have been using the autotype and wsdl2service ant tasks to generate
    firstly a complex data type from the .xsd, associated with a .WSDL.
    Then I use the wsdl2service to generate a Interface class which I implement.
    When I deploy this and try to use it from the test page in the Console,
    I get an error in the Weblogic.log:
    ERROR: Backend components for Document style webservice can only accept
    methods with one input parameter.
    Does anyone know how I can get wsdl2service to generate documentwrapped
    webservice.xml.
    Many thanks,
    Laxman

  • ORACLE PM - cannot handle attribute href - SOAP style encoded

    Hello !
    The problem is, can ORACLE Process Manager handle href attributes.
    I call a webservice with a BPEL-Process, the webservice replys a message, but the Process Manager cannot handle the message from the webservice.
    This is the reply message from the webservice, there are many href attributes inside:
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <soapenv:Body>
    <taskFinished soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <taskId href="#id0"/>
    <context href="#id1"/>
    </taskFinished>
    <multiRef id="id0" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns1:TaskId" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="http://itsas.de/leasit/workflow/angebot">
    <id href="#id2"/>
    </multiRef>
    <multiRef id="id1" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns2:ProcessContext" xmlns:ns2="http://itsas.de/leasit/workflow/angebot" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
    <map href="#id3"/>
    </multiRef>
    <multiRef id="id2" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="xsd:long" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">1181728963963</multiRef>
    <multiRef id="id3" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns3:Map" xmlns:ns3="http://itsas.de/leasit/workflow/angebot" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
    <item href="#id4"/>
    <item href="#id5"/>
    </multiRef>
    <multiRef id="id5" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns4:MapItem" xmlns:ns4="http://itsas.de/leasit/workflow/angebot" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
    <key xsi:type="xsd:string">angebotId</key>
    <value xsi:type="xsd:string">LA-0000-0102</value>
    </multiRef>
    <multiRef id="id4" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns5:MapItem" xmlns:ns5="http://itsas.de/leasit/workflow/angebot" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
    <key xsi:type="xsd:string">kundeId</key>
    <value xsi:type="xsd:string">C00002</value>
    </multiRef>
    </soapenv:Body>
    </soapenv:Envelope>
    I think the SOAP documentstyle from the webservices use rpc style and encoded, that is why the axis is change the normal XML structure to the structure above with links.
    But I think the ORACLE Process Manager can only handle SOAP style="document" and use="literal" ???????
    The fault message from ORACLE is:
    <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
    <env:Header/>
    <env:Body>
    <env:Fault xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
    <faultcode>env:Server</faultcode>
    <faultstring>java.lang.NullPointerException</faultstring>
    <faultactor></faultactor>
    </env:Fault>
    </env:Body></env:Envelope>
    Can anybody help me, please. Is ORACLE Process Manager able to unterstand SOAP style encoded ?!!!

    I have a bug logged against this issue, bug # is 5990259. However, the service I was calling is no longer available, so development can't reproduce it... If you gave them your example as well maybe they could progress this bug? Anyway BPEL does work with RPC/Encoded, it just doesn't like those multi refs. The company we were interacting with was using WebObjects, which was behaving exactly as in your example, and they changed an option on the web service to get rid of the multi refs and it worked (was still RPC/Encoded).

  • Differences between Document Style vs RPC style WS.

    Hello All,
    Can some body explain me the differences between a document style and rpc style webservices. Apart from JAX-RPC next version is JAX-WS, which supports document style and rpc, I also studied that document style webservices are meant for Asynchronous style of communication, where client would not block until the response is received.
    In either way of writing services using JAX-WS, I currently annotate the service with @Webservice, generage the WSDL and from that WSDL I generate the client side artifacts.
    Once the artifacts are received, in both styles of communication, I invoke the method on the port. Now, this does not differ in rpc style and document style. So what is the difference and where is that difference visible.
    Similarly, in what way SOAP over HTTP differ from XML over HTTP. After all SOAP is also XML document with SOAP namespace. So what is the differnce here.

    user13126996 wrote:
    Can some body explain me the differences between a document style and rpc style webservices. Apart from JAX-RPC next version is JAX-WS, which supports document style and rpc, I also studied that document style webservices are meant for Asynchronous style of communication, where client would not block until the response is received. no, asynchronous vs. synchronous responses have nothing to do with rpc style vs. document style. they are two orthogonal concepts.
    Once the artifacts are received, in both styles of communication, I invoke the method on the port. Now, this does not differ in rpc style and document style. So what is the difference and where is that difference visible.the difference is basically in how the data is encoded over the transport layer. in theory, you can encode some complex data structures more efficiently in the rpc style. in reality, no one ever uses these features. and since the document style is more strongly typed and much more "straightforward", most people tend to prefer the document style to the rpc style these days. (in fact, i don't think jaxws actually supports rpc style).
    Similarly, in what way SOAP over HTTP differ from XML over HTTP. After all SOAP is also XML document with SOAP namespace. So what is the differnce here. none really. SOAP over HTTP is XML over HTTP. XML over HTTP has no strong specification, whereas SOAP puts lots of specs around what the XML should look like. also, obviously, SOAP can theoretically be sent over other transport layers besides HTTP (not that i've ever seen that).

  • DII client for accessing a document style web service

    Hi All,
    I try to access a document style web service using DII JAX-RPC client and used the wscompile tool to produce wrapper classes .
    The following code I used for my work:
    import java.rmi.RemoteException;
    import javax.xml.namespace.QName;
    import javax.xml.rpc.Call;
    import javax.xml.rpc.Service;
    import javax.xml.rpc.ServiceFactory;
    import javax.xml.rpc.encoding.XMLType;
    import javax.xml.rpc.ParameterMode;
    import java.net.URL;
    import nutrient.*;
    public class NuDII{
    private static String endpoint =
    "http://www.strikeiron.com/webservices/usdadata.asmx?wsdl";
    private static String qnameService = "USDAData";
    private static String qnamePort = "USDADataSoap";
    private static String BODY_NAMESPACE_VALUE =
    "http://www.strikeiron.com/";
    private static String ENCODING_STYLE_PROPERTY =
    "javax.xml.rpc.encodingstyle.namespace.uri";
    private static String NS_XSD =
    "http://www.w3.org/2001/XMLSchema";
    private static String URI_ENCODING =
    "http://schemas.xmlsoap.org/soap/encoding/";
    private static String TYPE_NAMESPACE_VALUE =
    "http://www.strikeiron.com/";
    private static QName returnType = new QName(NS_XSD, "string");
    public static void main(String[] args) {
    try {
    ServiceFactory factory = ServiceFactory.newInstance();
    Service service = factory.createService(new QName(BODY_NAMESPACE_VALUE,qnameService));
    QName port = new QName(BODY_NAMESPACE_VALUE,qnamePort);
    QName operation = new QName(BODY_NAMESPACE_VALUE,"SearchFoodByDescription");
    Call call = service.createCall(port,operation);
    call.setTargetEndpointAddress(endpoint);
    call.setProperty(Call.SOAPACTION_USE_PROPERTY, new Boolean(true));
    call.setProperty(Call.SOAPACTION_URI_PROPERTY,"http://www.strikeiron.com/SearchFoodByDescription");
    call.setProperty(Call.ENCODINGSTYLE_URI_PROPERTY,"");
    call.setProperty(Call.OPERATION_STYLE_PROPERTY, "document");
    QName QNAME_TYPE_STRING = new QName(NS_XSD, "string");
    QName REQUEST_QNAME = new QName(TYPE_NAMESPACE_VALUE,"SearchFoodByDescription");
    QName RESPONSE_QNAME = new QName(TYPE_NAMESPACE_VALUE, "SearchFoodByDescriptionResponse");
    call.setReturnType(RESPONSE_QNAME, nutrient.SearchFoodByDescriptionResponse.class);
    //call.setReturnType(stringArray);
    call.setOperationName(new QName(BODY_NAMESPACE_VALUE,"SearchFoodByDescription"));
    call.addParameter("FoodKeywords", REQUEST_QNAME,nutrient.SearchFoodByDescription.class,ParameterMode.IN);
    call.addParameter("FoodGroupCode", REQUEST_QNAME, nutrient.SearchFoodByDescription.class,ParameterMode.IN);
    SearchFoodByDescription sfd = new SearchFoodByDescription("BabyFoods","1900");
    //Object[] params = new Object[2];
    //params[0]= new String("BabyFoods");
    //params[1]= new String("1900");try
    Object[] params = {sfd};
    Object result = call.invoke(params);
    System.out.println(result);
    } catch (Exception ex) {
    ex.printStackTrace();
    when I start to execute the client I got the following error:
    java.rmi.RemoteException: Server was unable to process request. --> Object refer
    ence not set to an instance of an object.
    at com.sun.xml.rpc.client.dii.BasicCall.invoke(BasicCall.java:462)
    at NuDII.main(NuDII.java:68)
    Shall any body assist me to solve problem.

    you may have a little better luck in the JNI forum.

  • Document Style web service in process - Please Help

    All,
    I have created a simple Document-oriented web service and deployed to a standalone OC4J container using the following code:
    ********************* Interface ***********************
    import org.w3c.dom.*;
    interface PrimeNumberService
    //method to check the primality of the number passed in Element variable
    public Element isPrime(Element e) ;
    ******************** Implementation *******************
    @version 1.0
    Development Environment : Oracle9i JDeveloper
    Name of the File : PrimeNumberServiceImpl.java
    Creation/Modification History :
    13-Apr-2002 Created
    Overview:
    This class file defines methods to implement PrimeNumberWebService.
    The method isPrime() is exposed by the Web Service.
    import org.w3c.dom.*;
    import oracle.xml.parser.v2.*;
    import java.io.*;
    public class PrimeNumberServiceImpl implements PrimeNumberService
    public PrimeNumberServiceImpl()
    * This method is exposed by the Web Service to check if the number is
    * prime. It extracts the number for input element and checks if it is
    * prime or not and return the output in the XML Element.
    * The input element is of the form <number>23</number>
    public Element isPrime(Element e)
    // define an XML Element that will be returned to the client
    Element processedEl=null;
    try{
    // get the first clild of input element
    Node enode = e.getFirstChild();
    //get the value of input element and parse it
    String value= enode.getNodeValue();
    double number = Double.parseDouble(value);
    String answer=null;
    // check if the input number is prime
    answer = checkPrime(number);
    // create element from the answer
    processedEl =createElement(answer);
    }catch(Exception ex){
    ex.printStackTrace();
    return null;
    // return output to client
    return processedEl;
    * This method creates an XML element from the input string values and return it
    * The Element is of the form <answer>value</answer>
    private Element createElement(String value){
    // create a Document object
    Document xmldoc = new XMLDocument();
    // create an element with name "answer"
    Element e1 = xmldoc.createElement("answer");
    // append the element to document object
    xmldoc.appendChild(e1);
    // create a Text object from input values and append it to above element
    Text t = xmldoc.createTextNode(value);
    e1.appendChild(t);
    return (Element)xmldoc.getFirstChild();
    * This method check if the input number is prime or not
    private String checkPrime(double num){
    //For a prime number mod(power(2,number),number) is equal to 2
    if ( Math.IEEEremainder( Math.pow(2.0,num) ,num)==2){
    System.out.println ("the number is: " + num);
    return "The number " + num + " is prime";}
    else{
    System.out.println ("the number is: " + num);
    return "The number " + num + " is not prime";}
    ************************ Generated WSDL ***************
    <?xml version="1.0" encoding="UTF-8"?>
    <definitions name="PrimeNumberService"
    targetNamespace="http://tempuri.org/PrimeNumberService.wsdl"
    xmlns="http://schemas.xmlsoap.org/wsdl/"
    xmlns:tns="http://tempuri.org/PrimeNumberService.wsdl"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" >
    <documentation>
    WSDL for Service: PrimeNumberService, generated by Oracle WSDL toolkit (version: 1.1)
    </documentation>
    <types>
    <schema targetNamespace="http://tempuri.org/PrimeNumberService.xsd" xmlns:tns="http://tempuri.org/PrimeNumberService.xsd" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:xsd="http://www.w3.org/2001/XMLSchema"/>
    </types>
    <message name="isPrimeOutput">
    <part name="return" element="xsd:any"/>
    </message>
    <message name="isPrimeInput">
    <part name="param0" element="xsd:any"/>
    </message>
    <portType name="PrimeNumberServicePortType">
    <operation name="isPrime">
    <input message="tns:isPrimeInput"/>
    <output message="tns:isPrimeOutput"/>
    </operation>
    </portType>
    <binding name="PrimeNumberServiceBinding" type="tns:PrimeNumberServicePortType">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc"/>
    <operation name="isPrime">
    <soap:operation soapAction="urn:PrimeNumberService/isPrime"/>
    <input>
    <soap:body use="literal" namespace="urn:PrimeNumberService"/>
    </input>
    <output>
    <soap:body use="literal" namespace="urn:PrimeNumberService"/>
    </output>
    </operation>
    </binding>
    <service name="PrimeNumberService">
    <port name="PrimeNumberServicePort" binding="tns:PrimeNumberServiceBinding">
    <soap:address location="http://hp-xeon-01:9799/primenumberws/primenumberService"/>
    </port>
    </service>
    </definitions>
    I get the following error when trying to deploy:
    Error:
    [Error ORABPEL-10902]: compilation failed
    [Description]: XML parsing failed because "undefined part element.
    In WSDL at "http://hp-xeon-01:9799/primenumberws/primenumberService?WSDL", message part element "{http://www.w3.org/2001/XMLSchema}any" is not defined in any of the schemas.
    Please make sure the spelling of the element QName is correct and the WSDL import is complete.
    [Potential fix]: n/a.
    Please let me know what I'm doing wrong.
    Regards,
    Jeff

    I think this thread is duplicate of "Document style web service receive and send org.w3c.Element" message thread.
    - Rakesh

Maybe you are looking for