On Thu, Jun 24, 2010 at 7:55 PM, Raymond Feng <[email protected]> wrote: > Hi, > I ran into two problems related to SCA property validation. > Assuming we have the following: > > a) The java component impl class > public class MyServiceImpl { > ... > @Property > private String p1; > ...} > By intropsection, we will have "p1" as a property (xsd:string). > b) The component definition > <component name="MyComponent"> > <implementation.java class="test.MyServiceImpl"/> > <property name="p1" value="xyz"/> > </component> > This will be reported by Tuscany as an error in two places: > 1) We check if the property element has either @type or @element. (From the > SCA assembly spec, if there is no type, it should use the one from the > componentType property. My understanding is that we can have none of the > attrs.) > Now if I change the property to be a JAXB complex type: > public class MyServiceImpl { > ... > @Property > private Customer p1; > ...} > <component name="MyComponent"> > <implementation.java class="test.MyServiceImpl"/> > <property name="p1" type="customer:Customer"/ xmlns:customer="..."> > </component> > 2) We also try to find an XSD definition that matches the customer:Customer > type but I actually have that from the JAXB annotations. This validation > seems to be too much and we should be able to just check the type > compatibility by the QName. > If we agree, I can relax the code to fix these issues.
Sounds ok to me. ...ant
