Chris,

Please start from a doc/lit wsdl. For example you can use this one
(http://cvs.apache.org/viewcvs/xml-axis/java/test/wsdl/interop3/docLit/interoptestdoclit.wsdl).
Run WSDL2Java on this wsdl to generate your server-side code.

Thanks,
dims

--- Chris Williamson <[EMAIL PROTECTED]> wrote:
> I am trying to get the echo example to work using wrapped style.
> 
> I can get the basic (string, int, float, etc) echo's to work doing something
> like this in the wsdd...
> 
>   <service name="echo2" style="wrapped">
>     <namespace>http://soapinterop.org/</namespace>
>     <parameter name="className"
> value="samples.echo.InteropTestSoapBindingImpl" />
>     <parameter name="allowedMethods" value="*" />
>   </service>
> 
> Then I try to do some of the more advanced echo's (echoStringArray) to work
> with something like this in the wsdd...
> 
>   <service name="echo2" style="wrapped">
>     <namespace>http://soapinterop.org/</namespace>
>     <parameter name="className"
> value="samples.echo.InteropTestSoapBindingImpl" />
>     <parameter name="allowedMethods" value="echoString echoStringArray" />
> 
>       <typeMapping
>         xmlns:ns="http://soapinterop.org/xsd";
>         qname="ns:ArrayOfstring"
>         type="java:java.lang.String[]"
>         serializer="org.apache.axis.encoding.ser.ArraySerializerFactory"
>         deserializer="org.apache.axis.encoding.ser.ArrayDeserializerFactory"
>         encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";
>       />
> 
>       <operation name="echoString" returnQName="return"
> returnType="RTypeNS:string" xmlns:RTypeNS="http://www.w3.org/2001/XMLSchema";
> >
>         <parameter name="inputString" type="tns:string"
> xmlns:tns="http://www.w3.org/2001/XMLSchema"/>
>       </operation>
>       <operation name="echoStringArray" returnQName="return"
> returnType="RTypeNS:ArrayOfstring"
> xmlns:RTypeNS="http://soapinterop.org/xsd"; >
>         <parameter name="inputStringArray" type="tns:ArrayOfstring"
> xmlns:tns="http://soapinterop.org/xsd"/>
>       </operation>
> 
>   </service>
> 
> But if I do this, I get an exception...
> 
> java.lang.NullPointerException
>       at java.lang.Class.isAssignableFrom(Native Method)
>       at
> org.apache.axis.description.ServiceDesc.syncOperationToClass(ServiceDesc.jav
> a:666)
>       at
> org.apache.axis.description.ServiceDesc.getSyncedOperationsForName(ServiceDe
> sc.java:977)
>       at
> org.apache.axis.description.ServiceDesc.loadServiceDescByIntrospectionRecurs
> ive(ServiceDesc.java:851)
>       at
> org.apache.axis.description.ServiceDesc.loadServiceDescByIntrospection(Servi
> ceDesc.java:818)
>       at
> org.apache.axis.description.ServiceDesc.loadServiceDescByIntrospection(Servi
> ceDesc.java:768)
>       at
> org.apache.axis.description.ServiceDesc.getOperations(ServiceDesc.java:380)
>       at
> org.apache.axis.transport.http.AxisServlet.reportAvailableServices(AxisServl
> et.java:704)
>       at org.apache.axis.transport.http.AxisServlet.doGet(AxisServlet.java:262)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
>       at
> org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:
> 339)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>       at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
> FilterChain.java:247)
>       at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
> ain.java:193)
>       at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
> va:256)
>       at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> eNext(StandardPipeline.java:643)
>       at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>       at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>       at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
> va:191)
>       at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> eNext(StandardPipeline.java:643)
>       at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>       at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>       at
> org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
>       at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180
> )
>       at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> eNext(StandardPipeline.java:643)
>       at
> org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.
> java:171)
>       at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> eNext(StandardPipeline.java:641)
>       at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172
> )
>       at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> eNext(StandardPipeline.java:641)
>       at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>       at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>       at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
> :174)
>       at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> eNext(StandardPipeline.java:643)
>       at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>       at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>       at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
>       at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:594)
>       at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConne
> ction(Http11Protocol.java:392)
>       at
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565)
>       at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav
> a:619)
>       at java.lang.Thread.run(Thread.java:536)
> 
> 
> I have no idea what this means.  Any ideas what could be causing this?
> 
> Is there any documentation that specifies how to use the operation element
> in the wsdd file?  When I omit the second operation, echoStringArray, the
> wsdl file is generated.  However, the targetNamespace in the schema is then
> "" rather than "http://soapinterop.org/";.  Any reason for this?  I think I
> will probably need to use the operation elements in order to get this to
> work.  So the targetNamespace will be important.
> 
> Is it even possible to convert the echo example into using wrapped style at
> this point?  It would be a nice useful example.
> 
> Thanks for any help,
> 
> Chris Williamson
> 


=====
Davanum Srinivas - http://webservices.apache.org/~dims/

__________________________________
Do you Yahoo!?
Yahoo! SiteBuilder - Free, easy-to-use web site design software
http://sitebuilder.yahoo.com

Reply via email to