You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@axis.apache.org by "nadir amra (JIRA)" <ax...@ws.apache.org> on 2006/07/19 06:41:14 UTC
[jira] Assigned: (AXISCPP-862) '>' symbol in front of type and some
output parameters is not being removed by WSDL2Ws from type,
prototypes/signatures or class defintion and the header filename as an
unnecessary '_' prefix character.
[ http://issues.apache.org/jira/browse/AXISCPP-862?page=all ]
nadir amra reassigned AXISCPP-862:
----------------------------------
Assignee: nadir amra
> '>' symbol in front of type and some output parameters is not being removed by WSDL2Ws from type, prototypes/signatures or class defintion and the header filename as an unnecessary '_' prefix character.
> ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: AXISCPP-862
> URL: http://issues.apache.org/jira/browse/AXISCPP-862
> Project: Axis-C++
> Issue Type: Bug
> Components: WSDL processing - Doc
> Environment: n/a
> Reporter: Fred Preston
> Assigned To: nadir amra
>
> The created client stub for the following WSDL is incorrect
> <?xml version="1.0" encoding="UTF-8"?>
> <definitions xmlns="http://schemas.xmlsoap.org/wsdl/"
> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
> xmlns:xs="http://www.w3.org/2001/XMLSchema"
> xmlns:tns="http://webservices.com/CommerceService"
> targetNamespace="http://webservices.com/CommerceService">
> <types>
> <xs:schema targetNamespace="http://webservices.com/CommerceService"
> xmlns:xs="http://www.w3.org/2001/XMLSchema"
> xmlns:tns="http://webservices.com/CommerceService"
> elementFormDefault="qualified">
> <xs:element name="ItemSearch">
> <xs:complexType>
> <xs:sequence>
> <xs:element name="SubscriptionId" type="xs:string" minOccurs="0"/>
> <xs:element name="AssociateTag" type="xs:string" minOccurs="0"/>
> <xs:element name="XMLEscaping" type="xs:string" minOccurs="0"/>
> <xs:element name="Validate" type="xs:string" minOccurs="0"/>
> <xs:element name="Shared" type="tns:ItemSearchRequest" minOccurs="0"/>
> <xs:element name="Request" type="tns:ItemSearchRequest" minOccurs="0" maxOccurs="unbounded"/>
> </xs:sequence>
> </xs:complexType>
> </xs:element>
>
> <xs:complexType name="ItemSearchRequest">
> <xs:sequence>
> <xs:element name="Keywords" type="xs:string" minOccurs="0"/>
> <xs:element name="SearchIndex" type="xs:string" minOccurs="0"/>
> </xs:sequence>
> </xs:complexType>
>
> <xs:element name="ItemSearchResponse">
> <xs:complexType>
> <xs:sequence>
> <xs:element ref="tns:OperationRequest" minOccurs="0"/>
> <xs:element ref="tns:Items" minOccurs="0" maxOccurs="unbounded"/>
> </xs:sequence>
> </xs:complexType>
> </xs:element>
>
> <xs:element name="OperationRequest">
> <xs:complexType>
> <xs:sequence>
> <xs:element ref="tns:HTTPHeaders" minOccurs="0"/>
> <xs:element name="RequestId" type="xs:string" minOccurs="0"/>
> <xs:element ref="tns:Arguments" minOccurs="0"/>
> <xs:element ref="tns:Errors" minOccurs="0"/>
> <xs:element name="RequestProcessingTime" type="xs:float" minOccurs="0" maxOccurs="1"/>
> </xs:sequence>
> </xs:complexType>
> </xs:element>
>
> <xs:element name="Request">
> <xs:complexType>
> <xs:sequence>
> <xs:element name="IsValid" type="xs:string" minOccurs="0"/>
> <xs:element name="ItemSearchRequest" type="tns:ItemSearchRequest" minOccurs="0"/>
> <xs:element ref="tns:Errors" minOccurs="0"/>
> </xs:sequence>
> </xs:complexType>
> </xs:element>
>
> <xs:element name="Arguments">
> <xs:complexType>
> <xs:sequence>
> <xs:element name="Argument" maxOccurs="unbounded">
> <xs:complexType>
> <xs:attribute name="Name" type="xs:string" use="required"/>
> <xs:attribute name="Value" type="xs:string" use="required"/>
> </xs:complexType>
> </xs:element>
> </xs:sequence>
> </xs:complexType>
> </xs:element>
>
> <xs:element name="HTTPHeaders">
> <xs:complexType>
> <xs:sequence>
> <xs:element name="Header" minOccurs="0" maxOccurs="unbounded">
> <xs:complexType>
> <xs:attribute name="Name" type="xs:string" use="required"/>
> <xs:attribute name="Value" type="xs:string" use="required"/>
> </xs:complexType>
> </xs:element>
> </xs:sequence>
> </xs:complexType>
> </xs:element>
>
> <xs:element name="Items">
> <xs:complexType>
> <xs:sequence>
> <xs:element ref="tns:Request" minOccurs="0"/>
> <xs:element ref="tns:CorrectedQuery" minOccurs="0"/>
> <xs:element name="TotalResults" type="xs:nonNegativeInteger" minOccurs="0"/>
> <xs:element name="TotalPages" type="xs:nonNegativeInteger" minOccurs="0"/>
> <xs:element ref="tns:Item" minOccurs="0" maxOccurs="unbounded"/>
> </xs:sequence>
> </xs:complexType>
> </xs:element>
>
> <xs:element name="CorrectedQuery">
> <xs:complexType>
> <xs:sequence>
> <xs:element name="Keywords" type="xs:string" minOccurs="0"/>
> <xs:element name="Message" type="xs:string" minOccurs="0"/>
> </xs:sequence>
> </xs:complexType>
> </xs:element>
>
> <xs:element name="Item">
> <xs:complexType>
> <xs:sequence>
> <xs:element name="ASIN" type="xs:string"/>
> <xs:element ref="tns:Errors" minOccurs="0"/>
> <xs:element name="DetailPageURL" type="xs:string" minOccurs="0"/>
> <xs:element ref="tns:ItemAttributes" minOccurs="0"/>
> </xs:sequence>
> </xs:complexType>
> </xs:element>
>
> <xs:element name="ItemAttributes">
> <xs:complexType>
> <xs:sequence>
> <xs:element name="Author" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
> <xs:element name="ProductGroup" type="xs:string" minOccurs="0"/>
> <xs:element name="Title" type="xs:string" minOccurs="0"/>
> </xs:sequence>
> </xs:complexType>
> </xs:element>
> </xs:schema>
> </types>
>
> <message name="ItemSearchRequestMsg">
> <part name="body" element="tns:ItemSearch"/>
> </message>
>
> <message name="ItemSearchResponseMsg">
> <part name="body" element="tns:ItemSearchResponse"/>
> </message>
>
> <portType name="CommerceServicePortType">
> <operation name="ItemSearch">
> <input message="tns:ItemSearchRequestMsg"/>
> <output message="tns:ItemSearchResponseMsg"/>
> </operation>
> </portType>
>
> <binding name="CommerceServiceBinding" type="tns:CommerceServicePortType">
> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
> <operation name="ItemSearch">
> <soap:operation soapAction="http://soap.com"/>
> <input>
> <soap:body use="literal"/>
> </input>
> <output>
> <soap:body use="literal"/>
> </output>
> </operation>
> </binding>
>
> <service name="CommerceService">
> <port name="CommerceServicePort" binding="tns:CommerceServiceBinding">
> <soap:address location="http://soap.com/onca/soap?Service=CommerceService"/>
> </port>
> </service>
> </definitions>
> Produces the following header files:-
> --------------------------------------------------
> _Items_Array.hpp
> ==============
> /*
> * Copyright 2003-2004 The Apache Software Foundation.
> */
> #if !defined(___ITEMS_ARRAY_ARRAY_H__INCLUDED_)
> #define ___ITEMS_ARRAY_ARRAY_H__INCLUDED_
> class >Items;
> typedef struct _Items_ArrayTag
> {
> >Items* m_Array;
> int m_Size;
> } _Items_Array;
> #endif /* !defined(___ITEMS_ARRAY_ARRAY_H__INCLUDED_)*/
> CommerceServicePortType.hpp
> =========================
> STORAGE_CLASS_INFO void ItemSearch(xsd__string Value0, xsd__string Value1, xsd__string Value2, xsd__string Value3, ItemSearchRequest* Value4, ItemSearchRequest_Array Value5, AXIS_OUT_PARAM >OperationRequest* *OutValue0, AXIS_OUT_PARAM _Items_Array *OutValue1);
> CommerceServicePortType.cpp
> =========================
> void AWSECommerceServicePortType::ItemSearch(xsd__string Value0, xsd__string Value1, xsd__string Value2, xsd__string Value3, ItemSearchRequest* Value4, ItemSearchRequest_Array Value5, AXIS_OUT_PARAM OperationRequest** OutValue0, AXIS_OUT_PARAM _Items_Array* OutValue1)
> {
> :
> *OutValue0 = (>OperationRequest*)m_pCall->getCmplxObject((void*) Axis_DeSerialize_>OperationRequest, (void*) Axis_Create_>OperationRequest, (void*) Axis_Delete_>OperationRequest,"OperationRequest", 0);
> There are five or more problems with the generated files:-
> 1. The type 'Items' is prefixed with a '>' character.
> 2. The class name should not be prefixed with a '>' character (see _Items_Array.hpp).
> 3. The filename should not be prefixed with a '_' character.
> 4. Some of the output parameters are prefixed with a '>' character (see CommerceServicePortType.hpp and CommerceServicePortType.cpp).
> 5. Also, in CommerceServicePortType.cpp, the name of the serialiser/deserialiser also has an embedded '>' character.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org