13 Replies Latest reply on Mar 31, 2011 3:20 PM by Greg Davidson

    JaxWsProxyFactoryBean returning null

    Greg Davidson Newbie

      I'm trying to connect to an existing/legacy axis external (not hosted in servicemix) web service.  I'm trying to connect to the web service from within code like:

       

       

                JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();

                factory.setServiceClass(AbcServiceInterface.class);

                factory.setAddress("http://hodx9024vb:8082/abcesb/services/Decoder");

                      +Map props = factory.getProperties();

                if(props == null){

                     props = new HashMap<String,Object>();

                     props.put("set-jaxb-validation-event-handler", "false");

                     factory.setProperties(props);

                }

                      AbcServiceInterface client = (AbcServiceInterface) factory.create();

                      LOG.info("Results from call: "+client.execute("QUJD"));

       

       

      I have no trouble reaching the web service, and there are no errors.

      However the value returned is always null.

      I've looked everywhere....tried everything...any ideas?

      Thanks for the help!!!

      -


      Interface class:

       

      package com.infarmbureau.esb;

       

      import javax.jws.WebMethod;

      import javax.jws.WebParam;

      import javax.jws.WebService;

       

       

      @WebService(targetNamespace = "http://esb-dev1:9081/abcesb/services/Decoder", name = "Decoder")

      public interface AbcServiceInterface {

            

           @WebMethod

           public String execute(@WebParam(name = "returnValue") String returnValue);

       

      }

      -


      WSDL generated by hitting this web service

      <?xml version="1.0" encoding="UTF-8"?>

      <wsdl:definitions targetNamespace="http://esb-dev1:9081/abcesb/services/Decoder" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://esb-dev1:9081/abcesb/services/Decoder" xmlns:intf="http://esb-dev1:9081/abcesb/services/Decoder" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">

      <!--WSDL created by Apache Axis version: 1.4

      Built on Apr 22, 2006 (06:55:48 PDT)-->

         <wsdl:message name="executeResponse">

            <wsdl:part name="executeReturn" type="xsd:string"/>

         </wsdl:message>

         <wsdl:message name="executeRequest">

            <wsdl:part name="PayLoad" type="xsd:string"/>

         </wsdl:message>

       

         <wsdl:portType name="Decoder">

            <wsdl:operation name="execute" parameterOrder="PayLoad">

               <wsdl:input message="intf:executeRequest" name="executeRequest"/>

               <wsdl:output message="intf:executeResponse" name="executeResponse"/>

            </wsdl:operation>

         </wsdl:portType>

       

         <wsdl:binding name="DecoderSoapBinding" type="intf:Decoder">

            <wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>

            <wsdl:operation name="execute">

               <wsdlsoap:operation soapAction=""/>

               <wsdl:input name="executeRequest">

                  <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://utils.ws.abc.com" use="encoded"/>

               </wsdl:input>

               <wsdl:output name="executeResponse">

                  <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://esb-dev1:9081/abcesb/services/Decoder" use="encoded"/>

               </wsdl:output>

            </wsdl:operation>

         </wsdl:binding>

          

        <wsdl:service name="DecoderService">

             <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Decoder to decode Base64 text into clear text  </wsdl:documentation>

           <wsdl:port binding="intf:DecoderSoapBinding" name="Decoder">

                <wsdlsoap:address location="http://esb-dev1:9081/abcesb/services/Decoder"/>

           </wsdl:port>

        </wsdl:service>

       

      </wsdl:definitions>

       

      Edited by: gmdavidson62 on Mar 1, 2011 3:35 PM

       

      Edited by: gmdavidson62 on Mar 1, 2011 3:36 PM