JAX-RPC Document style WS

Is it possible to create a JAX-RPC document style web service that
returns an array of bytes ?
I have problems, but with jdeveloper 10.1.3 ´s tools.
With Axis I have NO problems.
Does anybody know why?
Sincerely
Jon Kepa Gerrikagoitia

Hello Mr. Grall,
I´m using jDeveloper 10.1.3 preview version.
I use bottom-up design so I rely on jDeveloper to do all the "dirty" job.
If I create a class that returns an array I cant create a document/Literal WS because jDev shows an error.
But If I choose document/wrapped it works !
Do tou know the reason of this ?
Sincerely,
Jon Kepa Gerrikagoitia.

Similar Messages

  • Rpc & document style WSDL

    Hi guys,
    I have WSDL which contains both " rpc " & " document" style soap operation.
    Can i used "rpc" style to call the webservice ? Does PI 7.0 supports the style="rpc" to call the webservice?
    Please suggest me on this.
    Thanks & regards
    Ashwin Kumar Dhakne

    Hi,
    please read question:
    Does the RPC or Document style in WSDL play a role in the SOAP adapter?
    from OSS note 856597 - FAQ: XI 3.0 / PI 7.0 / PI 7.1 SOAP Adapter
    Regards,
    Michal Krawczyk

  • ABAP WSDL: RPC & Document Style

    The Abap WSDL  Generated with RPC Style is working fine with SOAP tester. But the outgoing message in the TCPMonitor is not the same expected, when tried with XI Generated WSDL. This is a SOAP XI SOAP Scenario.
    It shows difference in the name spaces
    But When tried w, the ABAP WSDL is not working; but using the same created XI WSDL is working.
    Can anyone tell me what is the reason?

    No Replies??????

  • JAX-RPC screen does not appear when generating a WS proxy

    I'm using JDev 11.1.1.2. When I tried to generate a Web Service proxy, this screen does NOT appear most of the time. I only saw it appear one time. Do you know why?
    It's step 2 of the wizard.
    Client Style
    + JAX-RPC Web Logic Style
    + JAX-WS Style

    Whenever one tries to generate web service proxies for the first time, JDeveloper allows the user to choose the client style (JAX-RPC Web Logic Style OR JAX-WS Style).
    Once the option is selected, JDeveloper automatically adds the dependent jars in the classpath. When one tries to generate the proxies a second time,
    JDeveloper does not provide an option to select the client type. It defaults to the one which was selected for the first time.
    I was able to overcome the problem using the following approach.
    1. For JAX-RPC client style:
    Right Click the Model (or ViewController) project -> Project Properties -> Libraries and Classpath ->
    Add Library -> select JAX-RPC Web Logic Client, JAX-RPC 11 Web Services
    Remove JAX-WS Web Services library (if present)
    2. For JAX-WS client style:
    Right Click the Model (or ViewController) project -> Project Properties -> Libraries and Classpath ->
    Add Library -> JAX-WS Web Services
    Remove JAX-RPC related libraries (if present)
    I am using Jdeveloper Version 11.1.1.4.0
    - Pranab Garad

  • JAX RPC extension: Problem with document/literal and MyType[]

    Hi,
    I have installed the JAX RPC extension and want to generate a stub from my WSDL file. The WSDL describes a document/literal binding.
    Problem:
    A webservice server method like:
    public wineshop.model.common.SimpleProducer[] getSimpleProducerList() throws RemoteException;
    is translated into a stub method like:
    public UnknownType getSimpleProducerList() throws Exception {..}
    Is an array of own types with the binding style "document/literal" not supported in JAX RPC 1.4 or is it just a bug?
    The WSDL file is generated by JAX RPC 1.4.
    I have installed JWSDP-1.5 and generated a stub with wscompile from the WSDL file. The generated stub has the correct method return type:
    public wineshop.ws.client.SimpleProducer[] getSimpleProducerList()
    throws java.rmi.RemoteException
    It there a workaround like replacing some JDev JARs with JWSDP-1.5 to solve the problem?
    Any hints are welcome.
    Thanks Markus

    repost.....

  • 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).

  • One project with two different web services styles (JAX-RPC and JAX-WS)

    Hi theres,
    how come the same project doesn't support two different web services styles?
    First time I create a web service proxy using the wizard, the second step is to choose between JAX-RPC and JAX-WS. After that, this step is removed from the wizard and all subsquent web services are assumed to be the same style as the first one.
    Can someone explain me why?
    thanks in advance,
    Manuel Leiria

    Hi,
    yes, I think to remember that there is support for a single style only. If you need another one too then you create a new project.
    Frank

  • JAX-rpx document literal type web services

    I was trying to create a Document centric Web service. I followed all the steps in the document "Patterns and Designs for Building Document based Web Services" available at java.sun.com. I created the XSD's and WSDL files (top down approach). i used the following command of wscompile tool to generate the java source code.
    wscompile -import -d build/classes -keep -s build/src -model build/model.xml.gz
    to publich the web service on a server.
    When the tool generates the code, the parameters for the method are the elements of the schema, instead of being an object, specified in the WSDL.
    // This class was generated by the JAXRPC SI, do not edit.
    // Contents subject to change without notice.
    // JAX-RPC Standard Implementation (1.1.2_01, build R29)
    // Generated source version: 1.1.2
    package com.galaxyplus.tranentry.services;
    public interface IPurchaseOrder extends java.rmi.Remote {
        public com.galaxyplus.tranentry.services.PurchaseOrderStatus acceptPO(com.galaxyplus.tranentry.services.Address billTo, java.util.Calendar createDate, com.galaxyplus.tranentry.services.LineItem[] items, java.lang.String poID, com.galaxyplus.tranentry.services.Address shipTo) throws
             java.rmi.RemoteException;
    }It was supposed to be
    // This class was generated by the JAXRPC SI, do not edit.
    // Contents subject to change without notice.
    // JAX-RPC Standard Implementation (1.1_03, build R65)
    package com.examples.docliteral;
    public interface IPurchaseOrder extends java.rmi.Remote {
        public com.examples.docliteral.PurchaseOrderStatus
             acceptPO(com.examples.docliteral.PurchaseOrder parameters) throws
                 java.rmi.RemoteException;
    }Does any one have any inputs on this. I am using the same example as in the Document.
    Thanks

    More Information
    PurchaseOrder.xsd
    <?xml version="1.0" encoding="UTF-8"?>
    <!-- edited with XMLSpy v2005 sp1 U (http://www.xmlspy.com) by Dan Carnell (Fiserv) -->
    <schema xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:tns="uri:X" targetNamespace="uri:X">
         <element name="PurchaseOrderDocument" type="tns:PurchaseOrder"/>
         <complexType name="Address">
              <sequence>
                   <element name="street" type="string" nillable="false"/>
                   <element name="city" type="string" nillable="false"/>
                   <element name="state" type="string" nillable="false"/>
                   <element name="zipCode" type="string" nillable="false"/>
              </sequence>
         </complexType>
         <complexType name="LineItem">
              <sequence>
                   <element name="itemname" type="string" nillable="false"/>
                   <element name="price" type="decimal" nillable="false"/>
                   <element name="quantity" type="int" nillable="false"/>
              </sequence>
         </complexType>
         <complexType name="PurchaseOrder">
              <sequence>
                   <element name="billTo" type="tns:Address" nillable="false"/>
                   <element name="createDate" type="dateTime" nillable="false"/>
                   <element name="items" type="tns:LineItem" nillable="false" minOccurs="0" maxOccurs="unbounded"/>
                   <element name="poID" type="string" nillable="false"/>
                   <element name="shipTo" type="tns:Address" nillable="false"/>
              </sequence>
         </complexType>
    </schema>Status.xsd
    <?xml version="1.0" encoding="UTF-8"?>
    <schema xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:tns="uri:X" targetNamespace="uri:X">
         <element name="Status" type="tns:PurchaseOrderStatus"/>
         <complexType name="PurchaseOrderStatus">
              <sequence>
                   <element name="orderid" type="string" nillable="false"/>
                   <element name="timestamp" type="string" nillable="true"/>
              </sequence>
         </complexType>
    </schema>Abstract.wsdl
    <!-- edited with XMLSpy v2005 sp1 U (http://www.xmlspy.com) by Dan Carnell (Fiserv) -->
    <definitions xmlns:tns="urn:poservice" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:ns1="uri:X" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
    targetNamespace="urn:poservice" name="POService">
         <types>
              <xs:schema>
                   <xs:import namespace="uri:X" schemaLocation="PurchaseOrder.xsd"/>
                   <xs:import namespace="uri:X" schemaLocation="Status.xsd"/>
              </xs:schema>
         </types>
         <message name="IPurchaseOrder_acceptPO">
              <part name="parameters" element="ns1:PurchaseOrderDocument"/>
         </message>
         <message name="IPurchaseOrder_acceptPOResponse">
              <part name="result" element="ns1:Status"/>
         </message>
         <portType name="IPurchaseOrder">
              <operation name="acceptPO">
                   <input message="tns:IPurchaseOrder_acceptPO"/>
                   <output message="tns:IPurchaseOrder_acceptPOResponse"/>
              </operation>
         </portType>
    </definitions>poservice.wsdl
    <?xml version="1.0" encoding="UTF-8"?>
    <definitions xmlns:tns="urn:poservice"
    xmlns="http://schemas.xmlsoap.org/wsdl/"
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
    targetNamespace="urn:poservice" name="POService">
         <import namespace="urn:poservice" location="Abstract.wsdl"/>
         <binding name="IPurchaseOrderBinding" type="tns:IPurchaseOrder">
              <soap:binding style="document"
                             transport="http://schemas.xmlsoap.org/soap/http"/>
              <operation name="acceptPO">
                   <soap:operation/>
                   <input>
                        <soap:body use="literal"/>
                   </input>
                   <output>
                        <soap:body use="literal"/>
                   </output>
              </operation>
         </binding>
         <service name="POService">
            <port name="IPurchaseOrderPort" binding="tns:IPurchaseOrderBinding">
              <soap:address location="http://127.0.0.1:8080/docliteralfromjava/jaxrpc"/>
            </port>
         </service>
    </definitions>Thanks

  • Web service - document style

    Hi all,
    I need to create web service component which will accept SOAPMessages as request.
    Pls find my requirement below.
    1. I have to use document oriented style.
    2. I should not use apache ant script rather that i need to use weblogic ant script
    3. I should not use RPC call, i should use document oriented call.
    4. I have to use weblogic web service frame work, i should not use axis framework.
    Can any one pls help me on this? Pls provide me some sample programs.
    Thanks,
    Mani

    Hi, Mike. There is a newer version of 10.1.3 JDeveloper just made available for download.
    When you use that, you have a choice between the old J2EE 1.3 Web services, and new J2EE 1.4 JAX-RPC based Web services.
    With the latter you can select the message style (doc/wrapped - a version of doc/lit that interoperates well with .NET, doc/lit, rpc/lit, and rpc/enc), and complex Java objects should in general also be serialized automatically.
    (One caveat with this download: you tend to have better success if you blank out the field where it asks for the mapping file instead of accepting the default shown there.)
    Your point about not getting to the full wizard with a right click on the Java class is still valid (i.e. no change in the newest drop).
    Also, I believe your original issue where methods did not get published likely was due to overloading - in this case the Wizard grays out the method, but you can ask why it is not publishable.

  • Using DII in JAX-RPC

    I've been trying to connect (unsuccessfully so far) to a webservice using DII in JAX-RPC. Was able to connect to the said webservice successfully using static stubs. But our requirement is for dynamic invocation. Sorry if a topic like this has been posted already. I did search the forums but couldn't find the answer to my problem.
    The WSDL for the web service is as follows:
    <?xml version="1.0" encoding="utf-8"?>
    <definitions 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://secure.yehey.com/2003/01/PayPlus" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" targetNamespace="http://secure.yehey.com/2003/01/PayPlus" xmlns="http://schemas.xmlsoap.org/wsdl/">
    <types>
    <s:schema elementFormDefault="qualified" targetNamespace="http://secure.yehey.com/2003/01/PayPlus">
    <s:element name="Process">
    <s:complexType>
    <s:sequence>
    <s:element minOccurs="0" maxOccurs="1" name="inpData" type="s:string" />
    </s:sequence>
    </s:complexType>
    </s:element>
    <s:element name="ProcessResponse">
    <s:complexType>
    <s:sequence>
    <s:element minOccurs="0" maxOccurs="1" name="ProcessResult" type="s:string" />
    </s:sequence>
    </s:complexType>
    </s:element>
    <s:element name="GetStatus">
    <s:complexType>
    <s:sequence>
    <s:element minOccurs="0" maxOccurs="1" name="inxml" type="s:string" />
    </s:sequence>
    </s:complexType>
    </s:element>
    <s:element name="GetStatusResponse">
    <s:complexType>
    <s:sequence>
    <s:element minOccurs="0" maxOccurs="1" name="GetStatusResult" type="s:string" />
    </s:sequence>
    </s:complexType>
    </s:element>
    <s:element name="GetRedirectURL">
    <s:complexType>
    <s:sequence>
    <s:element minOccurs="0" maxOccurs="1" name="inpURL" type="s:string" />
    </s:sequence>
    </s:complexType>
    </s:element>
    <s:element name="GetRedirectURLResponse">
    <s:complexType>
    <s:sequence>
    <s:element minOccurs="0" maxOccurs="1" name="GetRedirectURLResult" type="s:string" />
    </s:sequence>
    </s:complexType>
    </s:element>
    <s:element name="string" nillable="true" type="s:string" />
    </s:schema>
    </types>
    <message name="ProcessSoapIn">
    <part name="parameters" element="s0:Process" />
    </message>
    <message name="ProcessSoapOut">
    <part name="parameters" element="s0:ProcessResponse" />
    </message>
    <message name="GetStatusSoapIn">
    <part name="parameters" element="s0:GetStatus" />
    </message>
    <message name="GetStatusSoapOut">
    <part name="parameters" element="s0:GetStatusResponse" />
    </message>
    <message name="GetRedirectURLSoapIn">
    <part name="parameters" element="s0:GetRedirectURL" />
    </message>
    <message name="GetRedirectURLSoapOut">
    <part name="parameters" element="s0:GetRedirectURLResponse" />
    </message>
    <message name="ProcessHttpGetIn">
    <part name="inpData" type="s:string" />
    </message>
    <message name="ProcessHttpGetOut">
    <part name="Body" element="s0:string" />
    </message>
    <message name="GetStatusHttpGetIn">
    <part name="inxml" type="s:string" />
    </message>
    <message name="GetStatusHttpGetOut">
    <part name="Body" element="s0:string" />
    </message>
    <message name="GetRedirectURLHttpGetIn">
    <part name="inpURL" type="s:string" />
    </message>
    <message name="GetRedirectURLHttpGetOut">
    <part name="Body" element="s0:string" />
    </message>
    <message name="ProcessHttpPostIn">
    <part name="inpData" type="s:string" />
    </message>
    <message name="ProcessHttpPostOut">
    <part name="Body" element="s0:string" />
    </message>
    <message name="GetStatusHttpPostIn">
    <part name="inxml" type="s:string" />
    </message>
    <message name="GetStatusHttpPostOut">
    <part name="Body" element="s0:string" />
    </message>
    <message name="GetRedirectURLHttpPostIn">
    <part name="inpURL" type="s:string" />
    </message>
    <message name="GetRedirectURLHttpPostOut">
    <part name="Body" element="s0:string" />
    </message>
    <portType name="PayplusSoap">
    <operation name="Process">
    <input message="s0:ProcessSoapIn" />
    <output message="s0:ProcessSoapOut" />
    </operation>
    <operation name="GetStatus">
    <input message="s0:GetStatusSoapIn" />
    <output message="s0:GetStatusSoapOut" />
    </operation>
    <operation name="GetRedirectURL">
    <input message="s0:GetRedirectURLSoapIn" />
    <output message="s0:GetRedirectURLSoapOut" />
    </operation>
    </portType>
    <portType name="PayplusHttpGet">
    <operation name="Process">
    <input message="s0:ProcessHttpGetIn" />
    <output message="s0:ProcessHttpGetOut" />
    </operation>
    <operation name="GetStatus">
    <input message="s0:GetStatusHttpGetIn" />
    <output message="s0:GetStatusHttpGetOut" />
    </operation>
    <operation name="GetRedirectURL">
    <input message="s0:GetRedirectURLHttpGetIn" />
    <output message="s0:GetRedirectURLHttpGetOut" />
    </operation>
    </portType>
    <portType name="PayplusHttpPost">
    <operation name="Process">
    <input message="s0:ProcessHttpPostIn" />
    <output message="s0:ProcessHttpPostOut" />
    </operation>
    <operation name="GetStatus">
    <input message="s0:GetStatusHttpPostIn" />
    <output message="s0:GetStatusHttpPostOut" />
    </operation>
    <operation name="GetRedirectURL">
    <input message="s0:GetRedirectURLHttpPostIn" />
    <output message="s0:GetRedirectURLHttpPostOut" />
    </operation>
    </portType>
    <binding name="PayplusSoap" type="s0:PayplusSoap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
    <operation name="Process">
    <soap:operation soapAction="http://secure.yehey.com/2003/01/PayPlus/Process" style="document" />
    <input>
    <soap:body use="literal" />
    </input>
    <output>
    <soap:body use="literal" />
    </output>
    </operation>
    <operation name="GetStatus">
    <soap:operation soapAction="http://secure.yehey.com/2003/01/PayPlus/GetStatus" style="document" />
    <input>
    <soap:body use="literal" />
    </input>
    <output>
    <soap:body use="literal" />
    </output>
    </operation>
    <operation name="GetRedirectURL">
    <soap:operation soapAction="http://secure.yehey.com/2003/01/PayPlus/GetRedirectURL" style="document" />
    <input>
    <soap:body use="literal" />
    </input>
    <output>
    <soap:body use="literal" />
    </output>
    </operation>
    </binding>
    <binding name="PayplusHttpGet" type="s0:PayplusHttpGet">
    <http:binding verb="GET" />
    <operation name="Process">
    <http:operation location="/Process" />
    <input>
    <http:urlEncoded />
    </input>
    <output>
    <mime:mimeXml part="Body" />
    </output>
    </operation>
    <operation name="GetStatus">
    <http:operation location="/GetStatus" />
    <input>
    <http:urlEncoded />
    </input>
    <output>
    <mime:mimeXml part="Body" />
    </output>
    </operation>
    <operation name="GetRedirectURL">
    <http:operation location="/GetRedirectURL" />
    <input>
    <http:urlEncoded />
    </input>
    <output>
    <mime:mimeXml part="Body" />
    </output>
    </operation>
    </binding>
    <binding name="PayplusHttpPost" type="s0:PayplusHttpPost">
    <http:binding verb="POST" />
    <operation name="Process">
    <http:operation location="/Process" />
    <input>
    <mime:content type="application/x-www-form-urlencoded" />
    </input>
    <output>
    <mime:mimeXml part="Body" />
    </output>
    </operation>
    <operation name="GetStatus">
    <http:operation location="/GetStatus" />
    <input>
    <mime:content type="application/x-www-form-urlencoded" />
    </input>
    <output>
    <mime:mimeXml part="Body" />
    </output>
    </operation>
    <operation name="GetRedirectURL">
    <http:operation location="/GetRedirectURL" />
    <input>
    <mime:content type="application/x-www-form-urlencoded" />
    </input>
    <output>
    <mime:mimeXml part="Body" />
    </output>
    </operation>
    </binding>
    <service name="Payplus">
    <port name="PayplusSoap" binding="s0:PayplusSoap">
    <soap:address location="https://secured.teamyehey.com/payplus/services/payplus.asmx" />
    </port>
    <port name="PayplusHttpGet" binding="s0:PayplusHttpGet">
    <http:address location="https://secured.teamyehey.com/payplus/services/payplus.asmx" />
    </port>
    <port name="PayplusHttpPost" binding="s0:PayplusHttpPost">
    <http:address location="https://secured.teamyehey.com/payplus/services/payplus.asmx" />
    </port>
    </service>
    </definitions>
    My code to access the above webservice (for Process method) is as follows (which is almost an exact copy from the sample code in JWSDP tutorial) :
    String qnameService = "Payplus";
    String qnamePort = "PayplusSoap";
    String BODY_NAMESPACE_VALUE = "http://secure.yehey.com/2003/01/PayPlus";
    String ENCODING_STYLE_PROPERTY = "javax.xml.rpc.encodingstyle.namespace.uri";
    String NS_XSD = "http://www.w3.org/2001/XMLSchema";
    String URI_ENCODING = "http://schemas.xmlsoap.org/soap/encoding/";
    ServiceFactory factory = ServiceFactory.newInstance();
    Service service = factory.createService(new QName(qnameService));
    QName port = new QName(qnamePort);
    Call call = service.createCall(port);
    call.setTargetEndpointAddress(urlstring);
    call.setProperty(Call.SOAPACTION_USE_PROPERTY, new Boolean(true));
    call.setProperty(Call.SOAPACTION_URI_PROPERTY, "http://secure.yehey.com/2003/01/PayPlus/Process");
    call.setProperty(ENCODING_STYLE_PROPERTY, URI_ENCODING);
    QName QNAME_TYPE_STRING = new QName(NS_XSD, "string");
    call.setReturnType(QNAME_TYPE_STRING);
    call.setOperationName(new QName(BODY_NAMESPACE_VALUE, "Process"));
    call.addParameter("inpData", QNAME_TYPE_STRING, ParameterMode.IN);
    String[] params = { getProcessString() }; // getProcessString here returns the parameter required
    String result = (String)call.invoke(params);
    System.out.println(result);
    The error that I keep on getting is this:
    java.rmi.RemoteException: System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> System.ArgumentNullException: Value cannot be null.
    Parameter name: s
    at System.IO.StringReader..ctor(String s)
    at Payplus.Payplus.Process(String inpData)
    Any help would be greatly appreciated. Thanks!

    Are you using the JAXRPC implementation from java.sun.com
    for your client invocations? IThis may be an implementation problem
    and if you are not using the sun implementation, then I can not explain
    the exception-
    kathy

  • Incorrect faultstring for checked exception from JAX-RPC Sun App server 8.1

    I am trying to throw a checked exception in a web service. The checked exception object has a constructor that takes a single custom bean java class argument. It also has a get/setter for that argument .
    Here's the exception class:
    package com.innovativ.esp.websvc;
    public class ValidationException extends Exception implements java.io.Serializable{
    private Test test;
    public ValidationException(Test test) {
    super("from testb set ");
    this.test = test;
    public Test getTest() {
    return this.test;
    public void setTest(Test test) {
    this.test = test;
    The SAOP message for fault is shown as below:
    <env:Envelope xmlns: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:enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns0="urn:Service/types">
    <env:Body>
    <env:Fault xsi:type="env:Fault">
    <faultcode>env:Server</faultcode>
    <faultstring>com.innovativ.esp.websvc.ValidationException</faultstring>
    <detail><ns0:ValidationException><message>from testb set </message></ns0:ValidationException>
    </detail>
    </env:Fault>
    </env:Body>
    </env:Envelope>
    The server side JAX-RPC is not sending the "Test" object in the detail part...
    Any idea why it's not including the "Test" in message.
    Thank you for any help....

    Here's the WSDL for the service :
    <?xml version="1.0" encoding="UTF-8"?><definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="urn:Service/wsdl" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:ns2="urn:Service/types" name="Service" targetNamespace="urn:Service/wsdl">
    <types>
    <schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:tns="urn:Service/types" xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" targetNamespace="urn:Service/types">
    <complexType name="sayHelloResponse">
    <sequence>
    <element name="result" type="string" nillable="true"/></sequence></complexType>
    <complexType name="ValidationException">
    <sequence>
    <element name="test" type="tns:Test" nillable="true"/></sequence></complexType>
    <complexType name="Test">
    <sequence>
    <element name="prop" type="string" nillable="true"/></sequence></complexType>
    <element name="sayHello" type="tns:sayHello"/>
    <element name="sayHelloResponse" type="tns:sayHelloResponse"/>
    <element name="ValidationException" type="tns:ValidationException"/></schema></types>
    <message name="IFServiceWS_sayHello">
    <part name="parameters" element="ns2:sayHello"/></message>
    <message name="IFServiceWS_sayHelloResponse">
    <part name="result" element="ns2:sayHelloResponse"/></message>
    <message name="ValidationException">
    <part name="ValidationException" element="ns2:ValidationException"/></message>
    <portType name="IFServiceWS">
    <operation name="sayHello">
    <input message="tns:IFServiceWS_sayHello"/>
    <output message="tns:IFServiceWS_sayHelloResponse"/>
    <fault name="ValidationException" message="tns:ValidationException"/></operation></portType>
    <binding name="IFServiceWSBinding" type="tns:IFServiceWS">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
    <operation name="sayHello">
    <soap:operation soapAction=""/>
    <input>
    <soap:body use="literal"/></input>
    <output>
    <soap:body use="literal"/></output>
    <fault name="ValidationException">
    <soap:fault name="ValidationException" use="literal"/></fault></operation></binding>
    <service name="Service">
    <port name="IFServiceWSPort" binding="tns:IFServiceWSBinding">
    <soap:address location="http://localhost:5050/ESP/Service" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"/></port></service>
    </definitions>

  • 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.

  • JAX-RPC vs OC4J J2Ee web service

    Hi,
    Currently we use Oracle10G 10.0.3 developer preview edition. we deployed same web service on both JAX-RPC platfrom and OC4J J2EE web service platfrom (RPC encoding style). We found that old platform seems to perform better than JAx-RPC platfrom with regard to serialization and de-serialzation. We also did the test on Doc/literal style in JAX-RPC platfrom and its performance is not as good as the one deployed on old platform. We understand JAX-RPC is new implementation and Oracle10.0.3 is under developer preview edition and so it may not be optimized. We have following questions
    1. Is this a known issue in JAX-RPC platform?
    2. Is there anyway to optimize JAX-RPC web service? Like using different XMl parser (instead of Oracle XML parser)
    3. When is the final release of 10.0.3 expected?
    4. Will Oracle be supporting old web service platfrom (OC4J J2EE web service platform)? If so how long?
    Thanks and regards
    __Hari

    Hi,
    Currently we use Oracle10G 10.0.3 developer preview edition. we deployed same web service on both JAX-RPC platfrom and OC4J J2EE web service platfrom (RPC encoding style). We found that old platform seems to perform better than JAx-RPC platfrom with regard to serialization and de-serialzation. We also did the test on Doc/literal style in JAX-RPC platfrom and its performance is not as good as the one deployed on old platform. We understand JAX-RPC is new implementation and Oracle10.0.3 is under developer preview edition and so it may not be optimized. We have following questions
    1. Is this a known issue in JAX-RPC platform?
    2. Is there anyway to optimize JAX-RPC web service? Like using different XMl parser (instead of Oracle XML parser)
    3. When is the final release of 10.0.3 expected?
    4. Will Oracle be supporting old web service platfrom (OC4J J2EE web service platform)? If so how long?
    Thanks and regards
    __Hari

  • How to handle rpc/encoded style messages using BizTalk?

    I am integrating with a lot of services and one of our customers has a service with rpc/encoded style
    I could consume and generate schema from their wsdl file via BizTalk consume WCF wizard.
    Once I am trying to call the service with request message that generated from the schema, it is giving an error that can not desterilize the first element of the message. 
    No Deserializer found to deserialize a 'FieldName' using encoding style 'null'
    I compared the stub xml request message from SaopUI and I noticed that the xml expecting the data type with the element like this .
    <soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsb="WSBanka">
    <soapenv:Header/>
    <soapenv:Body>
    <wsb:bnkBorcsorgulama soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <sozlesmeNo xsi:type="xsd:string">?</sozlesmeNo>
    <bankaKodu xsi:type="xsd:string">?</bankaKodu>
    <anahtar xsi:type="xsd:string">?</anahtar>
    </wsb:bnkBorcsorgulama>
    </soapenv:Body>
    </soapenv:Envelope>
    On the other hand, I got the request of the message from Fiddler using the BizTalk , and the generate xml of the BizTalk schema without the data type.
    <soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsb="WSBanka">
    <soapenv:Header/>
    <soapenv:Body>
    <wsb:bnkBorcsorgulama>
    <sozlesmeNo>?</sozlesmeNo>
    <bankaKodu>?</bankaKodu>
    <anahtar>?</anahtar>
    </wsb:bnkBorcsorgulama>
    </soapenv:Body>
    </soapenv:Envelope>
    In SoapUi, if I remove a datatype from the message, I will get same error from the BizTalk request.
    I read some articles that rpc/encoded style are not supported but I am not sure and these articles are not clear.
    I also read that it was supported with Soap adapter but now it is deprecated.
    So, Is there any one has an experience in rpc/encoded style messages and how to handle these message in BizTalk or is there any work around to handle these messages?
    Your inputs really appreciate it.
    Thanks in advance,
    When you see answers and helpful posts, please click Vote As Helpful, Propose As Answer, and/or Mark As Answer

    Hi,
    Please refer to the document which might help you:
    #RPC/Encoded Style
    http://www.c-sharpcorner.com/UploadFile/martinkropp/DesigningInteroperableWebService11232005044847AM/DesigningInteroperableWebService.aspx

  • Calling One Jax RPC Web Service from another in Oracle AS 10.1.3

    We have a number of services residing in the same Oracle 10.1.3 app server container. These are deployed as Jax RPC Web Services
    I am trying to figure out what are the different options to have once web service invoke an operation on another (without directly linking to the Java code). The reason we want to keep separation as far as possible is that these services may later migrate to different app servers and in the spirit of SOA all we want to change when a service migrates is address and would like everything else to remain the same.
    So for example, if Web Service A needs to invoke an operation X in web service B,
    One way to do this seems to be to generate a proxy for web service B, include the proxy in Web Service A and then simply do B.X() from Web Service A.
    Is this is the best way to do it ?
    Are there other alternative approaches available ? Such as using the built in ESB features of Oracle App Server 10.1.3?
    Any pointers will be greatly appreciated.
    Thanks
    RR

    Found document of 10.1.3.1.0 how to Creating a Custom Identity Service Plug-in
    Oracle® BPEL Process Manager Administrator's Guide
    10g (10.1.3.1.0)
    Part Number B28982-03
    http://download-west.oracle.com/docs/cd/B31017_01/integrate.1013/b28982/plugin.htm
    But may be no help.

Maybe you are looking for

  • ConfigTool.bat  dosen't run

    Hi @all, My Java engine has stopped.I am also not able to run the configtool.bat...below is the error that i get. Error occurred during initialization of VM java/lang/NoClassDefFoundError: java/lang/Object Program terminated abnormally Press any key

  • 3110c - "Certificate is not present" when trying t...

    I can log in to gmail via http://mail.google.com. Here I am presented with a certificate that I accept and can then proceed to read/write emails in my inbox. I cannot log in via the gmail application or E-mail (in the Messaging menu) application. Bot

  • Url monitor issue

    Hi, I have a problem with url monitors in sitescope 11.12.I have a lot of monitors, but from time to time url monitors go to error status and send email... a lot of emails because of lot of monitors. When I go to details of each monitor I can see tha

  • [Formatter2] XExpression in a single line only

    Hi, My language is derived from XBase and and its formatter is thus derived from XBase formatter. The only difference is that I want XBase expressions to hold on a single line and remove the support of multiline. Overriding all the methods from the X

  • Installing creative cloud from USB

    I have downloaded Dreamweaver, Photoshop, Fireworks, Edge and created the msi, i have transfered all files onto USB so i can install on multiple PC; however when i run setup i get, Please wait while Windows configures AppDev.  the download screen the