Properties containing complex types cause failure
-------------------------------------------------

                 Key: TUSCANY-722
                 URL: http://issues.apache.org/jira/browse/TUSCANY-722
             Project: Tuscany
          Issue Type: Bug
          Components: C++ SCA
    Affects Versions: Cpp-current
            Reporter: Andrew Borley
            Priority: Minor


A .componentType such as:
<componentType xmlns="http://www.osoa.org/xmlns/sca/1.0";
               xmlns:xsd="http://www.w3.org/2001/XMLSchema";
               xmlns:ap="http://andyprop.com";>

        <service name="CalculatorService">
                <interface.python/>
        </service>

       <property name="test" type="ap:SomeData"/>
</componentType>

And a composite such as:
<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"; 
        name="sample.calculator">
    <component name="CalculatorComponent">
        <implementation.python module="CalculatorImpl" scope="composite"/>
        <property name="test1"><somedata 
xmlns="http://andyprop.com";><stuff>123</stuff><stuff>345</stuff></somedata></property>
    </component>
</composite>

And a .xsd such as:
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema";
    targetNamespace="http://andyprop.com";
    xmlns:ap="http://andyprop.com";
    elementFormDefault="qualified">
        
    <element name="somedata" type="ap:SomeData"/>
    <complexType name="SomeData">
        <complexContent>
            <sequence>
                <element name="stuff" type="xsd:integer"/>
            </sequence>
                </complexContent>
        </complexType>
</schema>

Causes a failure in SCA:
  Entering: ModelLoader::mapPackageComposite
    ModelLoader::mapPackageComposite: Loading composite: sample.calculator, 
root Dir: d:\tuscany\cpp\sca\samples\PythonCalculator\deploy\packages\samp
le.calculator
  Entering: ComponentType::constructor
  Exiting: ComponentType::constructor
  Entering: Composite::constructor
  Exiting: Composite::constructor
  Entering: ComponentType::constructor
  Exiting: ComponentType::constructor
  Entering: PythonImplementation::constructor
  Exiting: PythonImplementation::constructor
  Entering: PythonInterface::constructor
  Exiting: PythonInterface::constructor
  Entering: PythonInterface::constructor
  Exiting: PythonInterface::constructor
ModelLoader::addComponent 
(d:\tuscany\cpp\sca\samples\PythonCalculator\deploy\packages\sample.calculator//CalculatorImpl.componentType):
 Exception cau
ght: Type not found: http://andyprop.com SomeData
  SystemConfigurationException raised: Type not found: http://andyprop.com 
SomeData

This is due to the .composite and .componentType files being read in (in the 
ModelLoader::mapPackageComposite method) before the schemas in any xsd and wsdl 
files are imported (in the ModelLoader::loadTypeMetadata method). This happens 
in the ModelLoader::loadPackageCompositeFile method.

-- 
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