Axis client

i'm trying to build a soap webservice client with axis. i know how to generate a simple soapmessage by     
call.addParameter("param1", XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter("param2", XMLType.XSD_STRING, ParameterMode.IN);
Object params[] = new Object[2];        
params[0]=(Object)param1;
params[1]=(Object)param2;
call.invoke(params);     which generates:
<soapenv:Body>
  <ns1:meth1 soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
       xmlns:ns1="urn:method">
   <param1 xsi:type="xsd:String">xyz</param1>
   <param2 xsi:type="xsd:String">abc</param1>
  </ns1:meth1>
</soapenv:Body>but how can i generate soap messages with complex parameters like this:
<soapenv:Body>
  <M:meth1 soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
       xmlns:ns1="urn:method">
   <param1>
     <n1>a</n1>
     <n2>b</n2>
   </param1>
  </M:meth1>
</soapenv:Body>thx for any help!

New INFO:
I tested the webapp in Tomcat (6).
The webservice is being called successfully. Doese anyone know how to overcome the differences?
Regards,
Romano

Similar Messages

  • Problem calling BPEL process using apache axis client

    We have a BPEL process which we are trying to call from apache axis client. The problem is when we execute "call.invoke(new Object[] { xmlStr }) ", it adds an "argo" element to the message, and the xpath is unable to evaluate the message.
    We are able to call the process fron .Net and VB 6 using soap toolkit without any problem, so it seems odd we are not able to do so from apache axis.
    Here is how it should be received by the BPEL process:
    <inputVariable>
         <part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="payload">
              <Request xmlns="http://e1.oracle.com/IAM">
                   <MessageHeader>
                        <Operation>update</Operation>
                   </MessageHeader>
                   <MessageDetail xmlns="">
                        <szSecondaryUoM_UOM2/>
                   </MessageDetail>
              </Request>
         </part>
    </inputVariable>
    But this is the way it is received having been sent from apache axis (notice the arg0 element) :
    <inputVariable>
         <part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="payload">
              <arg0 xsi:type="xsd:string" xmlns="http://xmlns.oracle.com/InventoryAdjustment" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                   <Request xmlns="http://e1.oracle.com/IAM">
                        <MessageHeader>
                             <Operation>update</Operation>
                        </MessageHeader>
                        <MessageDetail xmlns="">
                             <szSecondaryUoM_UOM2/>
                        </MessageDetail>
                   </Request>
              </arg0>
         </part>
    </inputVariable>
    Any insight as to how to approach this would be appreciated. The WSDL and java code follow.
    WSDL:
    <?xml version="1.0" encoding="UTF8" ?>
    <definitions name="InventoryAdjustment" targetNamespace="http://xmlns.oracle.com/InventoryAdjustment" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://xmlns.oracle.com/InventoryAdjustment" xmlns:ns1="http://e1.oracle.com/IAM" xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partnerlink/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns2="http://schemas.oracle.com/bpel/extension" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:client="http://xmlns.oracle.com/InventoryAdjustment">
    <types>
    <schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://xmlns.oracle.com/InventoryAdjustment" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:ns1="http://e1.oracle.com/IAM" xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partnerlink/" xmlns:client="http://xmlns.oracle.com/InventoryAdjustment" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns2="http://schemas.oracle.com/bpel/extension">
    <element name="InventoryAdjustmentProcessRequest">
    <complexType>
    <sequence>
    <element name="input" type="string" />
    </sequence>
    </complexType>
    </element>
    <element name="InventoryAdjustmentProcessResponse">
    <complexType>
    <sequence>
    <element name="result" type="string" />
    </sequence>
    </complexType>
    </element>
    </schema>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns1="http://e1.oracle.com/IAM" xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partnerlink/" xmlns:client="http://xmlns.oracle.com/InventoryAdjustment" xmlns:ns2="http://schemas.oracle.com/bpel/extension">
    <xsd:import namespace="http://e1.oracle.com/IAM" schemaLocation="http://tigger:7777/orabpel/xmllib/InventoryAdjustmentRequest.xsd" />
    </xsd:schema>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns1="http://e1.oracle.com/IAM" xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partnerlink/" xmlns:client="http://xmlns.oracle.com/InventoryAdjustment" xmlns:ns2="http://schemas.oracle.com/bpel/extension">
    <xsd:import namespace="http://e1.oracle.com/IAM" schemaLocation="http://tigger:7777/orabpel/xmllib/InventoryAdjustmentResponse.xsd" />
    </xsd:schema>
    </types>
    <message name="InventoryAdjustmentRequestMessage">
    <part name="payload" element="ns1:Request" />
    </message>
    <message name="InventoryAdjustmentResponseMessage">
    <part name="payload" element="ns1:Response" />
    </message>
    <portType name="InventoryAdjustment">
    <operation name="process">
    <input message="tns:InventoryAdjustmentRequestMessage" />
    <output message="tns:InventoryAdjustmentResponseMessage" />
    </operation>
    </portType>
    <binding name="InventoryAdjustmentBinding" type="tns:InventoryAdjustment">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
    <operation name="process">
    <soap:operation style="document" soapAction="process" />
    <input>
    <soap:body use="literal" />
    </input>
    <output>
    <soap:body use="literal" />
    </output>
    </operation>
    </binding>
    <service name="InventoryAdjustment">
    <port name="InventoryAdjustmentPort" binding="tns:InventoryAdjustmentBinding">
    <soap:address location="http://tigger:7777/orabpel/default/InventoryAdjustment/1.0" />
    </port>
    </service>
    <plnk:partnerLinkType name="InventoryAdjustment">
    <plnk:role name="InventoryAdjustmentProvider">
    <plnk:portType name="tns:InventoryAdjustment" />
    </plnk:role>
    </plnk:partnerLinkType>
    </definitions>
    java code:
    import javax.xml.namespace.QName;
    import javax.xml.rpc.JAXRPCException;
    import javax.xml.rpc.ParameterMode;
    import javax.xml.rpc.Service;
    import javax.xml.rpc.ServiceException;
    import javax.xml.rpc.ServiceFactory;
    import javax.xml.rpc.encoding.XMLType;
    import javax.xml.rpc.soap.SOAPFaultException;
    import org.apache.axis.client.Call;
    public class PostMessageClient {
         private static QName SERVICE_NAME;
         private static QName PORT_TYPE;
         private static QName OPERATION_NAME;
         private static String SOAP_ACTION;
         private static String STYLE;
         private static String THIS_NAMESPACE = "http://xmlns.oracle.com/InventoryAdjustment";
         static {
              SERVICE_NAME = new QName(THIS_NAMESPACE, "InventoryAdjustment");
              PORT_TYPE = new QName(THIS_NAMESPACE, "InventoryAdjustmentPort");
              OPERATION_NAME = new QName(THIS_NAMESPACE, "process");
              SOAP_ACTION = "process";
              STYLE = "message";
         public static void main(String[] args) {
                   try {
                        ServiceFactory serviceFactory = ServiceFactory.newInstance();
                        Service service = serviceFactory.createService(SERVICE_NAME);
                        Call call = (Call) service.createCall(PORT_TYPE);
                        call
                                  .setTargetEndpointAddress("http://tigger:7777/orabpel/default/InventoryAdjustment/1.0");
                        call.setProperty(Call.SOAPACTION_USE_PROPERTY, Boolean.TRUE);
                        call.setProperty(Call.SOAPACTION_URI_PROPERTY, SOAP_ACTION);
                        call.setProperty(Call.OPERATION_STYLE_PROPERTY, STYLE);
                        call.setOperationName(OPERATION_NAME);
                        String xmlStr = "<Request xmlns=\"http://e1.oracle.com/IAM\"><MessageHeader><Operation>update</Operation></MessageHeader><MessageDetail xmlns=\"\"><szSecondaryUoM_UOM2/></MessageDetail></Request>";
                        System.out.println("PostMessageClient - calling");
                        String ret = (String) call.invoke(new Object[] { xmlStr });
                        System.out.println("ret = " + ret);
                   } catch (SOAPFaultException e) {
                        System.err.println("Generated fault: ");
                        System.out.println(" Fault Code = " + e.getFaultCode());
                        System.out.println(" Fault String = " + e.getFaultString());
                   } catch (JAXRPCException e) {
                        System.err.println("JAXRPC Exception: " + e.getMessage());
                   } catch (ServiceException e) {
                        System.err.println("Service Exception: " + e.getMessage());
                   } catch (Exception e) {
                        System.err.println("Service Exception: " + e.getMessage());
    }

    Just a tip: Use a tool as SoapUI to findout the correct SOAP request and related attributes for the SOAP request.
    Marc
    http://orasoa.blogspot.com

  • Unable to get callback from Asynchronous BPEL process to work (AXIS Client)

    Hello,
    I am calling an Asynchronous BPEL process from an AXIS client, and I am unable to get the callback functionality to work. The AXIS client code has been generated from WSDL2Java using the BPEL process' WSDL file.
    I CAN insert an invoke node in the BPEL process and invoke my Callback web service using that, but obviously that means the BPEL process is limited to only responding to one pre-determined client, which won't work.
    My questions:
    - How does the BPEL process know what endpoint to use to make the callback?
    - Do I need to modify the generated code to create a SOAP Envelope and invoke the process with the envelope, intead of the invokeOneWay call?
    - If I do need to create a SOAP Envelope with a replyto element, what is the structure of a typical BPEL envelope? Is there an example somewhere?
    I have looked at the examples in the interop directory, specifically the AXIS calling Async BPEL, but I would like to try to keep the client code as independent as possible (I don't really want to have a dependency on the OTN library).
    Any help would be greatly appreciated!!
    Thank you.
    -Ryan

    Please have a look at the Binding in the WSDL. Axis must provide the ReplyTo and
    MessageId information there. As far as I see, this must be done by an Axis-Handler,
    because the Binding-Part in not generated by WSDL2Java.
    I was able to generate the JavaClasses by using the "WSDL2Java -a" option, but
    I still do not see how to use them in a handler and how to register the handler.
    Maybe someone can give me a hint.

  • Error invoking bpel process using axis client

    When I am trying to invoke bpel process using axis client I'am having following error:
    AxisFault
    faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
    faultSubcode:
    faultString: org.xml.sax.SAXException: Bad envelope tag: html
    faultActor:
    faultNode:
    faultDetail:
         {http://xml.apache.org/axis/}stackTrace: org.xml.sax.SAXException: Bad envelope tag: html
         at org.apache.axis.message.EnvelopeBuilder.startElement(EnvelopeBuilder.java:109)
         at org.apache.axis.encoding.DeserializationContextImpl.startElement(DeserializationContextImpl.java:976)
         at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
         at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
         at org.apache.xerces.impl.XMLNSDocumentScannerImpl$NSContentDispatcher.scanRootElementHook(Unknown Source)
         at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
         at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
         at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
         at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
         at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
         at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
         at javax.xml.parsers.SAXParser.parse(SAXParser.java:345)
         at org.apache.axis.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:242)
         at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:538)
         at org.apache.axis.Message.getSOAPEnvelope(Message.java:376)
         at org.apache.axis.client.Call.invokeEngine(Call.java:2583)
         at org.apache.axis.client.Call.invoke(Call.java:2553)
         at org.apache.axis.client.Call.invoke(Call.java:1753)
         at com.oracle.sample.ws.ArrayClient.main(ArrayClient.java:44)
    org.xml.sax.SAXException: Bad envelope tag: html
         at org.apache.axis.AxisFault.makeFault(AxisFault.java:129)
         at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:543)
         at org.apache.axis.Message.getSOAPEnvelope(Message.java:376)
         at org.apache.axis.client.Call.invokeEngine(Call.java:2583)
         at org.apache.axis.client.Call.invoke(Call.java:2553)
         at org.apache.axis.client.Call.invoke(Call.java:1753)
         at com.oracle.sample.ws.ArrayClient.main(ArrayClient.java:44)
    Caused by: org.xml.sax.SAXException: Bad envelope tag: html
         at org.apache.axis.message.EnvelopeBuilder.startElement(EnvelopeBuilder.java:109)
         at org.apache.axis.encoding.DeserializationContextImpl.startElement(DeserializationContextImpl.java:976)
         at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
         at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
         at org.apache.xerces.impl.XMLNSDocumentScannerImpl$NSContentDispatcher.scanRootElementHook(Unknown Source)
         at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
         at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
         at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
         at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
         at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
         at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
         at javax.xml.parsers.SAXParser.parse(SAXParser.java:345)
         at org.apache.axis.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:242)
         at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:538)
         ... 5 more
    My client code is following:
    Service service = new Service();
    Call call = (Call) service.createCall();
    call.setTargetEndpointAddress(new java.net.URL("http://localhost:9700/orabpel/default/Array"));
    SOAPEnvelope env = new SOAPEnvelope();
    Name bodyName = env.createName("ArrayRequest", "tns", "http://localhost/");
    SOAPBodyElement request = body.addBodyElement(bodyName);
    Name childName = env.createName("input","tns","http://localhost/");
    SOAPElement input = request.addChildElement(childName);
    input.addTextNode("ORCL");
    call.invoke(env);
    MessageContext mc = call.getMessageContext();
    System.out.println("\n============= Response ==============");
    XMLUtils.PrettyElementToStream(mc.getResponseMessage().getSOAPEnvelope().getAsDOM(), System.out);
    I'am having the same error with client generated by wsdl2java.
    Regards

    Hi -
    A few things that you may want to try to troubleshoot this issue:
    1) Run our sample of calling a BPEL process from Axis, located in:
    C:\orabpel\samples\interop\axis\AXISCallingSyncBPEL
    2) Run your client through a TCP tunnel to see the specific SOAP request message that is being sent to the BPEL process and the SOAP response that is being generated. This should help you determine which side of the communication is causing the problem, as well as to rule out proxy server or other issues that are very common problems for this situation.
    Dave

  • Problem connecting Axis client to a Service written in Delphi

    I'm using Axis client to use a web service already running in Delphi. I have used WSDL2JAVA tool to get the complex types required by the service parameters. But when I try to invoke the service it fails saying "Access violation at address 052DC9E1 in module 'ri.dll'."
    Has anyone out here tried accessing a service written in non-Java platform through a client written in Java?

    It now gives me the following error : "org.xml.sax.SAXException: SimpleDeserializer encountered a child element, which is NOT expected, in something it was trying to deserialize."
    Please anyone can shed a light on this?

  • Axis Client Web Service call problem: java.io.IOException: Stream closed

    Hi, I tried to call a webservice from Axis Client, and I encounter the following error. Do you guys have any idea what actually happens?
    Please help, I am newbie in web services.
    ==============Root Cause===============
    AxisFault
    faultCode: { h t t p : / / schemas.xmlsoap.org/soap/envelope/}Server.userException
    faultSubcode:
    faultString: java.io.IOException: Stream closed
    faultActor:
    faultNode:
    faultDetail:
         {h t t p : / / xml.apache.org/axis/}stackTrace:java.io.IOException: Stream closed
         at java.io.BufferedInputStream.ensureOpen(BufferedInputStream.java:120)
         at java.io.BufferedInputStream.read(BufferedInputStream.java:270)
         at org.apache.commons.httpclient.ContentLengthInputStream.read(ContentLengthInputStream.java:170)
         at java.io.FilterInputStream.read(FilterInputStream.java:111)
         at org.apache.commons.httpclient.AutoCloseInputStream.read(AutoCloseInputStream.java:108)
         at java.io.FilterInputStream.read(FilterInputStream.java:90)
         at org.apache.commons.httpclient.AutoCloseInputStream.read(AutoCloseInputStream.java:127)
         at org.apache.commons.httpclient.HttpMethodBase.getResponseBody(HttpMethodBase.java:688)
         at org.apache.commons.httpclient.HttpMethodBase.getResponseBodyAsString(HttpMethodBase.java:796)
         at org.apache.axis.transport.http.CommonsHTTPSender.invoke(CommonsHTTPSender.java:224)
         at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
         at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
         at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
         at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165)
         at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
         at org.apache.axis.client.Call.invoke(Call.java:2767)
         at org.apache.axis.client.Call.invoke(Call.java:2443)
         at org.apache.axis.client.Call.invoke(Call.java:2366)
         at org.apache.axis.client.Call.invoke(Call.java:1812)
         at org.springframework.scheduling.quartz.QuartzJobBean.execute(QuartzJobBean.java:86)
         at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
         at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
         {h t t p : / / xml.apache.org/axis/}hostname:compname
    java.io.IOException: Stream closed
         at org.apache.axis.AxisFault.makeFault(AxisFault.java:101)
         at org.apache.axis.transport.http.CommonsHTTPSender.invoke(CommonsHTTPSender.java:301)
         at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
         at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
         at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
         at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165)
         at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
         at org.apache.axis.client.Call.invoke(Call.java:2767)
         at org.apache.axis.client.Call.invoke(Call.java:2443)
         at org.apache.axis.client.Call.invoke(Call.java:2366)
         at org.apache.axis.client.Call.invoke(Call.java:1812)
         at org.springframework.scheduling.quartz.QuartzJobBean.execute(QuartzJobBean.java:86)
         at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
         at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)     
    Caused by: java.io.IOException: Stream closed
         at java.io.BufferedInputStream.ensureOpen(BufferedInputStream.java:120)
         at java.io.BufferedInputStream.read(BufferedInputStream.java:270)
         at org.apache.commons.httpclient.ContentLengthInputStream.read(ContentLengthInputStream.java:170)
         at java.io.FilterInputStream.read(FilterInputStream.java:111)
         at org.apache.commons.httpclient.AutoCloseInputStream.read(AutoCloseInputStream.java:108)
         at java.io.FilterInputStream.read(FilterInputStream.java:90)
         at org.apache.commons.httpclient.AutoCloseInputStream.read(AutoCloseInputStream.java:127)
         at org.apache.commons.httpclient.HttpMethodBase.getResponseBody(HttpMethodBase.java:688)
         at org.apache.commons.httpclient.HttpMethodBase.getResponseBodyAsString(HttpMethodBase.java:796)
         at org.apache.axis.transport.http.CommonsHTTPSender.invoke(CommonsHTTPSender.java:224)
         ... 17 more  I am calling through proxy, the setting is as follows:
                System.setProperty("https.proxyHost", [proxyname here]);
                System.setProperty("https.proxyPort", [proxyport here]);
                System.setProperty("http.proxyHost", [proxyname here]);
                System.setProperty("http.proxyPort", [proxyport here]);

    Are there any problems showing up in the server's log?

  • Java.lang.NoClassDefFoundError: org/apache/axis/client/Service

    Hi,
    I am developing a WebService Client and for that i am using the Apache axis client. but when i am trying to instnatiate the org.apache.axis.client.Service class it says a NoClassDefinition Found error.
    Can anyone tell me the reason for this? Is there any settings for axis client in the Portal-App.xml or any other place?
    Thanks
    Kiran

    Have you included all the Axis client jars in your /dist/PORTAL-INF/lib folder and added them to to .classpath?
    axis.jar , commons-discovery.jar , commons-logging.jar , crimson.jar , jaxp.jar , jaxrpc.jar , log4j.jar , saaj.jar , wsdl4j.jar , xalan.jar , xerces.jar .

  • Axis client: Always creating null-element even if I dont set it

    I am using Axis client to integrate with Webmethods.
    They have a type specified with:
    <element name="x" type="string" minOccurs="0"/>
    I do not want to set the value in the field because the value is unknown for me. So I choose not to set it at all and everything would be fine if not Axis sets it for me as a null-element.
    How do I get around this? I have to do it on the client side, because the webmethods system is not changeable.

    I am using Axis client to integrate with Webmethods.
    They have a type specified with:
    <element name="x" type="string" minOccurs="0"/>
    I do not want to set the value in the field because the value is unknown for me. So I choose not to set it at all and everything would be fine if not Axis sets it for me as a null-element.
    How do I get around this? I have to do it on the client side, because the webmethods system is not changeable.

  • Calling BPEL service using axis client

    Hi,
    I have created and deployed simple BPEL process and i am trying to invoke this BPEL process using axis client.
    deployed BPEL wsdl is as follows
    <?xml version="1.0" encoding="UTF-8" ?>
    - <definitions name="SimpleProcess" targetNamespace="http://xmlns.oracle.com/SimpleProcess" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://xmlns.oracle.com/SimpleProcess" xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:client="http://xmlns.oracle.com/SimpleProcess">
    - <types>
    - <schema xmlns="http://www.w3.org/2001/XMLSchema">
    <import namespace="http://xmlns.oracle.com/SimpleProcess" schemaLocation="SimpleProcess.xsd" />
    </schema>
    </types>
    - <message name="SimpleProcessRequestMessage">
    <part name="payload" element="tns:SimpleProcessProcessRequest" />
    </message>
    - <message name="SimpleProcessResponseMessage">
    <part name="payload" element="tns:SimpleProcessProcessResponse" />
    </message>
    - <portType name="SimpleProcess">
    - <operation name="process">
    <input message="tns:SimpleProcessRequestMessage" />
    <output message="tns:SimpleProcessResponseMessage" />
    </operation>
    </portType>
    - <binding name="SimpleProcessBinding" type="tns:SimpleProcess">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
    - <operation name="process">
    <soap:operation style="document" soapAction="process" />
    - <input>
    <soap:body use="literal" />
    </input>
    - <output>
    <soap:body use="literal" />
    </output>
    </operation>
    </binding>
    - <service name="SimpleProcess">
    - <port name="SimpleProcessPort" binding="tns:SimpleProcessBinding">
    <soap:address location="http://localhost:9700/orabpel/default/SimpleProcess/1.0" />
    </port>
    </service>
    - <plnk:partnerLinkType name="SimpleProcess">
    - <plnk:role name="SimpleProcessProvider">
    <plnk:portType name="tns:SimpleProcess" />
    </plnk:role>
    </plnk:partnerLinkType>
    </definitions>
    and my soap client code is as follows
    public static void main(String[] args) throws Exception {
         String endpoint =
         "http://ICON-OBCC.asiapacific.hpqcorp.net:9700/orabpel/default/SimpleProcess/1.0 ";
         Service service = new Service();
         Call call = (Call) service.createCall();
         call.setTargetEndpointAddress( new java.net.URL(endpoint) );
    call.setOperationName(new QName("http://xmlns.oracle.com/TP", "process"));
    String ret = (String) call.invoke( new Object[] { "FFF" } );
         System.out.println("Sent 'Hello!', got '" + ret + "'");
    when i execute this i am getting follwoing error on BPEL console
    Error - OWS-04005 an error occured for port BPEL_OC4j_SOAP_PROVIDER javx.xml.rpc.JAXRPCException java:lang:NullPointerException
    Any indication for resolving this will be great help.
    Thanks in advance
    S

    Hi,
    I have created and deployed simple BPEL process and i am trying to invoke this BPEL process using axis client.
    deployed BPEL wsdl is as follows
    <?xml version="1.0" encoding="UTF-8" ?>
    - <definitions name="SimpleProcess" targetNamespace="http://xmlns.oracle.com/SimpleProcess" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://xmlns.oracle.com/SimpleProcess" xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:client="http://xmlns.oracle.com/SimpleProcess">
    - <types>
    - <schema xmlns="http://www.w3.org/2001/XMLSchema">
    <import namespace="http://xmlns.oracle.com/SimpleProcess" schemaLocation="SimpleProcess.xsd" />
    </schema>
    </types>
    - <message name="SimpleProcessRequestMessage">
    <part name="payload" element="tns:SimpleProcessProcessRequest" />
    </message>
    - <message name="SimpleProcessResponseMessage">
    <part name="payload" element="tns:SimpleProcessProcessResponse" />
    </message>
    - <portType name="SimpleProcess">
    - <operation name="process">
    <input message="tns:SimpleProcessRequestMessage" />
    <output message="tns:SimpleProcessResponseMessage" />
    </operation>
    </portType>
    - <binding name="SimpleProcessBinding" type="tns:SimpleProcess">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
    - <operation name="process">
    <soap:operation style="document" soapAction="process" />
    - <input>
    <soap:body use="literal" />
    </input>
    - <output>
    <soap:body use="literal" />
    </output>
    </operation>
    </binding>
    - <service name="SimpleProcess">
    - <port name="SimpleProcessPort" binding="tns:SimpleProcessBinding">
    <soap:address location="http://localhost:9700/orabpel/default/SimpleProcess/1.0" />
    </port>
    </service>
    - <plnk:partnerLinkType name="SimpleProcess">
    - <plnk:role name="SimpleProcessProvider">
    <plnk:portType name="tns:SimpleProcess" />
    </plnk:role>
    </plnk:partnerLinkType>
    </definitions>
    and my soap client code is as follows
    public static void main(String[] args) throws Exception {
         String endpoint =
         "http://ICON-OBCC.asiapacific.hpqcorp.net:9700/orabpel/default/SimpleProcess/1.0 ";
         Service service = new Service();
         Call call = (Call) service.createCall();
         call.setTargetEndpointAddress( new java.net.URL(endpoint) );
    call.setOperationName(new QName("http://xmlns.oracle.com/TP", "process"));
    String ret = (String) call.invoke( new Object[] { "FFF" } );
         System.out.println("Sent 'Hello!', got '" + ret + "'");
    when i execute this i am getting follwoing error on BPEL console
    Error - OWS-04005 an error occured for port BPEL_OC4j_SOAP_PROVIDER javx.xml.rpc.JAXRPCException java:lang:NullPointerException
    Any indication for resolving this will be great help.
    Thanks in advance
    S

  • ?? can not create an instance of org.apache.axis.client.Service

    hi,
    firstly, i should introduce what i am doing now.
    I want to write a Jeanbean, which can invoke 2 web services.
    I found in tomcat, when I submitted the parameters from a web page form, there was Internal Server Error.
    The problem is I can not created an instance of org.apache.axis.client.Service, or an instance of org.apache.axis.client.AxisClient.
    But very stange, I tried to create an instance of org.apache.axis.client.Transport, which should exist in the same package with Service and AxisClien, there was no exceptions.
    can anyone give me some hints?

    Is it a "class not found" error? Have you tried viewing the jar file that you think org.apache.axis.client.Service is in to be sure that it's really in there?
    jar tvf <filename>

  • OC4J as Axis Client

    If I call (from JSP) an axis Web Service deployed in Tomcat from OC4J it does not work.
    I have all axis jars in my classpath but logging errors appear.
    These errors do not appear if I execute my client JSP in Tomcat.
    Does anybody know how to fix this problem ?
    java.lang.ExceptionInInitializerError     at org.apache.axis.client.Service.getAxisClient(Service.java:103)     at org.apache.axis.client.Service.<init>(Service.java:112)     at mypackage2.Stub.<init..
    18 moreCaused by: org.apache.commons.logging.LogConfigurationException: No suitable Log constructor     at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:420)     at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:502)     ... 22 moreCaused by: java.lang.NoClassDefFoundError: org/apache/log4j/Category     at java.lang.Class.getDeclaredConstructors0(Native Method)     at java.lang.Class.privateGetDeclaredConstructors(Class.java:1610)     at java.lang.Class.getConstructor0(Class.java:1922)     at java.lang.Class.getConstructor(Class.java:1019)     at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:417)     ... 23 more

    Hello Eric,
    I have these jars under Web-inf/lib
    14/11/2005 16:48 33.501 axis-ant.jar
    14/11/2005 16:48 1.599.495 axis.jar
    14/11/2005 16:48 71.442 commons-discovery-0.2.jar
    14/11/2005 16:48 38.015 commons-logging-1.0.4.jar
    14/11/2005 16:48 32.071 jaxrpc.jar
    14/11/2005 16:48 352.668 log4j-1.2.8.jar
    14/11/2005 16:48 19.427 saaj.jar
    14/11/2005 16:48 126.771 wsdl4j-1.5.1.jar
    8 archivos 2.273.390 bytes
    But the run time error remains as follows :
    500 Internal Server Error
    java.lang.ExceptionInInitializerError     at org.apache.axis.client.Service.getAxisClient(Service.java:103)     at org.apache.axis.client.Service.<init>(Service.java:112)     at mypackage2.Stub.<init>(Stub.java:18)     at calculadora2e_jsp._jspService(_calculadora_2e_jsp.java:57)     [SRC:/calculadora.jsp:13]     at com.orionserver[Oracle Containers for J2EE 10g (10.1.3.0.0) - Developer Preview 3].http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)     at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:343)     at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:543)     at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:441)     at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) - Developer Preview 3].server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:61)     at oracle.security.jazn.oc4j.JAZNFilter.doFilter(Unknown Source)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) - Developer Preview 3].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:672)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) - Developer Preview 3].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:378)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) - Developer Preview 3].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:869)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) - Developer Preview 3].server.http.HttpRequestHandler.run(HttpRequestHandler.java:288)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) - Developer Preview 3].server.http.HttpRequestHandler.run(HttpRequestHandler.java:120)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) - Developer Preview 3].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:294)     at java.lang.Thread.run(Thread.java:534)Caused by: org.apache.commons.logging.LogConfigurationException: org.apache.commons.logging.LogConfigurationException: No suitable Log constructor     at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:509)     at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:285)     at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:400)     at org.apache.axis.components.logger.LogFactory.getLog(LogFactory.java:37)     at org.apache.axis.handlers.BasicHandler.<clinit>(BasicHandler.java:43)     ... 18 moreCaused by: org.apache.commons.logging.LogConfigurationException: No suitable Log constructor     at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:420)     at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:502)     ... 22 moreCaused by: java.lang.NoClassDefFoundError: org/apache/log4j/Category     at java.lang.Class.getDeclaredConstructors0(Native Method)     at java.lang.Class.privateGetDeclaredConstructors(Class.java:1610)     at java.lang.Class.getConstructor0(Class.java:1922)     at java.lang.Class.getConstructor(Class.java:1019)     at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:417)     ... 23 more

  • Can an Axis client receive a server request ?

    Hi,
    I wish my question won't be stupid but I'm a newbie about Web Services.
    According to the Axis architecture guide, the classic communication schema between the client and the server is :
    Axis Client ----HTTP request----> Server
    Axis Client <----HTTP response---- Server
    But can I do this ?
    Axis Client <----HTTP request---- Server
    Axis Client ----HTTP response----> Server
    and this ?
    Axis Client ----HTTP request----> Server
    Axis Client <----HTTP response---- Server
    Axis Client <----HTTP request---- Server
    Axis Client ----HTTP response----> Server
    Thanks for your answers.

    At the first time, thanks for your help.
    It can be usefull to a remote management server to configure a parameter of a router.
    The remote management server get the list of parameters of the router and test if the concerned value is the good one.
    Axis Client <----HTTP request---- Server : getParameterValues
    Axis Client ----HTTP response----> Server : getParameterValuesResponse
    It is not the good value so the server set it.
    Axis Client <----HTTP request---- Server : setParameterValues
    Axis Client ----HTTP response----> Server : setParameterValuesResponse
    Globaly it is the client (the router) which send requests to the server but in this particular case, it is the server.
    Did I make a mistake ? What I want to do is it possible ?
    Thanks.

  • Axis-client on a CDC/PP application

    Is it possible to run an Axis Client on a CDC/PP application?
    It looks like Axis needs java 1.4.+. Am I wrong?
    many thanks!

    The only way (and it would be a hideous solution) would be to write an applet. Instead try looking into reverse AJAX to push messages to the web client.

  • OC4J 9.0.4, JAX-RPC, AXIS Client Stub

    Hi All,
    I have hit a problem and am wondering if anybody has any pointers :
    * I have a Webservice running on OC4J 10.1.2 Standalone.
    * I have generated Java client stubs by pointing to this webservice using the wsdl2java tool from Apache Axis and can use these generated classes without any problems outside any web containers.
    * I have created a jsp that calls these classes and can run this within the embedded server of Jdeveloper 9.0.5.2
    However...
    When I deploy the ear file containing this jsp into a 9.0.4 OC4J standalone / or full install and run the same jsp I am getting the following exception :
    500 Internal Server Error
    java.lang.ClassFormatError: com/abc/mypackage/MyApplicationBindingStub (Illegal Field name "array$[B")
         at java.lang.ClassLoader.defineClass0(Native Method)
         at java.lang.ClassLoader.defineClass(ClassLoader.java:502)
         at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
         at com.evermind[com Application Server Containers for J2EE 10g (9.0.4.0.0)].util.OC4JSecureClassLoader.defineClassEntry(OC4JSecureClassLoader.java:172)
         at com.evermind[com Application Server Containers for J2EE 10g (9.0.4.0.0)].naming.ContextClassLoader.defineClass(ContextClassLoader.java:1154)
         at com.evermind[com Application Server Containers for J2EE 10g (9.0.4.0.0)].naming.ContextClassLoader.findClass(ContextClassLoader.java:390)
         at java.lang.ClassLoader.loadClass(ClassLoader.java:299)
         at com.evermind[com Application Server Containers for J2EE 10g (9.0.4.0.0)].naming.ContextClassLoader.loadClass(ContextClassLoader.java:138)
         at java.lang.ClassLoader.loadClass(ClassLoader.java:255)
         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:315)
         at com.abc.mypackage.MyApplication_ServiceLocator.getMyApplicationPort(MyApplication_ServiceLocator.java:55)
         at com.abc.mypackage.MyApplication_ServiceLocator.getMyApplicationPort(MyApplication_ServiceLocator.java:50)
         at _Headers._jspService(_Headers.java:81)
         [SRC:/Headers.jsp:40]
         at com.orionserver[com Application Server Containers for J2EE 10g (9.0.4.0.0)].http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
         at com.jsp.runtimev2.JspPageTable.service(JspPageTable.java:349)
         at com.jsp.runtimev2.JspServlet.internalService(JspServlet.java:509)
         at com.jsp.runtimev2.JspServlet.service(JspServlet.java:413)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.evermind[com Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:765)
         at com.evermind[com Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:317)
         at com.evermind[com Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:790)
         at com.evermind[com Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.HttpRequestHandler.run(HttpRequestHandler.java:270)
         at com.evermind[com Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.HttpRequestHandler.run(HttpRequestHandler.java:112)
         at com.evermind[com Application Server Containers for J2EE 10g (9.0.4.0.0)].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)
         at java.lang.Thread.run(Thread.java:536)
    Can anybody let me know what I need to do. Is there anyway that I can get this Apache client code (which uses jax-rpc) working within OC4J 9.0.4. I know the limitations of 9.0.4 and Jax-rpc - but I am wondering if anybody has a nice note to work around it.
    Any help or comments would be greatly appreciated.

    Richard, the error message you see below indicates that the JVM can not recognize your class file.
    java.lang.ClassFormatError: com/abc/mypackage/MyApplicationBindingStub (Illegal Field name "array$[B")
    Are you using different java version to run wsdljava and OC4J? Can you try using the same version of java for both of them?

  • MessageBased Axis client with 2 methods

    Hi,
    I had deployed a Service with more than 1 method published as webservice.
    I am using Axis 1.4. The methods are correctly listed in the List page.
    Now I want to call these methods. In when I allow only 1 method in service, there is no need of specifying the method name in client when it is a MSG (Message Based) one. But now where should I specify the method name in client. I tried setOperationName. But my client is not invoking the service, It is giving exception.
    Couldn't find an appropriate operation for XML QName
    (http://..............)
    Thanks in advance to all.

    Hi,
    I had deployed a Service with more than 1 method published as webservice.
    I am using Axis 1.4. The methods are correctly listed in the List page.
    Now I want to call these methods. In when I allow only 1 method in service, there is no need of specifying the method name in client when it is a MSG (Message Based) one. But now where should I specify the method name in client. I tried setOperationName. But my client is not invoking the service, It is giving exception.
    Couldn't find an appropriate operation for XML QName
    (http://..............)
    Thanks in advance to all.

Maybe you are looking for

  • Keyboard and Mouse no longer work after update

    Earlier today I ran pacman -Syu for the first time since the 18th, and initially everything seemed to be working properly.  However, upon my next boot, both my mouse and keyboard (both USB) no longer worked, leaving me stuck at the login screen unabl

  • MBP wont go past apple logo/ wont reinstall ML via OS X utility HELP!!

    I recently upgraded to ML a few days again and my MBP appeared to be operating just fine, never had a single issue with this machine until now, my laptop was on sleep mode I simply entered my password and it froze kept spinning loading for a while I

  • Can't drag and drop attachments into mail fullscreen

    Have a weird issue.  In lion I could drag and drog into a new mail message by dragging the attachment to the hot corner then to the fullscreen mail app then onto the new mail message. Now for some reason in Mt. Lion it will no longer do this. I can d

  • Mavericks slow boot up

    Mavericks for me has been running a bit sluggish especially at start up. This is after a reinstall too! Also my disk verification fails to say this disk appears to be okay. Instead it stops halfway through completion, I have found out that some other

  • Firefox + web.show_document()

    Hi guys I'm developing an application in 10gR2, testing on firefox 1.5.0.7. The issue I am having is that web.show_document(<url>,'_blank') only works once in firefox. The next time it is called, no browser window pops up. I literally have to shut Fi