I added the code to check if the webapp has already been configured with Tuscany under r779348.

Thanks,
Raymond
--------------------------------------------------
From: "Raymond Feng" <[email protected]>
Sent: Wednesday, May 27, 2009 9:51 AM
To: <[email protected]>; <[email protected]>
Subject: Re: Tuscany Tomcat integration

It seems the hook is not tolerating the case where the webapp is already configured with Tuscany listener/filter and packaged with Tuscany jars. I got the following error as I already have the helloworld webapp installed before adding tuscany.war.

May 27, 2009 9:43:01 AM org.apache.catalina.core.ApplicationContext log
INFO: ContextListener: contextInitialized()
May 27, 2009 9:43:01 AM org.apache.catalina.core.ApplicationContext log
INFO: SessionListener: contextInitialized()
May 27, 2009 9:43:37 AM org.apache.catalina.core.ApplicationContext log
INFO: SessionListener: contextDestroyed()
May 27, 2009 9:43:37 AM org.apache.catalina.core.ApplicationContext log
INFO: ContextListener: contextDestroyed()
May 27, 2009 9:43:47 AM org.apache.catalina.core.StandardContext listenerStart SEVERE: Exception sending context initialized event to listener instance of class org.apache.tuscany.sca.host.webapp.TuscanyContextListener java.lang.IllegalStateException: org.apache.tuscany.sca.contribution.processor.ContributionResolveException: org.apache.tuscany.sca.implementation.java.introspect.impl.DuplicateInitException: More than one initializer found on implementaton
at org.apache.tuscany.sca.node.impl.NodeImpl.start(NodeImpl.java:89)
at org.apache.tuscany.sca.host.webapp.ServletHostHelper.createNode(ServletHostHelper.java:172) at org.apache.tuscany.sca.host.webapp.ServletHostHelper.init(ServletHostHelper.java:124) at org.apache.tuscany.sca.host.webapp.TuscanyContextListener.contextInitialized(TuscanyContextListener.java:33) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3843) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4342) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:830)
at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:719)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:490)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1149)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:516)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
Caused by: org.apache.tuscany.sca.contribution.processor.ContributionResolveException: org.apache.tuscany.sca.implementation.java.introspect.impl.DuplicateInitException: More than one initializer found on implementaton at org.apache.tuscany.sca.implementation.java.xml.JavaImplementationProcessor.resolve(JavaImplementationProcessor.java:185) at org.apache.tuscany.sca.implementation.java.xml.JavaImplementationProcessor.resolve(JavaImplementationProcessor.java:1) at org.apache.tuscany.sca.contribution.processor.DefaultStAXArtifactProcessorExtensionPoint$LazyStAXArtifactProcessor.resolve(DefaultStAXArtifactProcessorExtensionPoint.java:416) at org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactProcessor.resolve(ExtensibleStAXArtifactProcessor.java:196) at org.apache.tuscany.sca.assembly.xml.BaseAssemblyProcessor.resolveImplementation(BaseAssemblyProcessor.java:353) at org.apache.tuscany.sca.assembly.xml.CompositeProcessor.resolve(CompositeProcessor.java:991) at org.apache.tuscany.sca.assembly.xml.CompositeProcessor.resolve(CompositeProcessor.java:1) at org.apache.tuscany.sca.contribution.processor.DefaultStAXArtifactProcessorExtensionPoint$LazyStAXArtifactProcessor.resolve(DefaultStAXArtifactProcessorExtensionPoint.java:416) at org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactProcessor.resolve(ExtensibleStAXArtifactProcessor.java:196) at org.apache.tuscany.sca.assembly.xml.CompositeDocumentProcessor.resolve(CompositeDocumentProcessor.java:167) at org.apache.tuscany.sca.assembly.xml.CompositeDocumentProcessor.resolve(CompositeDocumentProcessor.java:1) at org.apache.tuscany.sca.contribution.processor.DefaultURLArtifactProcessorExtensionPoint$LazyURLArtifactProcessor.resolve(DefaultURLArtifactProcessorExtensionPoint.java:357) at org.apache.tuscany.sca.contribution.processor.ExtensibleURLArtifactProcessor.resolve(ExtensibleURLArtifactProcessor.java:121) at org.apache.tuscany.sca.contribution.processor.impl.ContributionContentProcessor.resolve(ContributionContentProcessor.java:216) at org.apache.tuscany.sca.contribution.processor.impl.ContributionContentProcessor.resolve(ContributionContentProcessor.java:1) at org.apache.tuscany.sca.contribution.processor.DefaultURLArtifactProcessorExtensionPoint$LazyURLArtifactProcessor.resolve(DefaultURLArtifactProcessorExtensionPoint.java:357) at org.apache.tuscany.sca.node.impl.NodeFactoryImpl.configureNode(NodeFactoryImpl.java:581)
at org.apache.tuscany.sca.node.impl.NodeImpl.start(NodeImpl.java:75)
... 27 more
Caused by: org.apache.tuscany.sca.implementation.java.introspect.impl.DuplicateInitException: More than one initializer found on implementaton at org.apache.tuscany.sca.implementation.java.introspect.impl.InitProcessor.visitMethod(InitProcessor.java:55) at org.apache.tuscany.sca.implementation.java.impl.JavaClassIntrospectorImpl.introspectClass(JavaClassIntrospectorImpl.java:109) at org.apache.tuscany.sca.implementation.java.impl.JavaImplementationFactoryImpl.createJavaImplementation(JavaImplementationFactoryImpl.java:55) at org.apache.tuscany.sca.implementation.java.xml.JavaImplementationProcessor.resolve(JavaImplementationProcessor.java:183)
... 44 more
May 27, 2009 9:43:47 AM org.apache.catalina.core.ApplicationContext log
INFO: ContextListener: contextInitialized()
May 27, 2009 9:43:47 AM org.apache.catalina.core.ApplicationContext log
INFO: SessionListener: contextInitialized()


--------------------------------------------------
From: "ant elder" <[email protected]>
Sent: Tuesday, May 26, 2009 11:43 PM
To: <[email protected]>
Subject: Re: Tuscany Tomcat integration

On Tue, May 26, 2009 at 6:28 PM, ant elder <[email protected]> wrote:

and it has the limitation that we
can't do SCA injection into JEE artifacts like servlets which the deep
integration will allow.


FYI in r779023 i've added this injection support so you can now use
SCA annotations in things like Servlets, and added a
helloworld-servlet example to demonstrate this.

  ...ant

Reply via email to