It appears that the Axis2 Std 1.0 WSDL file generation from a Java
interface is hard-wired to set the elementFormDefault to
"unqualified".

By not setting

// java2WsdlBuilder.setSchemaTargetNamespace("");
// java2WsdlBuilder.setSchemaTargetNamespacePrefix("");

in the Java2WSDLBuilder, I was able to get rid of several problems in
the generated
WSDL file.

In the example file, edited by Anne, she had set the "elementFormDefault" to
"qualified", and I looked and there is code in the WSDL11ToAxisServiceBuilder
that is hard-coded to set the elementFormDefault to "unqualified"
(on line 830). This is the only class that seemed to write the
"elementFormDefault".
This is in the daily build for last Friday, June 9th.
As suggested, I am trying the daily build from Friday, to get the latest fixes,
although that is probably not what we need to be using (we want to use the
Axis2 Std 1.0 release).

BTW, there still seems to be some gratuitous namespace references in
the generated
SOAP body, which Anne says should not be there.

At least, I realized that I had a way to format the WSDL file so that it is not
quite so unreadable. I attached the formatted file that I just generated, to see
if anyone has any ideas. I will test this against the WSDL2Java generator
to see if it will work, as is.

Regards,
--
Jim
<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"; xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"; xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"; xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"; xmlns:ns1="http://testexamples/xsd"; xmlns:ns="http://PointsCalculator.ve.recursionsw.com/types"; xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"; targetNamespace="http://PointsCalculator.ve.recursionsw.com/types";>
	<wsdl:types>
		<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"; xmlns:ns="http://testexamples/xsd"; targetNamespace="http://testexamples/xsd"; elementFormDefault="unqualified" attributeFormDefault="unqualified">
			<xs:element type="ns:FoodDescription" name="FoodDescription"/>
			<xs:complexType name="FoodDescription">
				<xs:sequence>
					<xs:element type="xs:int" name="calories"/>
					<xs:element type="xs:int" name="fatGrams"/>
					<xs:element type="xs:int" name="fiberGrams"/>
					<xs:element type="xs:int" name="points"/>
				</xs:sequence>
			</xs:complexType>
			<xs:element name="calculatePoints">
				<xs:complexType>
					<xs:sequence>
						<xs:element type="ns:FoodDescription" name="param0"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="calculatePointsResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element type="xs:int" name="return"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:complexType name="FoodDescription">
				<xs:sequence>
					<xs:element type="xs:int" name="calories"/>
					<xs:element type="xs:int" name="fatGrams"/>
					<xs:element type="xs:int" name="fiberGrams"/>
					<xs:element type="xs:int" name="points"/>
				</xs:sequence>
			</xs:complexType>
		</xs:schema>
	</wsdl:types>
	<wsdl:message name="calculatePointsMessage">
		<wsdl:part element="ns1:calculatePoints" name="part1"/>
	</wsdl:message>
	<wsdl:message name="calculatePointsResponseMessage">
		<wsdl:part element="ns1:calculatePointsResponse" name="part1"/>
	</wsdl:message>
	<wsdl:portType name="PointsCalculatorPortType">
		<wsdl:operation name="calculatePoints">
			<wsdl:input message="ns:calculatePointsMessage"/>
			<wsdl:output message="ns:calculatePointsResponseMessage"/>
		</wsdl:operation>
	</wsdl:portType>
	<wsdl:binding type="ns:PointsCalculatorPortType" name="PointsCalculatorSOAP11Binding">
		<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
		<wsdl:operation name="calculatePoints">
			<soap:operation style="document" soapAction="urn:calculatePoints"/>
			<wsdl:input>
				<soap:body namespace="http://PointsCalculator.ve.recursionsw.com/types"; use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<soap:body namespace="http://PointsCalculator.ve.recursionsw.com/types"; use="literal"/>
			</wsdl:output>
		</wsdl:operation>
	</wsdl:binding>
	<wsdl:binding type="ns:PointsCalculatorPortType" name="PointsCalculatorSOAP12Binding">
		<soap12:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
		<wsdl:operation name="calculatePoints">
			<soap12:operation style="document" soapAction="urn:calculatePoints"/>
			<wsdl:input>
				<soap12:body namespace="http://PointsCalculator.ve.recursionsw.com/types"; use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<soap12:body namespace="http://PointsCalculator.ve.recursionsw.com/types"; use="literal"/>
			</wsdl:output>
		</wsdl:operation>
	</wsdl:binding>
	<wsdl:service name="PointsCalculator">
		<wsdl:port binding="ns:PointsCalculatorSOAP11Binding" name="PointsCalculatorSOAP11port">
			<soap:address location="c:/Java/projects2/axis2-std-1.0testbed\build\wsdlPointsCalculator"/>
		</wsdl:port>
		<wsdl:port binding="ns:PointsCalculatorSOAP12Binding" name="PointsCalculatorSOAP12port">
			<soap12:address location="c:/Java/projects2/axis2-std-1.0testbed\build\wsdlPointsCalculator"/>
		</wsdl:port>
	</wsdl:service>
</wsdl:definitions>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to