Hi,

 

I use castor to act as my serializer/deserializer with Axis webservices. Have a feeling that my schema is getting cached by Tomcat (may be off on this).

 

Process used to generate WS.

1)       Generated Server and Client classes using Axis.

2)       Replaced the beans with castor

3)       Did the necessary changes in wsdd, and client-side files.

4)       Deployed the web-service.

 

Any changes in the schema are not picked up by Axis. What’s surprising is that even when I remove reference to my schema file, axis or (tomcat) still seem to be getting a reference to it.

 

I am sending excerpts of few important files.

 

STUB:

java.lang.Class simplesf = org.apache.axis.encoding.ser.SimpleSerializerFactory.class;

            java.lang.Class simpledf = org.apache.axis.encoding.ser.SimpleDeserializerFactory.class;           

 

                  qName = new javax.xml.namespace.QName("http://localhost:8080/jboost/schemas/xbwebcontext", "XBWebContext");

                  cachedSerQNames.add(qName);

                  cls = com.ivis.xboost.ws.beans.XBWebContext.class;

                  cachedSerClasses.add(cls);

                  cachedSerFactories.add(castorsf);

                  cachedDeserFactories.add(castordf);

 

WSDL

     

<!-- edited with XMLSPY v2004 rel. 3 U (http://www.xmlspy.com) by nitin (ivis technologies) -->

<definitions targetNamespace="http://localhost:8080/jboost/wsdl/xbwebcontext" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"

xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"

xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"

xmlns:tns="http://localhost:8080/jboost/wsdl/xbwebcontext"

xmlns:types="http://localhost:8080/jboost/schemas/xbwebcontext"

> 

<import namespace="http://localhost:8080/jboost/schemas/xbwebcontext" location="XBWebContext.xsd"/>

      <message name="getXBWebContextResp">

            <part name="parameters" element="types:getXBWebContextResponse"/>

      </message>

      <message name="getXBWebContextReq">

            <part name="parameters" element="types:getXBWebContext"/>

      </message>

      <portType name="XBWebContextPortType">

            <operation name="getXBWebContext">

                  <input message="tns:getXBWebContextReq"/>

                  <output message="tns:getXBWebContextResp"/>

            </operation>

      </portType>

      <binding name="XBWebContextSOAPBinding" type="tns:XBWebContextPortType">

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

            <operation name="getXBWebContext">

                  <soap:operation style="document" soapAction="getXBWebContext" />

                  <input>

                        <soap:body use="literal"/>

                  </input>

                  <output>

                        <soap:body use="literal"/>

                  </output>

            </operation>

      </binding>

      <service name="XBWebContextService">

            <port name="XBWebContextSOAPPort" binding="tns:XBWebContextSOAPBinding">           

                  <soap:address location="http://localhost:8080/jboost/services/XBWebContextSOAPPort"/>

            </port>

      </service>

</definitions>

 

Appreciate ur time in advance.

Nitin

Reply via email to