You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by ktiongson <kr...@gmail.com> on 2008/08/07 23:23:29 UTC
Re: Element is referenced but not defined
I have a similar error, but the fix mentioned below doesn't apply to my
problem. Can anyone please help me figure out what the problem with mine is?
Project:
Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter
Problem:
I receive the following error highlighted in RED below when running the
WSDL2Java emitter. Attached is the WSDL I’m using. The Element
CWBSDescription is defined in the WSDL so I do not know why the error is
thrown.
Window’s Console Output:
D:\PE\wsdl>set CLASSPATH=.;.D:\j2sdk1.4.2_13\bin;C:\Program
Files\Java\jre1.6.0_05\lib\ext\QTJava.zip;D:\PE\lib\jax-qname.jar;D:\PE\lib\axis.jar;D:\PE
\lib\activation.jar;D:\PE\lib\wsdl4j.jar;D:\PE\lib\commons-logging.jar;D:\PE\lib\commons-discovery.jar;D:\PE\lib\jaxrpc.jar;D:\PE\lib\saaj.jar;D:\PE\l
ib\mail.jar
D:\PE\wsdl>java org.apache.axis.wsdl.WSDL2Java -p
com.raytheon.pe.webservice.client -o ../src -t oa_PBA_PCP.wsdl
java.io.IOException: Element CWBSDescription is referenced but not defined.
at
org.apache.axis.wsdl.symbolTable.SymbolTable.checkForUndefined(SymbolTable.java:670)
at
org.apache.axis.wsdl.symbolTable.SymbolTable.add(SymbolTable.java:545)
at
org.apache.axis.wsdl.symbolTable.SymbolTable.populate(SymbolTable.java:518)
at
org.apache.axis.wsdl.symbolTable.SymbolTable.populate(SymbolTable.java:495)
at org.apache.axis.wsdl.gen.Parser$WSDLRunnable.run(Parser.java:361)
at java.lang.Thread.run(Thread.java:534)
Attached is my WSDL.
Thanks,
Kristine
Anne Thomas Manes wrote:
>
> The parameterOrder only applies to RPC style services in which you have
> more
> than one message part defined in your input message. Most tools won't
> object
> if you use parameterOrder in a document style service, but it your case,
> you
> specified a parameter that didn't exist. The parameterOrder attribute must
> reference message parts by their part name (in your case, "addPart", not
> "add"). If you specify "addPart", it should work. But as I said, it
> doesn't
> make sense in a document style service.
>
> Anne
>
> On 1/9/06, Shelli D. Orton <sh...@wmode.com> wrote:
>>
>> Thanks, that worked!
>>
>> Could you tell me why I needed to remove the parameterOrder attribute? I
>> used another wsdl file (document/literal wrapped) as a template for this
>> one, and it uses the attribute and successfully works with wsdl2java.
>>
>> Shelli
>>
>> -----Original Message-----
>> *From:* Anne Thomas Manes [mailto:atmanes@gmail.com]
>> *Sent:* Monday, January 09, 2006 3:47 PM
>> *To:* axis-user@ws.apache.org
>> *Subject:* Re: Element is referenced but not defined
>>
>> You need to add the "xsd" prefix to your element definitions in your
>> schema:
>>
>> <element name="add">
>> <complexType>
>> <sequence>
>> <element name="username" type="xsd:string"/>
>> <element name="password" type="xsd:string"/>
>> <element name="gender" type="xsd:string"/>
>> <element name="state" type="xsd:string"/>
>> <element name="timeZone" type="xsd:string"/>
>> <element name="SOCs" type="impl:SOCArray"/>
>> </sequence>
>> </complexType>
>> </element>
>>
>> <element name="addResponse" type="xsd:string"/>
>>
>> Should be:
>>
>> <xsd:element name="add">
>> <xsd:complexType>
>> <xsd:sequence>
>> <xsd:element name="username" type="xsd:string"/>
>> <xsd:element name="password" type="xsd:string"/>
>> <xsd:element name="gender" type="xsd:string"/>
>> <xsd:element name="state" type="xsd:string"/>
>> <xsd:element name="timeZone" type="xsd:string"/>
>> <xsd:element name="SOCs" type="impl:SOCArray"/>
>> </xsd:sequence>
>> </xsd:complexType>
>> </xsd:element>
>>
>> <xsd:element name="addResponse" type="xsd:string"/>
>>
>> Also, you must remove the parameterOrder attribute from the
>> <wsdl:operation> definition.
>>
>> Anne
>>
>> On 1/9/06, Shelli D. Orton <sh...@wmode.com> wrote:
>> >
>> > Hi,
>> >
>> > I'm trying to write wsdl in a document/literal wrapped style (yes, this
>> > is related to my earlier post for those who viewed it). I have a pared
>> down
>> > version of the wsdl with only the one request that was giving me grief
>> in
>> > rpc/encoded style. When I run wsdl2java, I get the following error:
>> >
>> > java.io.IOException: Element {
>> >
>> http://clearmode.com:80/ws/ConsumerProvision}addResponse<http://clearmode.com:80/ws/ConsumerProvision%7DaddResponse>is
>> referenced but not defined.
>> > at
>> > org.apache.axis.wsdl.symbolTable.SymbolTable.checkForUndefined(
>> > SymbolTable.java:670)
>> > at org.apache.axis.wsdl.symbolTable.SymbolTable.add(
>> > SymbolTable.java:545)
>> > at org.apache.axis.wsdl.symbolTable.SymbolTable.populate(
>> > SymbolTable.java:518)
>> > at org.apache.axis.wsdl.symbolTable.SymbolTable.populate(
>> > SymbolTable.java:495)
>> > at org.apache.axis.wsdl.gen.Parser$WSDLRunnable.run(Parser.java
>> > :361)
>> > at java.lang.Thread.run(Unknown Source)
>> > I have defined an element "addResponse" in my types section, so I'm not
>> > sure what is causing the error. The wsdl was based on another wsdl
>> that
>> > wsdl2java successfully creates classes for. Could someone tell me what
>> I've
>> > done wrong?
>> >
>> > Thanks,
>> > Shelli
>> >
>> > Here's the wsdl:
>> >
>> > <?xml version="1.0" encoding="UTF-8"?>
>> > <wsdl:definitions
>> > targetNamespace="http://clearmode.com:80/ws/ConsumerProvision"
>> > xmlns:impl="http://clearmode.com:80/ws/ConsumerProvision"
>> > xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
>> > xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
>> > xmlns:apachesoap="http://xml.apache.org/xml-soap"
>> > xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
>> > xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>> > >
>> >
>> > <wsdl:types>
>> >
>> > <xsd:schema targetNamespace="
>> > http://clearmode.com:80/ws/ConsumerProvision"
>> > xmlns:xsd="http://www.w3.org/2001/XMLSchema">
>> >
>> > <xsd:simpleType name="SOC">
>> > <xsd:restriction base="xsd:string"/>
>> > </xsd:simpleType>
>> >
>> > <xsd:complexType name="SOCArray">
>> > <xsd:sequence>
>> > <xsd:element name="SOC" type="impl:SOC"
>> > minOccurs="0" maxOccurs="unbounded"/>
>> > </xsd:sequence>
>> > </xsd:complexType>
>> >
>> > <element name="add">
>> > <complexType>
>> > <sequence>
>> > <element name="username" type="xsd:string"/>
>> > <element name="password" type="xsd:string"/>
>> > <element name="gender" type="xsd:string"/>
>> > <element name="state" type="xsd:string"/>
>> > <element name="timeZone" type="xsd:string"/>
>> > <element name="SOCs" type="impl:SOCArray"/>
>> > </sequence>
>> > </complexType>
>> > </element>
>> >
>> > <element name="addResponse" type="xsd:string"/>
>> >
>> > </xsd:schema>
>> >
>> > </wsdl:types>
>> >
>> > <wsdl:message name="addRequest">
>> > <wsdl:part name="addPart" element="impl:add"/>
>> > </wsdl:message>
>> >
>> > <wsdl:message name="addResponse">
>> > <wsdl:part name="addResponsePart" element="impl:addResponse"/>
>> > </wsdl:message>
>> >
>> > <wsdl:portType name="ConsumerProvision">
>> >
>> > <wsdl:operation name="add" parameterOrder="add">
>> > <wsdl:input name="addRequest" message="impl:addRequest"/>
>> > <wsdl:output name="addResponse"
>> message="impl:addResponse"/>
>> > </wsdl:operation>
>> >
>> > </wsdl:portType>
>> >
>> > <wsdl:binding name="ConsumerProvisionSoapBinding"
>> > type="impl:ConsumerProvision">
>> >
>> > <wsdlsoap:binding style="document" transport="
>> >
>> http://schemas.xmlsoap.org/soap/http"/<http://schemas.xmlsoap.org/soap/http%22/>
>> > >
>> >
>> > <wsdl:operation name="add">
>> > <wsdlsoap:operation soapAction=""/>
>> > <wsdl:input name="addRequest">
>> > <wsdlsoap:body use="literal"/>
>> > </wsdl:input>
>> > <wsdl:output name="addResponse">
>> > <wsdlsoap:body use="literal"/>
>> > </wsdl:output>
>> > </wsdl:operation>
>> >
>> > </wsdl:binding>
>> >
>> > <wsdl:service name="ConsumerProvision">
>> > <wsdl:port name="ConsumerProvision"
>> > binding="impl:ConsumerProvisionSoapBinding">
>> > <wsdlsoap:address
>> location="http://clearmode.com/ProvisioningEngine/services/ConsumerProvision"/
>> >
>> <http://clearmode.com/ProvisioningEngine/services/ConsumerProvision%22/>
>> > >
>> > </wsdl:port>
>> > </wsdl:service>
>> >
>> > </wsdl:definitions>
>> >
>> >
>>
>>
>
>
http://www.nabble.com/file/p18879966/oa_PBA_PCP.wsdl oa_PBA_PCP.wsdl
--
View this message in context: http://www.nabble.com/web-service-style-tp2195732p18879966.html
Sent from the Axis - User mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-user-help@ws.apache.org