See inline. Simon
wang feng wrote: > It's OK,Thanks Raymond. > > Thanks, > wangfeng > > > On 2008-02-20, Raymond Feng <[EMAIL PROTECTED]> wrote: > >> Hi, >> >> I debugged your test case and it turned out the problem is in your test >> case. There is a dangling type reference in helloworld.wsdl: >> >> <wsdl:types> >> <schema elementFormDefault="qualified" >> targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema"> >> >> <element name="getGreetings"> >> >> <complexType> >> >> <sequence> >> >> <element name="name" type="xsd:Name"/> >> >> </sequence> >> >> </complexType> >> >> </element> >> >> It should be: <element name="name" type="tns:Name"/>. >> >> After fixing the issue, I can run it successfully with the import.sdo >> statement. >> Can we track this as a JIRA? A simple user error like this should not produce a ClassCastException deep in EMF. Simon >> Thanks, >> >> Raymond >> >> ----- Original Message ----- >> From: "wang feng" <[EMAIL PROTECTED]> >> To: <tuscany-dev@ws.apache.org> >> Sent: Tuesday, February 19, 2008 5:04 PM >> Subject: Re: Re: How to use SDO in tuscany sca? >> >> >>> I add the element 'import.sdo' in the composite,but the sample throws >>> another exception. >>> >>> Exception in thread "main" java.lang.ClassCastException: The value of type >>> 'class org.apache.tuscany.sdo.impl.DynamicDataObjectImpl' must be of type >>> 'class java.lang.String' >>> at >>> org.eclipse.emf.ecore.impl.EStructuralFeatureImpl$InternalSettingDelegateSingleDataUnsettableStatic.validate(EStructuralFeatureImpl.java:2195) >>> at >>> org.eclipse.emf.ecore.impl.EStructuralFeatureImpl$InternalSettingDelegateSingleDataUnsettable.dynamicSet(EStructuralFeatureImpl.java:2116) >>> at >>> org.eclipse.emf.ecore.impl.BasicEObjectImpl.eDynamicSet(BasicEObjectImpl.java:709) >>> at >>> org.apache.tuscany.sdo.impl.DynamicDataObjectImpl.eDynamicSet(DynamicDataObjectImpl.java:160) >>> at org.apache.tuscany.sdo.impl.DataObjectImpl.eSet(DataObjectImpl.java:1468) >>> at >>> org.eclipse.emf.ecore.impl.BasicEObjectImpl.eSet(BasicEObjectImpl.java:654) >>> at org.apache.tuscany.sdo.impl.DataObjectImpl.set(DataObjectImpl.java:146) >>> at org.apache.tuscany.sdo.impl.DataObjectImpl.set(DataObjectImpl.java:106) >>> at >>> org.apache.tuscany.sca.databinding.sdo.SDOWrapperHandler.setChild(SDOWrapperHandler.java:71) >>> at >>> org.apache.tuscany.sca.core.databinding.transformers.Input2InputTransformer.transform(Input2InputTransformer.java:131) >>> at >>> org.apache.tuscany.sca.core.databinding.transformers.Input2InputTransformer.transform(Input2InputTransformer.java:1) >>> at >>> org.apache.tuscany.sca.databinding.impl.MediatorImpl.mediate(MediatorImpl.java:73) >>> at >>> org.apache.tuscany.sca.core.databinding.wire.DataTransformationInterceptor.transform(DataTransformationInterceptor.java:175) >>> at >>> org.apache.tuscany.sca.core.databinding.wire.DataTransformationInterceptor.invoke(DataTransformationInterceptor.java:72) >>> at >>> org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:261) >>> at >>> org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:149) >>> at $Proxy5.getGreetings(Unknown Source) >>> at helloworld.HelloWorldClient.test(HelloWorldClient.java:53) >>> at helloworld.HelloWorldClient.main(HelloWorldClient.java:39) >>> >>> Is something wrong? Where can I found a sample whith dynamic SDO? >>> >>> Thanks, >>> wangfeng >>> >>> >>> On 2008-02-19, Scott Kurz <[EMAIL PROTECTED]> wrote: >>> >>>> Wang, >>>> >>>> I'm guessing the problem is probably that you need to register your >>>> app types with the appropriate context established by the Tuscany >>>> runtime. >>>> >>>> Tuscany typically does this automatically, now, for static SDO. For >>>> dynamic SDO (i.e. DataObject), you would currently put something like >>>> this in your SCDL ( *.composite) file: >>>> >>>> <composite ... >>>> >>>> xmlns:dbsdo="http://tuscany.apache.org/xmlns/sca/databinding/sdo/1.0" >>>> ....> >>>> >>>> <dbsdo:import.sdo location="wsdl/helloworld.wsdl"/> >>>> >>>> (I looked in your zip and you don't seem to use the types in the XSD, >>>> so I pointed to the WSDL instead... but you can have as multiple >>>> <import.sdo> elements). >>>> >>>> This relation between SCA and SDO scopes is defined by Tuscany, not a >>>> spec, at the moment. >>>> >>>> Scott >>>> >>>> >>>> On Feb 18, 2008 9:15 AM, wang feng <[EMAIL PROTECTED]> wrote: >>>>> Hi all, >>>>> >>>>> I do a sample which has a parameter's type is DataObject,and deploy >>>>> the component with webservice. >>>>> When I invoke the service ,throws an error. >>>>> Is my usage wrong? >>>>> >>>>> My sample like this. >>>>> >>>>> helloworld.composite >>>>> <composite xmlns="http://www.osoa.org/xmlns/sca/1.0" >>>>> targetNamespace="http://helloworld" >>>>> xmlns:hw="http://helloworld" >>>>> name="helloworldws"> >>>>> <component name="HelloWorldServiceComponent"> >>>>> <implementation.java class="helloworld.HelloWorldImpl" /> >>>>> <service name="HelloWorldService"> >>>>> <interface.wsdl >>>>> interface="http://helloworld#wsdl.interface(HelloWorld)" /> >>>>> <binding.ws/> >>>>> </service> >>>>> </component> >>>>> </composite> >>>>> >>>>> HelloWorldImpl.java >>>>> @Service(HelloWorldService.class) >>>>> public class HelloWorldImpl implements HelloWorldService { >>>>> public String getGreetings(DataObject name) { >>>>> return "Hello " + name.getString("first") + " " + >>>>> name.getString("last"); >>>>> } >>>>> } >>>>> >>>>> You can download the full testcase on >>>>> http://www.blogjava.net/Files/wangfeng/src.zip >>>>> >>>>> Thanks >>>>> Wang Feng >>>>> >>>>> --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]