If I include the wsdlFile tag I get this error when I invoke the method that
has anon complex type based arg from a non-java client. BTW, it should
generate the WSDL without fuss even if I don't have to create the WSDL. The
WSDL tools should be bi-directional.

pjc

- java.io.IOException:
java.net.SocketException: Software caused connection abort: socket write
error
        at java.net.SocketOutputStream.socketWrite0(Native Method)
        at
java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)
        at java.net.SocketOutputStream.write(SocketOutputStream.java:136)
        at
org.apache.coyote.http11.InternalOutputBuffer$OutputStreamOutputBuffe
r.doWrite(InternalOutputBuffer.java:668)
        at
org.apache.coyote.http11.filters.ChunkedOutputFilter.doWrite(ChunkedO
utputFilter.java:168)
        at
org.apache.coyote.http11.InternalOutputBuffer.doWrite(InternalOutputB
uffer.java:523)
        at org.apache.coyote.Response.doWrite(Response.java:524)
        at
org.apache.coyote.tomcat4.OutputBuffer.realWriteBytes(OutputBuffer.ja
va:384)
        at
org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:439)
        at
org.apache.coyote.tomcat4.OutputBuffer.flush(OutputBuffer.java:348)
        at
org.apache.coyote.tomcat4.CoyoteOutputStream.flush(CoyoteOutputStream
.java:119)
        at
sun.nio.cs.StreamEncoder$CharsetSE.implFlush(StreamEncoder.java:410)
        at sun.nio.cs.StreamEncoder.flush(StreamEncoder.java:152)
        at java.io.OutputStreamWriter.flush(OutputStreamWriter.java:213)
        at java.io.BufferedWriter.flush(BufferedWriter.java:230)
        at org.apache.axis.Message.writeTo(Message.java:532)
        at
org.apache.axis.transport.http.AxisServlet.sendResponse(AxisServlet.j
ava:807)
        at
org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:68
3)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
        at
org.apache.axis.transport.http.AxisServletBase.service(AxisServletBas
e.java:339)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:247)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:193)
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:256)
        at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContex
t.invokeNext(StandardPipeline.java:643)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:480)
        at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)

        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:191)
        at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContex
t.invokeNext(StandardPipeline.java:643)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:480)
        at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)

        at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:
2416)
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:180)
        at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContex
t.invokeNext(StandardPipeline.java:643)
        at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatche
rValve.java:171)
        at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContex
t.invokeNext(StandardPipeline.java:641)
        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:172)
        at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContex
t.invokeNext(StandardPipeline.java:641)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:480)
        at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)

        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:174)
        at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContex
t.invokeNext(StandardPipeline.java:643)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:480)
        at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)

        at
org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:22
3)
        at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
:601)
        at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
ssConnection(Http11Protocol.java:392)
        at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java
:565)
        at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadP
ool.java:619)
        at java.lang.Thread.run(Thread.java:536)

-----Original Message-----
From: Dan Christopherson [mailto:[EMAIL PROTECTED]
Sent: Monday, December 15, 2003 9:44 AM
To: [EMAIL PROTECTED]
Subject: Re: Anonymous Complex Types


But why are you using URL?wsdl (which just runs the same generation code as
java2wsdl afterall) when
you have the wsdl already?

What was the failure in using the <wsdlFile> tag?

chrapchp wrote:
> Hello,
> Because it is failing when I just try to go to the URL?wsdl. I can access
> the client ok with a java-based client, but when I use a non-java client
> e.g. macromedia it chokes. What I did to try to get around it was
configure
> the sever-config.wsdd service entry with the </wsdlFile> tag and watch it
> fail miserably when I try to invoke a method. If I remove the complex ano
> type it works. So rather than try to work with a huge WSDL doc, I went
back
> to basics and trying to resolve the problem. I suspect they all have the
> same root cause.
>
> pjc
>
> -----Original Message-----
> From: Dan Christopherson [mailto:[EMAIL PROTECTED]
> Sent: Monday, December 15, 2003 9:16 AM
> To: [EMAIL PROTECTED]
> Subject: Re: Anonymous Complex Types
>
>
> If you're implementing a third party WSDL why are you generating WSDL?
>
> chrapchp wrote:
>
>>Hello,
>>I cannot get a successful WSDL doc generation from ?WSDL or Java2WSDL when
>
> I
>
>>include complex anonymous types. I cannot modify the WSDL doc since it is
>>driven by a third party spec.  What I did was create a simple WSDL doc to
>>try an isolate the problem from which I just perform a WSDL2Java and then
>>Java2WSDL to track the problem. It fails on the Java2WSDL operation.
>>e.g.
>>
>>writeTypeForPart() + qname={http://www.w3.org/2001/XMLSchema}string
>>writeTypeForPart()com.flashsense.test._PoopsyDataIn
>>writeTypeForPart() + qname={http://test.flashsense.com}_PoopsyDataIn
>>AxisFault
>> faultCode:
>
> {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
>
>> faultSubcode:
>> faultString: java.lang.NullPointerException
>> faultActor:
>> faultNode:
>> faultDetail:
>>
>>{http://xml.apache.org/axis/}stackTrace:java.lang.NullPointerException
>>        at
>
> org.apache.axis.wsdl.fromJava.Types.isSimpleType(Types.java:1242)
>
>>        at
>>
>
>
org.apache.axis.wsdl.fromJava.Types.isAcceptableAsAttribute(Types.java:1260)
>
>>        at
>>
>
>
org.apache.axis.encoding.ser.BeanSerializer.writeAttribute(BeanSerializer.ja
>
>>va:476)
>>        at
>>
>
>
org.apache.axis.encoding.ser.BeanSerializer.writeSchema(BeanSerializer.java:
>
>>386)
>>        at
>>org.apache.axis.wsdl.fromJava.Types.makeTypeElement(Types.java:1707)
>>        at
>>org.apache.axis.wsdl.fromJava.Types.writeTypeForPart(Types.java:429)
>>        at
>>
>
>
org.apache.axis.wsdl.fromJava.Emitter.writePartToMessage(Emitter.java:1700)
>
>>        at
>>
>
>
org.apache.axis.wsdl.fromJava.Emitter.writeRequestMessage(Emitter.java:1394)
>
>>        at
>>org.apache.axis.wsdl.fromJava.Emitter.writeMessages(Emitter.java:1086)
>>        at
>>org.apache.axis.wsdl.fromJava.Emitter.writePortType(Emitter.java:1057)
>>        at org.apache.axis.wsdl.fromJava.Emitter.getWSDL(Emitter.java:495)
>>        at org.apache.axis.wsdl.fromJava.Emitter.emit(Emitter.java:346)
>>        at org.apache.axis.wsdl.fromJava.Emitter.emit(Emitter.java:441)
>>        at org.apache.axis.wsdl.Java2WSDL.run(Java2WSDL.java:622)
>>        at org.apache.axis.wsdl.Java2WSDL.main(Java2WSDL.java:668)
>>
>>I read in earlier posts from which there were no replies to the error
>>"Caused by: makeTypeElement() was told to create a type
>>"{http://test.flashsense.com}>PoopsyDataIn", with no containing element" I
>>get that too, but I see the code is invoking writeTypeForPart() with a
>
> null
>
>>for the Element parameter. Should createElementWithAnonymousType() be
>>invoked somewhere? Am I missing something?  Any suggestions would be
>>appreciated.
>>
>>Frustratingly yours,
>>pjc
>>
>>A fragment of the WSDL is as follows:
>>
>><?xml version="1.0" encoding="utf-8" ?>
>>- <wsdl:definitions name="eek" targetNamespace="urn:DunceService"
>>xmlns:apachesoap="http://xml.apache.org/xml-soap";
>>xmlns:impl="urn:DunceService" xmlns:intf="urn:DunceService"
>>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:documentation />
>>- <wsdl:types>
>>- <xsd:schema targetNamespace="http://test.flashsense.com";
>>xmlns:tns="http://test.flashsense.com";>
>>- <xsd:element name="PoopsyDataIn">
>>- <xsd:complexType>
>>  <xsd:attribute name="arg1" type="xsd:string" />
>>  <xsd:attribute name="arg2" type="xsd:double" />
>>  </xsd:complexType>
>>  </xsd:element>
>>  </xsd:schema>
>>  </wsdl:types>
>>- <!--
>>WSDL created by Apache Axis version: 1.2alpha
>>Built on Dec 09, 2003 (01:04:27 MST)
>>
>>  -->
>>- <wsdl:message name="upperStringRequest">
>>  <wsdl:part name="aString" type="xsd:string" />
>>  </wsdl:message>
>>- <wsdl:message name="doubleNumberRequest">
>>  <wsdl:part name="aNum" type="xsd:int" />
>>  </wsdl:message>
>>- <wsdl:message name="doubleNumberResponse">
>>  <wsdl:part name="doubleNumberReturn" type="xsd:int" />
>>  </wsdl:message>
>>- <wsdl:message name="upperStringResponse">
>>  <wsdl:part name="upperStringReturn" type="xsd:string" />
>>  </wsdl:message>
>>- <wsdl:message name="poopsyRequest">
>>  <wsdl:part element="tns:PoopsyDataIn" name="poopsyIn"
>>xmlns:tns="http://test.flashsense.com"; />
>>  </wsdl:message>
>>- <wsdl:message name="PoopsyResponse">
>>  <wsdl:part name="out" type="xsd:string" />
>>  </wsdl:message>
>>- <wsdl:portType name="DunceService">
>>- <wsdl:operation name="doubleNumber" parameterOrder="aNum">
>>  <wsdl:input message="impl:doubleNumberRequest"
>
> name="doubleNumberRequest"
>
>>/>
>>  <wsdl:output message="impl:doubleNumberResponse"
>>name="doubleNumberResponse" />
>>  </wsdl:operation>
>>- <wsdl:operation name="upperString" parameterOrder="aString">
>>  <wsdl:input message="impl:upperStringRequest" name="upperStringRequest"
>
> />
>
>>  <wsdl:output message="impl:upperStringResponse"
>
> name="upperStringResponse"
>
>>/>
>>  </wsdl:operation>
>>- <wsdl:operation name="PoopsyService">
>>  <wsdl:input message="impl:poopsyRequest" name="poopsyRequest" />
>>  <wsdl:output message="impl:PoopsyResponse" name="PoopsyResponse" />
>>  </wsdl:operation>
>>  </wsdl:portType>
>>....
>>
>
>
>
>



Reply via email to