[
http://jira.codehaus.org/browse/XFIRE-526?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_85764
]
Viktor Nordling commented on XFIRE-526:
---------------------------------------
I am experiencing this problem and I need urgent help.
What I want to do is this:
1. Create an interface with a method which return an array of Strings.
2. Generate the WSDL file with XFire.
3. Generate the code for calling the webservice with XFire.
4. See that the code compiles.
Are there any known workarounds? Can I use anything else instead of JAXB 2.0 /
Wrapped Style?
> Invalid wsdl for array parameters with JAXB 2.0 / Wrapped Style
> ---------------------------------------------------------------
>
> Key: XFIRE-526
> URL: http://jira.codehaus.org/browse/XFIRE-526
> Project: XFire
> Issue Type: Bug
> Affects Versions: 1.1.1
> Environment: XFire 1.1.1 in Apache Tomcat 5.5.7 in Winodws XP
> Reporter: Pablo Pastorino
> Assigned To: Dan Diephouse
>
> Hi, I'm trying to generate a wrapped style wsdl with jaxb 2.0 and i'm having
> problems with array parameters: the wrapper element references an array
> complex type
> (for example: "ArrayOfString") but this types are not declared. in the wsdl.
> I'm testing with the following service interface
> @WebService(name="TestService", targetNamespace="http://xml.service.test")
> public interface TestService
> {
> @WebMethod(operationName = "EchoArray", action = "")
> public String[] echoArray(String[] array);
> }
> The implementation has the "parameterStyle" annotation
> @WebService(endpointInterface="test.service.xml.TestService",
> serviceName="TestService")
> @SOAPBinding(style = SOAPBinding.Style.DOCUMENT,
> use = SOAPBinding.Use.LITERAL ,
> parameterStyle=SOAPBinding.ParameterStyle.WRAPPED)
> public class TestServiceImpl implements TestService
> {
> public String[] echoArray(String[] array) {
> return array;
> }
> }
> The service.xml is the following
> <beans xmlns="http://xfire.codehaus.org/config/1.0">
> <bean id="testServiceImpl"
> class="test.service.xml.TestServiceImpl">
> </bean>
> <service>
> <serviceBean>#testServiceImpl</serviceBean>
> <serviceFactory>#jaxbServiceFactory</serviceFactory>
> </service>
> <bean name="jaxbServiceFactory"
> class="org.codehaus.xfire.jaxb2.JaxbServiceFactory">
> <constructor-arg ref="xfire.transportManager" />
> </bean>
> </beans>
> Finally, the generated wsdl is:
> <wsdl:types>
> <xsd:schema targetNamespace="http://xml.service.test"
> elementFormDefault="qualified" attributeFormDefault="qualified">
> <xsd:element name="EchoArray">
> <xsd:complexType>
> <xsd:sequence>
> <xsd:element name="in0" type="tns:ArrayOfString" nillable="true"
> minOccurs="1" maxOccurs="1" />
> </xsd:sequence>
> </xsd:complexType>
> </xsd:element>
> <xsd:element name="EchoArrayResponse">
> <xsd:complexType>
> <xsd:sequence>
> <xsd:element name="out" type="tns:ArrayOfString" nillable="true"
> minOccurs="1" maxOccurs="1" />
> </xsd:sequence>
> </xsd:complexType>
> </xsd:element>
> </xsd:schema>
> </wsdl:types>
> The type "ArrayOfString" is referenced but not declared in the wrapper
> elements but is nto declared.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe from this list please visit:
http://xircles.codehaus.org/manage_email