When checking the WSDL problem you guys had, I've discovered something that could be a possible bug in the WSDL4J parser. I'm not sure what Achim did to make his WSDL work . However WSDL4J picks up some empty operations throught the porttype and it definitley fits the description of a 'bug' :)
I'll be posting this to the WSDL4J people too and perhaps we can find a workaround.
On 9/29/05, Weßling, Achim <
[EMAIL PROTECTED]> wrote:
Hallo,
now it works! I made several changes to the file, but now it works!
Here is my 'new' wsdl-file:
<?xml version="1.0" encoding="UTF-8"?>
<!--
Hier wird eine Schnittstelle zu einem zentralen Usermanagement
beschrieben.
Mit der Übergabe einer Userkennung wird ein Array mit Rollen für
diesen User
geliefert, wenn es den User gibt. Sonst wird eine Fehler geliefert.
Anmerkungen:
- ibt steht für InfokomBasicTypes
letzte Änderung:
27/09/2005 - angelegt
28/09/2005
div. Änderungen, um aus dem File Sourcen per WSDL2Java zu erzeugen
-->
<definitions name="InfokomBasic"
targetNamespace="http://www.infokom-gt.de/schemas/InfokomBasic "
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/ "
xmlns:tns="http://www.infokom-gt.de/schemas/InfokomBasic"
xmlns:xsd="http://www.w3.org/2001/XMLSchema "
xmlns:xsd1="http://www.infokom-gt.de/xsd/InfokomBasic"
>
<!-- Type definitions -->
<types>
<xsd:schema
targetNamespace="http://www.infokom-gt.de/xsd/InfokomBasic"
xmlns="http://schemas.xmlsoap.org/wsdl/ "
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
elementFormDefault="qualified"
>
<!-- ArrayOfStrings -->
<xsd:complexType name="ArrayOfStrings">
<xsd:sequence>
<xsd:element maxOccurs="unbounded" minOccurs="1" name="string"
type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<!-- user -->
<xsd:element name="user" type="xsd:string"/>
<!-- roles -->
<xsd:element name="roles" type="xsd1:ArrayOfStrings"/>
<!-- error -->
<xsd:element name="error" type="xsd:string"/>
</xsd:schema>
</types>
<!-- Message definitions -->
<message name ="InfokomBasicUserRequest">
<part name="user" element="xsd1:user"/>
</message>
<message name ="InfokomBasicUserResponse">
<part name="roles" element="xsd1:roles"/>
</message>
<message name ="InfokomBasicError">
<part name="error" element="xsd1:error"/>
</message>
<!-- Port type definitions -->
<portType name="InfokomBasicPort">
<operation name="login">
<input message="tns:InfokomBasicUserRequest"/>
<output message="tns:InfokomBasicUserResponse"/>
<fault message="tns:InfokomBasicError" name="error"/>
</operation>
</portType>
<!-- Binding definitions -->
<binding name="InfokomBasicBinding"
type="tns:InfokomBasicPort">
<soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http"/ >
<operation name="login">
<soap:operation soapAction="login" style="rpc"/>
<input>
<soap:body
namespace=" http://www.infokom-gt.de/schemas/InfokomBasic"
use="literal"/>
</input>
<output>
<soap:body
namespace=" http://www.infokom-gt.de/schemas/InfokomBasic"
use="literal"/>
</output>
<fault name="error">
<soap:fault name="error" use="literal"/>
</fault>
</operation>
</binding>
<!-- Service and Port (network address) definitions -->
<service name="InfokomBasicService">
<port name="InfokomBasicPort" binding="tns:InfokomBasicBinding">
<soap:address
location="http://ims90183.infokom.gt/axis2/service/MyService"/>
</port>
</service>
</definitions>
Thanks
Achim
-----Ursprüngliche Nachricht-----
Von: Weßling, Achim [mailto:[EMAIL PROTECTED]]
Gesendet am: Donnerstag, 29. September 2005 08:35
An: [email protected]; Ajith Ranabahu
Betreff: AW: WSDL2Java -> Exception (axis2)
Hallo,
this is my wsdl:
<?xml version="1.0" encoding="UTF-8"?>
<!--
Hier wird eine Schnittstelle zu einem zentralen Usermanagement
beschrieben.
Mit der Übergabe einer Userkennung wird ein Array mit Rollen für
diesen User
geliefert, wenn es den User gibt. Sonst wird eine Fehler geliefert.
Anmerkungen:
- ibt steht für InfokomBasicTypes
letzte Änderung:
27/09/2005 - angelegt
-->
<definitions name="InfokomBasic" targetNamespace="
http://www.infokom-gt.de/schemas/InfokomBasic"
xmlns:tns=" http://www.infokom-gt.de/schemas/InfokomBasic"
xmlns:ibt="urn:InfokomBasic"
xmlns=" http://schemas.xmlsoap.org/wsdl/"
xmlns:wsdl=" http://schemas.xmlsoap.org/wsdl/"
xmlns:soap=" http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd=" http://www.w3.org/2001/XMLSchema ">
<!-- Type definitions -->
<types>
<xsd:schema targetNamespace="urn:InfokomBasic">
<!-- ArrayOfStrings -->
<xsd:complexType name="ArrayOfStrings">
<xsd:sequence>
<xsd:element maxOccurs="unbounded" minOccurs="1" name="string"
type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<!-- user -->
<xsd:element name="user" type="xsd:string"/>
<!-- roles -->
<xsd:element name="roles" type="ibt:ArrayOfStrings"/>
<!-- error -->
<xsd:element name="error" type="xsd:string"/>
</xsd:schema>
</types>
<!-- Message definitions -->
<message name ="InfokomBasicUserRequest">
<part name="user" element="ibt:user"/>
</message>
<message name ="InfokomBasicUserResponse">
<part name="roles" element="ibt:roles"/>
</message>
<message name ="InfokomBasicError">
<part name="error" element="ibt:error"/>
</message>
<!-- Port type definitions -->
<portType name="InfokomBasicPort">
<operation name="login">
<input message="ibt:InfokomBasicUserRequest"/>
<output message="ibt:InfokomBasicUserResponse"/>
<fault message="ibt:InfokomBasicError" name="error"/>
</operation>
</portType>
<!-- Binding definitions -->
<binding name="InfokomBasicBinding" type="ibt:InfokomBasicPort">
<soap:binding transport=" http://schemas.xmlsoap.org/soap/http"
style="document"/>
<operation name="login">
<soap:operation soapAction="
http://ims90183.infokom.gt/axis2/service/MyService"/
< http://ims90183.infokom.gt/axis2/service/MyService> >
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
<fault name="error">
<soap:fault name="error" use="literal"/>
</fault>
</operation>
</binding>
<!-- Service and Port (network address) definitions -->
<service name="InfokomBasicService">
<port name="InfokomBasicPort" binding="tns:InfokomBasicBinding">
<soap:address location="
http://ims90183.infokom.gt/axis2/service/MyService"/
< http://ims90183.infokom.gt/axis2/service/MyService> >
</port>
</service>
</definitions>
Thanks
Achim
-----Ursprüngliche Nachricht-----
Von: Ajith Ranabahu [mailto: [EMAIL PROTECTED]]
Gesendet am: Mittwoch, 28. September 2005 05:29
An: [email protected]
Betreff: Re: WSDL2Java -> Exception (axis2)
Please post the WSDL. This could be a problem with out code generator
On 9/27/05, Weßling, Achim < [EMAIL PROTECTED]
<mailto: [EMAIL PROTECTED]> > wrote:
Hallo,
I created a WSDL-File and tried to generate the severside classes with
the following argument:
./WSDL2Java.sh -uri
/winxp/Projekte/java/MyService/src/META-INF/InfokomBasic.wsdl -o ~/tmp
-p de.infokomGT -ss
But I get the following exception:
Exception in thread "main" org.apache.wsdl.impl.WSDLProcessingException:
Cannot Determine the MEP
at
org.apache.axis2.wsdl.builder.wsdl4j.WSDL11MEPFinder.getMEP (WSDL11MEPFin
der.java:63)
at
org.apache.axis2.wsdl.builder.wsdl4j.WSDLPump.populateOperations
(WSDLPum
p.java:414)
at
org.apache.axis2.wsdl.builder.wsdl4j.WSDLPump.populateInterfaces(WSDLPum
p.java:242)
at
org.apache.axis2.wsdl.builder.wsdl4j.WSDLPump.populateDefinition(WSDLPum
p.java:172)
at
org.apache.axis2.wsdl.builder.wsdl4j.WSDLPump.pump(WSDLPump.java:89)
at
org.apache.axis2.wsdl.builder.wsdl4j.WSDL1ToWOMBuilder.build(WSDL1ToWOMB
uilder.java:123)
at
org.apache.axis2.wsdl.builder.wsdl4j.WSDL1ToWOMBuilder.build(WSDL1ToWOMB
uilder.java:92)
at
org.apache.axis2.wsdl.codegen.CodeGenerationEngine.getWOM (CodeGeneration
Engine.java:116)
at
org.apache.axis2.wsdl.codegen.CodeGenerationEngine.<init>(CodeGeneration
Engine.java:46)
at org.apache.axis2.wsdl.WSDL2Code.main(WSDL2Code.java:30)
at org.apache.axis2.wsdl.WSDL2Java.main(WSDL2Java.java :21)
[EMAIL PROTECTED]:~/Programme/axis2-0.92-bin/bin$
Can someone help me?
Achim
--
Ajith Ranabahu
--
Ajith Ranabahu
