cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Javier Delgadillo (JIRA)" <j...@apache.org>
Subject [jira] Created: (CXF-1482) List<Double> parameters don't map to xsd:double in generated WSDL
Date Thu, 20 Mar 2008 23:13:24 GMT
List<Double> parameters don't map to xsd:double in generated WSDL
-----------------------------------------------------------------

                 Key: CXF-1482
                 URL: https://issues.apache.org/jira/browse/CXF-1482
             Project: CXF
          Issue Type: Bug
          Components: Aegis Databinding, Soap Binding
    Affects Versions: 2.1
         Environment: Glassfish App Server
            Reporter: Javier Delgadillo


When using the Mar 14 snapshot build of 2.1, CXF outputs less than desirable WSDL for any
service that has an input parameter of type List<Double> when used in conjuction with
Aegis Mapping files.

With previous builds, the List<Double> would map to xsd:double, but now it creates its
own namespace.

Here's the interface:
public interface Foo
{
    int bar( List<Double> doublesList );
}

Here's the Aegis mapping file:
<?xml version="1.0"?>
<!-- xmlns="http://xfire.codehaus.org/schemas/1.0/mapping.xsd" -->
<mappings>
    <mapping>
        <method name="bar">
            <parameter index="0" mappedName="doublesList" componentType="java.lang.Double"/>
        </method>
    </mapping>
</mappings>

Here's the generated WSDL:
<?xml version="1.0" encoding="UTF-8"?><wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:tns="http://arcwebservices.com/v4" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
name="Foo" targetNamespace="http://arcwebservices.com/v4">
  <wsdl:types>
<xsd:schema xmlns:tns="http://lang.java" attributeFormDefault="qualified" elementFormDefault="qualified"
targetNamespace="http://lang.java">
    <xsd:complexType name="Double">
        <xsd:sequence>
            <xsd:element minOccurs="0" name="infinite" type="xsd:boolean"/>
            <xsd:element minOccurs="0" name="naN" type="xsd:boolean"/>
        </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="ArrayOfDouble">
        <xsd:sequence>
            <xsd:element maxOccurs="unbounded" minOccurs="0" name="Double" nillable="true"
type="tns:Double"/>
        </xsd:sequence>
    </xsd:complexType>
</xsd:schema>
<xsd:schema xmlns:ns0="http://lang.java" attributeFormDefault="unqualified" elementFormDefault="qualified"
targetNamespace="http://arcwebservices.com/v4">
    <xsd:import namespace="http://lang.java"/>
    <xsd:element name="bar">
        <xsd:complexType>
            <xsd:sequence>
                <xsd:element name="doublesList" type="ns0:ArrayOfDouble"/>
            </xsd:sequence>
        </xsd:complexType>
    </xsd:element>
    <xsd:element name="barResponse">
        <xsd:complexType>
            <xsd:sequence>
                <xsd:element name="return" type="xsd:int"/>
            </xsd:sequence>
        </xsd:complexType>
    </xsd:element>
</xsd:schema>
  </wsdl:types>
  <wsdl:message name="barResponse">
    <wsdl:part element="tns:barResponse" name="parameters"/>
  </wsdl:message>
  <wsdl:message name="bar">
    <wsdl:part element="tns:bar" name="parameters"/>
  </wsdl:message>
  <wsdl:portType name="FooPortType">
    <wsdl:operation name="bar">
      <wsdl:input message="tns:bar" name="bar"/>
      <wsdl:output message="tns:barResponse" name="barResponse"/>
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="FooSoapBinding" type="tns:FooPortType">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
    <wsdl:operation name="bar">
      <soap:operation soapAction="" style="document"/>
      <wsdl:input name="bar">
        <soap:body use="literal"/>
      </wsdl:input>
      <wsdl:output name="barResponse">
        <soap:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="Foo">
    <wsdl:port binding="tns:FooSoapBinding" name="FooPort">
      <soap:address location="http://localhost:8080/soap/Foo"/>
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message