Failure on use of croncrete complex types in WSDL 
--------------------------------------------------

         Key: TUSCANY-500
         URL: http://issues.apache.org/jira/browse/TUSCANY-500
     Project: Tuscany
        Type: Bug

  Components: C++ SCA  
    Versions: Cpp-current    
 Environment: Windows XP
    Reporter: Simon Laws


There is something strange happeing in the WSDL based registration of types. 
When I use an annonymous concrete types in the Big Bank sample, for example

  <xsd:element name="getAccountReport">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element name="customerID">
          <xsd:complexType>
            <xsd:sequence>
              <xsd:element name="customerID" type="xsd:string" />
            </xsd:sequence>
          </xsd:complexType>
        </xsd:element>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>

...

   <xsd:element name="getAccountReportResponse">
     <xsd:complexType>
       <xsd:sequence>  
         <xsd:element name="accountReport" type="tns:AccountReport"/>     
       </xsd:sequence>
     </xsd:complexType>
   </xsd:element>

The types that are registered are...

Type: commonj.sdo#BigDecimal
Type: commonj.sdo#BigInteger
Type: commonj.sdo#Boolean
Type: commonj.sdo#Byte
Type: commonj.sdo#Bytes
Type: commonj.sdo#ChangeSummary
Type: commonj.sdo#Character
Type: commonj.sdo#DataObject
Type: commonj.sdo#Date
Type: commonj.sdo#Double
Type: commonj.sdo#Float
Type: commonj.sdo#Integer
Type: commonj.sdo#Long
Type: commonj.sdo#OpenDataObject
Type: commonj.sdo#Short
Type: commonj.sdo#String
Type: commonj.sdo#URI
Type: http://www.bigbank.com/AccountService#AccountReport
        Property: checking type: http://www.bigbank.com/AccountService#CheckingA
ccount
        Property: savings type: http://www.bigbank.com/AccountService#SavingsAcc
ount
        Property: stocks type: http://www.bigbank.com/AccountService#StockAccoun
t
Type: http://www.bigbank.com/AccountService#CheckingAccount
        Property: accountNumber type: commonj.sdo#String
        Property: balance type: commonj.sdo#Float
Type: http://www.bigbank.com/AccountService#RootType
        Property: getAccountReport type: http://www.bigbank.com/AccountService#g
etAccountReport
        Property: getAccountReportResponse type: http://www.bigbank.com/AccountS
ervice#getAccountReportResponse
Type: http://www.bigbank.com/AccountService#SavingsAccount
        Property: accountNumber type: commonj.sdo#String
        Property: balance type: commonj.sdo#Float
Type: http://www.bigbank.com/AccountService#StockAccount
        Property: accountNumber type: commonj.sdo#String
        Property: symbol type: commonj.sdo#String
        Property: quantity type: commonj.sdo#Integer
        Property: balance type: commonj.sdo#Float
Type: http://www.bigbank.com/AccountService#customerID
        Property: customerID type: commonj.sdo#String
Type: http://www.bigbank.com/AccountService#getAccountReport
        Property: customerID type: http://www.bigbank.com/AccountService#custome
rID
Type: http://www.bigbank.com/AccountService#getAccountReportResponse
        Property: accountReport type: http://www.bigbank.com/AccountService#Acco
untReport
Type: http://www.quickstockquote.com/StockQuoteService/#RootType
        Property: getQuote type: http://www.quickstockquote.com/StockQuoteServic
e/#getQuote
        Property: getQuoteResponse type: http://www.quickstockquote.com/StockQuo
teService/#getQuoteResponse
Type: http://www.quickstockquote.com/StockQuoteService/#getQuote
        Property: symbol type: commonj.sdo#String
Type: http://www.quickstockquote.com/StockQuoteService/#getQuoteResponse
        Property: quote type: commonj.sdo#Float

and the sample works. If I use a concrete type for the input param instead, for 
example, 

  <xsd:complexType name="GetAccountReportType">
    <xsd:sequence>
        <xsd:element name="customerID">
          <xsd:complexType>
            <xsd:sequence>
              <xsd:element name="customerID" type="xsd:string" />
            </xsd:sequence>
          </xsd:complexType>
        </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
    
  <xsd:element name="getAccountReport" type="tns:GetAccountReportType"/>

Then the types that are registered are

Type: commonj.sdo#BigDecimal
Type: commonj.sdo#BigInteger
Type: commonj.sdo#Boolean
Type: commonj.sdo#Byte
Type: commonj.sdo#Bytes
Type: commonj.sdo#ChangeSummary
Type: commonj.sdo#Character
Type: commonj.sdo#DataObject
Type: commonj.sdo#Date
Type: commonj.sdo#Double
Type: commonj.sdo#Float
Type: commonj.sdo#Integer
Type: commonj.sdo#Long
Type: commonj.sdo#OpenDataObject
Type: commonj.sdo#Short
Type: commonj.sdo#String
Type: commonj.sdo#URI
Type: http://www.bigbank.com/AccountService#AccountReport
        Property: checking type: http://www.bigbank.com/AccountService#CheckingA
ccount
        Property: savings type: http://www.bigbank.com/AccountService#SavingsAcc
ount
        Property: stocks type: http://www.bigbank.com/AccountService#StockAccoun
t
Type: http://www.bigbank.com/AccountService#CheckingAccount
        Property: accountNumber type: commonj.sdo#String
        Property: balance type: commonj.sdo#Float
Type: http://www.bigbank.com/AccountService#GetAccountReportType
        Property: customerID type: http://www.bigbank.com/AccountService#custome
rID
Type: http://www.bigbank.com/AccountService#RootType
        Property: getAccountReport type: http://www.bigbank.com/AccountService#G
etAccountReportType
        Property: getAccountReportResponse type: http://www.bigbank.com/AccountS
ervice#getAccountReportResponse
Type: http://www.bigbank.com/AccountService#SavingsAccount
        Property: accountNumber type: commonj.sdo#String
        Property: balance type: commonj.sdo#Float
Type: http://www.bigbank.com/AccountService#StockAccount
        Property: accountNumber type: commonj.sdo#String
        Property: symbol type: commonj.sdo#String
        Property: quantity type: commonj.sdo#Integer
        Property: balance type: commonj.sdo#Float
Type: http://www.bigbank.com/AccountService#customerID
        Property: customerID type: commonj.sdo#String
Type: http://www.bigbank.com/AccountService#getAccountReportResponse
        Property: accountReport type: http://www.bigbank.com/AccountService#Acco
untReport
Type: http://www.quickstockquote.com/StockQuoteService/#RootType
        Property: getQuote type: http://www.quickstockquote.com/StockQuoteServic
e/#getQuote
        Property: getQuoteResponse type: http://www.quickstockquote.com/StockQuo
teService/#getQuoteResponse
Type: http://www.quickstockquote.com/StockQuoteService/#getQuote
        Property: symbol type: commonj.sdo#String
Type: http://www.quickstockquote.com/StockQuoteService/#getQuoteResponse
        Property: quote type: commonj.sdo#Float

This still works. If I do a similar thing for the return type. 

   <xsd:complexType name="GetAccountReportResponseType">
     <xsd:sequence>  
       <xsd:element name="accountReport" type="tns:AccountReport"/>     
     </xsd:sequence>
   </xsd:complexType>

   <xsd:element name="getAccountReportResponse" 
type="tns:GetAccountReportResponseType"/>

The following types are generated and it doesn't work.

Type: commonj.sdo#BigDecimal
Type: commonj.sdo#BigInteger
Type: commonj.sdo#Boolean
Type: commonj.sdo#Byte
Type: commonj.sdo#Bytes
Type: commonj.sdo#ChangeSummary
Type: commonj.sdo#Character
Type: commonj.sdo#DataObject
Type: commonj.sdo#Date
Type: commonj.sdo#Double
Type: commonj.sdo#Float
Type: commonj.sdo#Integer
Type: commonj.sdo#Long
Type: commonj.sdo#OpenDataObject
Type: commonj.sdo#Short
Type: commonj.sdo#String
Type: commonj.sdo#URI
Type: http://www.bigbank.com/AccountService#AccountReport
        Property: checking type: http://www.bigbank.com/AccountService#CheckingA
ccount
        Property: savings type: http://www.bigbank.com/AccountService#SavingsAcc
ount
        Property: stocks type: http://www.bigbank.com/AccountService#StockAccoun
t
Type: http://www.bigbank.com/AccountService#CheckingAccount
        Property: accountNumber type: commonj.sdo#String
        Property: balance type: commonj.sdo#Float
Type: http://www.bigbank.com/AccountService#GetAccountReportResponseType
        Property: accountReport type: http://www.bigbank.com/AccountService#Acco
untReport
Type: http://www.bigbank.com/AccountService#GetAccountReportType
        Property: customerID type: http://www.bigbank.com/AccountService#custome
rID
Type: http://www.bigbank.com/AccountService#RootType
        Property: getAccountReport type: http://www.bigbank.com/AccountService#G
etAccountReportType
        Property: getAccountReportResponse type: http://www.bigbank.com/AccountS
ervice#GetAccountReportResponseType
Type: http://www.bigbank.com/AccountService#SavingsAccount
        Property: accountNumber type: commonj.sdo#String
        Property: balance type: commonj.sdo#Float
Type: http://www.bigbank.com/AccountService#StockAccount
        Property: accountNumber type: commonj.sdo#String
        Property: symbol type: commonj.sdo#String
        Property: quantity type: commonj.sdo#Integer
        Property: balance type: commonj.sdo#Float
Type: http://www.bigbank.com/AccountService#customerID
        Property: customerID type: commonj.sdo#String
Type: http://www.quickstockquote.com/StockQuoteService/#RootType
        Property: getQuote type: http://www.quickstockquote.com/StockQuoteServic
e/#getQuote
        Property: getQuoteResponse type: http://www.quickstockquote.com/StockQuo
teService/#getQuoteResponse
Type: http://www.quickstockquote.com/StockQuoteService/#getQuote
        Property: symbol type: commonj.sdo#String
Type: http://www.quickstockquote.com/StockQuoteService/#getQuoteResponse
        Property: quote type: commonj.sdo#Float

-- 
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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to