Also, with recent changes to have all non-spec extensions in a Tuscany
namespace, you should move your extension to the following namespace :

xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.0";

On 8/23/07, Raymond Feng <[EMAIL PROTECTED]> wrote:
> Hi,
>
> If the component has more than one services, you need to pass in the service
> name (componentName/serviceName) for the getService() call. The behavior is
> required by the spec.
>
> Thanks,
> Raymond
>
> ----- Original Message -----
> From: "lee zhenghui" <[EMAIL PROTECTED]>
> To: <tuscany-user@ws.apache.org>
> Sent: Wednesday, August 22, 2007 11:34 PM
> Subject: Re: Fw: component type impl
>
>
> > hi,
> >   My test case -- multiple serivces per component  run into a familiar
> > issue like this:
> > Exception in thread "main" org.osoa.sca.ServiceRuntimeException: The
> > component doesn't have exactly one service
> >    at
> > org.apache.tuscany.sca.core.component.ComponentContextHelper.getSingleService
> > (ComponentContextHelper.java:280)
> >    at
> > org.apache.tuscany.sca.core.component.ComponentContextImpl.createSelfReference
> > (ComponentContextImpl.java:121)
> >    at
> > org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.getServiceReference
> > (DefaultSCADomain.java:379)
> >    at
> > org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.getService
> > (DefaultSCADomain.java:323)
> >    at tuscany.sample.sync.client.Client.main(Client.java:33)
> >
> > I opened a JIRA 1560 to trace this issue.
> >
> > On 8/23/07, Florian Rosenberg <[EMAIL PROTECTED]> wrote:
> >>
> >>
> >> I finally could fix it. I stepped through with the debugger and found out
> >> that the reference to the implemention in the RuntimeComponent was always
> >> null which indicated that my ArtifactProcessor was not loaded.
> >>
> >> I had the following code in the
> >> org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor:
> >> com.ibm.sca.implementation.splice.SpliceArtifactProcessor;type=
> >> http://www.osoa.org/xmlns/sca/1.0#implementation.splice,model=com.ibm.sca.implementation.splice.SpliceImplementation
> >>
> >> but  actually the "type=" is now "qname=". It works again.
> >>
> >> -Florian
> >>
> >> ----- Forwarded by Florian Rosenberg/Watson/IBM on 08/22/2007 10:16 PM
> >> -----
> >>
> >> "Raymond Feng" <[EMAIL PROTECTED]> wrote on 08/22/2007 02:48:24 PM:
> >>
> >> > It seems that "implementation.splice" is not correctly handled. Do you
> >> have
> >> > the new implementation type registered with Tuscany? You probably need
> >> to
> >>
> >> > have following files:
> >> >
> >> > 1)
> >> > META-INF/services/org.apache.tuscany.sca.contribution.processor.
> >> > StAXArtifactProcessor
> >> > 2)
> >> > META-INF/services/org.apache.tuscany.sca.provider.
> >> > ImplementationProviderFactory
> >> >
> >> > Please refer to
> >> > https://svn.apache.
> >> >
> >>
> >> org/repos/asf/incubator/tuscany/java/sca/samples/implementation-crud-extension
> >>
> >> > for an example.
> >> >
> >> > Thanks,
> >> > Raymond
> >> >
> >> > ----- Original Message -----
> >> > From: "Florian Rosenberg" <[EMAIL PROTECTED]>
> >> > To: <tuscany-user@ws.apache.org>
> >> > Sent: Wednesday, August 22, 2007 11:08 AM
> >> > Subject: Re: component type impl
> >> >
> >> >
> >> > >
> >> > >
> >> > > "Luciano Resende" <[EMAIL PROTECTED]> wrote on 08/22/2007 01:57:46
> >> PM:
> >> > >
> >> > >> So, a quick explanation for this is that, recent changes made the
> >> > >> runtime behavior different.  If you are doing getService("ABC"), you
> >> > >> need to make sure that the target component has only one service,
> >> > >> otherwise you should use getService("ABC/ServiceName"). Please see
> >> > >> if
> >> > >> this helps in your case.
> >> > >
> >> > > thanks, but it does not help. I register my service internally using
> >> > > a
> >> > > JavaInterfaceContract in the implementation provider and it is the
> >> only
> >> > > service I have.
> >> > >
> >> > > either this code
> >> > > SpliceService spliceService =
> >> > > scaDomain.getService(SpliceService.class
> >> ,
> >> > > "FeedAggregatorComponent/SpliceService");
> >> > >
> >> > > nor the old version below without the /SpliceService work.
> >> > >
> >> > > Any other ideas?
> >> > >
> >> > > Thanks,
> >> > > -Florian
> >> > >
> >> > >> In my case, i had a bug where the composite wasn't finding the
> >> > >> components, and I was getting the same error message...
> >> > >>
> >> > >>
> >> > >> On 8/22/07, Florian Rosenberg <[EMAIL PROTECTED]> wrote:
> >> > >> >
> >> > >> >
> >> > >> > "Luciano Resende" <[EMAIL PROTECTED]> wrote on 08/22/2007
> >> 01:14:45
> >> > > PM:
> >> > >> >
> >> > >> > > This seems like a bug on latest SVN code, and I'm also seeing
> >> this
> >> > > for
> >> > >> > > other modules. Let me see if I can figure out what is causing
> >> this,
> >> > > as
> >> > >> > > it's affecting me as well.
> >> > >> >
> >> > >> > shall i open a jira issue for that?.
> >> > >> >
> >> > >> > -Florian
> >> > >> >
> >> > >> >
> >> > >> > > On 8/22/07, Florian Rosenberg <[EMAIL PROTECTED]> wrote:
> >> > >> > > >
> >> > >> > > > hi,
> >> > >> > > >
> >> > >> > > > I'm implementing a component type for running RESTful
> >> > >> > > > workflows
> >> (or
> >> > >> > > > compositions - whatever you wanna call it) within SCA.  The
> >> > >> > implementation
> >> > >> > > > worked fine but since I updated to the latest SVN head today
> >> > >> > > > it
> >> get
> >> > > the
> >> > >> > > > following error message when running it. After some time of
> >> > > debugging I
> >> > >> > > > couldn't really figure out what the problem is.
> >> > >> > > >
> >> > >> > > > This is the composite file is like this (the location
> >> > >> > > > indicates
> >> the
> >> > >> > > > directory where to workflows are stored):)
> >> > >> > > >
> >> > >> > > > <component name="FeedAggregatorComponent">
> >> > >> > > >   <implementation.splice location="c:/somelocation/" ... " />
> >> > >> > > > </component>
> >> > >> > > >
> >> > >> > > > Internally in the implementation calls, I register a service
> >> called
> >> > >> > > > SpliceService as JavaInterfaceContract which is the business
> >> > > interface
> >> > >> > for
> >> > >> > > > talking to my engine. In my test program I have to following:
> >> > >> > > >
> >> > >> > > > public static void main(String[] args) throws IOException {
> >> > >> > > >     SCADomain scaDomain = SCADomain.newInstance
> >> > >> > ("FeedAggregator.composite"
> >> > >> > > > );
> >> > >> > > >     SpliceService spliceService = scaDomain.getService
> >> > >> > (SpliceService.class,
> >> > >> > > > "FeedAggregatorComponent");
> >> > >> > > >
> >> > >> > > >     spliceService.performReceive("samples/feeds3/".,
> >> "getFeeds",
> >> > >> > > > "sortSample3", "text/plain");
> >> > >> > > >
> >> > >> > > >     System.in.read();
> >> > >> > > >     scaDomain.close();
> >> > >> > > > }
> >> > >> > > >
> >> > >> > > > The exception I receive is the following:
> >> > >> > > > -----------------------------------------
> >> > >> > > > Aug 22, 2007 12:17:38 PM
> >> > >> > > >
> >> org.apache.tuscany.sca.assembly.builder.impl.CompositeBuilderImpl$1
> >> > >> > problem
> >> > >> > > > WARNING: [WARNING] No implementation for component:
> >> > >> > FeedAggregatorComponent
> >> > >> > > > null
> >> > >> > > >
> >> > >> > > > Exception in thread "main"
> >> > >> > > > org.osoa.sca.ServiceRuntimeException
> >> :
> >> > > The
> >> > >> > > > component doesn't have exactly one service
> >> > >> > > >       at
> >> > >> > > > org.apache.tuscany.sca.core.component.ComponentContextImpl.
> >> > >> > > createSelfReference
> >> > >> > > > (
> >> > >> > > > ComponentContextImpl.java:135)
> >> > >> > > >       at
> >> > >> > > > org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.
> >> > >> > > getServiceReference
> >> > >> > > > (
> >> > >> > > > DefaultSCADomain.java:377)
> >> > >> > > >       at
> >> > >> > > >
> >> > > org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.getService(
> >> > >> > > > DefaultSCADomain.java:321)
> >> > >> > > >       at
> >> > >> > > > com.ibm.sca.implementation.splice.SpliceScaTester.main
> >> (
> >> > >> > > > SpliceScaTester.java:17)
> >> > >> > > >
> >> > >> > > >
> >> > >> > > > Any pointer are appreciated.
> >> > >> > > >
> >> > >> > > > Thanks,
> >> > >> > > > -Florian
> >> > >> > > >
> >> > >> > > >
> >> > >> > > >
> >> > > ---------------------------------------------------------------------
> >> > >> > > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> > >> > > > For additional commands, e-mail:
> >> [EMAIL PROTECTED]
> >> > >> > > >
> >> > >> > > >
> >> > >> > >
> >> > >> > >
> >> > >> > > --
> >> > >> > > Luciano Resende
> >> > >> > > Apache Tuscany Committer
> >> > >> > > http://people.apache.org/~lresende
> >> > >> > > http://lresende.blogspot.com/
> >> > >> > >
> >> > >> > >
> >> ---------------------------------------------------------------------
> >> > >> > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> > >> > > For additional commands, e-mail: [EMAIL PROTECTED]
> >> > >> > >
> >> > >> >
> >> > >> >
> >> > >> >
> >> ---------------------------------------------------------------------
> >> > >> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> > >> > For additional commands, e-mail: [EMAIL PROTECTED]
> >> > >> >
> >> > >> >
> >> > >>
> >> > >>
> >> > >> --
> >> > >> Luciano Resende
> >> > >> Apache Tuscany Committer
> >> > >> http://people.apache.org/~lresende
> >> > >> http://lresende.blogspot.com/
> >> > >>
> >> > >> ---------------------------------------------------------------------
> >> > >> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> > >> For additional commands, e-mail: [EMAIL PROTECTED]
> >> > >>
> >> > >
> >> > >
> >> > > ---------------------------------------------------------------------
> >> > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> > > For additional commands, e-mail: [EMAIL PROTECTED]
> >> > >
> >> >
> >> >
> >> > ---------------------------------------------------------------------
> >> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> > For additional commands, e-mail: [EMAIL PROTECTED]
> >> >
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> For additional commands, e-mail: [EMAIL PROTECTED]
> >>
> >>
> >
> >
> > --
> > Thanks & Best Wishes
> > -----------------------------------
> > Zhenghui Li(李正辉)
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


-- 
Luciano Resende
Apache Tuscany Committer
http://people.apache.org/~lresende
http://lresende.blogspot.com/

Reply via email to