Hi Raymond, I am using 0.99 level of Tuscany.
I noticed that in all the samples included in Tuscany, the targetNamespace attribute is there. For example, samples\calculator-webapp-ws\src\main\webapp\META-INF\sca-contribution.xml has it: <contribution xmlns="http://www.osoa.org/xmlns/sca/1.0" targetNamespace="http://sample" xmlns:sample="http://sample"> <deployable composite="sample:Calculator"/> </contribution> But in this case targetNamespace == xmlns:sample so the QName printed is "{http://sample}Calculator". However if I remove the targetNamespace attribute then the QName printed is simply "Calculator". Thanks, Andrew Mak Rational SCA Tools Development IBM Toronto Lab Phone: 905-413-2361 Tie Line: 969-2361 Email: [EMAIL PROTECTED] Notes: Andrew Mak/Toronto/[EMAIL PROTECTED] "Raymond Feng" <[EMAIL PROTECTED]> 09/13/2007 06:08 PM Please respond to [email protected] To <[email protected]> cc Subject Re: reading in sca-contribution.xml file Hi, Thank you for reporting the issue. 1) The targetNamespace attribute shoudn't be in the sca-definitions.xml 2) Even with that, I tried a similar case and the result is good, i.e. {http://mytest.com}CalculatorComposite is returned. Which level of Tuscany code are you using? Thanks, Raymond ----- Original Message ----- From: "Andrew Mak" <[EMAIL PROTECTED]> To: <[email protected]> Sent: Thursday, September 13, 2007 12:19 PM Subject: reading in sca-contribution.xml file > Hi, > > I am trying to read in a simple sca-contribution.xml file using Tuscany. > Here is the contribution file: > > <?xml version="1.0" encoding="UTF-8"?> > <contribution xmlns="http://www.osoa.org/xmlns/sca/1.0" > targetNamespace="http://myexample.com/" > xmlns:test="http://mytest.com/"> > <deployable composite="test:CalculatorComposite"/> > </contribution> > > My test code looks like this: > > AssemblyFactory assemblyFactory = new DefaultAssemblyFactory(); > ContributionFactory contributionFactory = new ContributionFactoryImpl(); > > ContributionMetadataProcessor processor = new > ContributionMetadataProcessor(assemblyFactory, contributionFactory, null); > > > InputStream stream = new > FileInputStream("D:\\temp\\sca-contribution.xml"); > XMLStreamReader reader = > XMLInputFactory.newInstance().createXMLStreamReader(stream); > > Contribution contribution = processor.read(reader); > > List<Composite> composites = contribution.getDeployables(); > > for (Composite composite : composites) > System.out.println(composite.getName()); > > > The output which I get from running the code is: > > {http://myexample.com/}CalculatorComposite > > I'm puzzled by the fact the namespace for my composite is > http://myexample.com, which is the targetNamespace of my contribution > file. I expected the QName of my composite to be { > http://mytest.com/}CalculatorComposite since it's prefixed with "test". If > I remove the targetNamespace attribute completely, then my composite has > no namespace at all. What am I missing here? Is there something wrong > with my contribution file and/or my test code? > > Thanks in advance. Any help is much appreciated. > > Andrew --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
