Hi guys,
I'm using servicemix-jsr181 to develope my work but I've some problem for
auto-generated wsdl: here is my testing class:
package echo;
import java.io.Serializable;
import javax.jws.*;
import java.util.*;
@WebService
public class Echo
{
private void Echo()
{
}
@WebMethod
@WebResult(name ="EchoReturnObject")
public EchoReturnObject echo(@WebParam(name ="req")String in)
{
EchoReturnObject p = new EchoReturnObject();
p.resp=in;
p.i=0;
System.out.println(p.resp+" "+p.i);
return p;
}
}
class EchoReturnObject implements Serializable
{
String resp;
int i;
}
and here is my deploy file:
<beans xmlns:xfire="http://xfire.codehaus.org/config/1.0"
xmlns:jsr181="http://servicemix.apache.org/jsr181/1.0"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:wc="urn:/echo.wsdl">
<jsr181:endpoint annotations="jsr181" service="wc:echoService">
<jsr181:pojo>
<!-- <bean class="echo.Echo"/> -->
<bean id="echoService" class="echo.Echo"/>
<tx:advice id="txAdvice">
<tx:attributes>
<tx:method name="echo" readOnly="true"/>
</tx:attributes>
</tx:advice>
<aop:config>
<aop:pointcut id="echoServiceOperation"
expression="excecution(* echo.Echo.*(...))"/>
<aop:advisor advice-ref="txAdvice"
pointcut-ref="echoServiceOperation"/>
</aop:config>
</jsr181:pojo>
</jsr181:endpoint>
</beans>
and here is the auto-generated WSDL:
DEBUG - Jsr181Component - <?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="urn:/echo.wsdl" xmlns:ns1="http://echo"
xmlns:soapenc12="http://www.w3.org/2003/05/soap-encoding"
xmlns:tns="urn:/echo.wsdl" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:soap11="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:soapenc11="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<wsdl:types>
<xsd:schema attributeFormDefault="qualified" elementFormDefault="qualified"
targetNamespace="urn:/echo.wsdl" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="echo">
<xsd:complexType>
<xsd:sequence>
<xsd:element maxOccurs="1" minOccurs="1" name="req" nillable="true"
type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="echoResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element maxOccurs="1" minOccurs="1" name="Resp" nillable="true"
type="ns1:EchoReturnObject"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<xsd:schema attributeFormDefault="qualified" elementFormDefault="qualified"
targetNamespace="http://echo" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:complexType name="EchoReturnObject"/>
</xsd:schema>
</wsdl:types>
<wsdl:message name="echoResponse">
<wsdl:part name="parameters" element="tns:echoResponse">
</wsdl:part>
</wsdl:message>
<wsdl:message name="echoRequest">
<wsdl:part name="parameters" element="tns:echo">
</wsdl:part>
</wsdl:message>
<wsdl:portType name="echoServicePortType">
<wsdl:operation name="echo">
<wsdl:input name="echoRequest" message="tns:echoRequest">
</wsdl:input>
<wsdl:output name="echoResponse" message="tns:echoResponse">
</wsdl:output>
</wsdl:operation>
</wsdl:portType>
</wsdl:definitions>
The return type is empty: it does not generate the type following the class.
I'm using servicemix 3.1.2 but I upgraded the module to the 3.2 version as seen
in the nabble: http://www.mail-archive.com/[EMAIL PROTECTED]/msg01746.html
but nothing change.
Where the problem come from??
May I control this without changing servicemix component?
Thank you very much guys, please help me!!!!
Cheers,
Simone