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
