You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by Van Riper <va...@gmail.com> on 2007/08/04 01:39:46 UTC

ActiveMQ Problem migrating from WebWork 2.2.2 to Struts 2.0.9

I'm running into trouble migrating my existing web application from
WebWork 2.2.2 to Struts 2.0.9. We are using JSE6 (AKA JDK 1.6) and
Tomcat 5.5.17. I did everything mentioned on the wiki plus a bunch
more stuff:

http://struts.apache.org/2.x/docs/webwork-2-migration-strategies.html

If I ever get this working I promise to provide feedback to update
this page based on my experiences migrating to Struts 2.0.9. To set
things up, I was fairly quickly able to get to the point that I had a
clean build of my webapp after swapping out WebWork and swapping in
Struts 2.0.9. Hard as it may be to believe, we were not using Spring
IoC. I had that turned off in my webwork.properties like so:

### Configuration for IoC Container
### webwork.objectFactory=spring

However, it appears that S2 really wants some IoC container because I
kept getting complaints with this commented out. So, I uncommented it
in my renamed struts. properties file (added necessary listener in
web.xml too) and included the latest Spring Framework jar file
(2.0.6). This in turn gave me complaints about missing ActiveMQ
classes and including the main jar file for latest ActiveMQ (4.1.1)
didn't seem to help. That catches everyone up to my current situation.
Here is the full console log output for my latest failed webapp
startup:

<CONSOLE-OUTPUT>

cmd /c C:\java\apache-tomcat-5.5.17\bin\catalina.bat run
Using CATALINA_BASE:   C:\Documents and
Settings\van\.IntelliJIdea60\system\tomcat_Unnamed_7c1b22c1
Using CATALINA_HOME:   C:\java\apache-tomcat-5.5.17
Using CATALINA_TMPDIR:
C:\svn\head\dev\projects\krillion\dist\catalina_bases\browser\dev\temp
Using JRE_HOME:        C:\java\jdk1.6.0
Connected to the target VM, address: '127.0.0.1:1866', transport: 'socket'
Aug 3, 2007 4:11:03 PM org.apache.coyote.http11.Http11AprProtocol init
INFO: Initializing Coyote HTTP/1.1 on http-8000
Aug 3, 2007 4:11:03 PM org.apache.coyote.ajp.AjpAprProtocol init
INFO: Initializing Coyote AJP/1.3 on ajp-8002
Aug 3, 2007 4:11:03 PM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 640 ms
Aug 3, 2007 4:11:03 PM org.apache.catalina.core.StandardService start
INFO: Starting service Catalina
Aug 3, 2007 4:11:03 PM org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/5.5.17
Aug 3, 2007 4:11:03 PM org.apache.catalina.core.StandardHost start
INFO: XML validation disabled
16:11:07,218  INFO [/]: Initializing Spring root WebApplicationContext
16:11:07,218  INFO ContextLoader: Root WebApplicationContext:
initialization started
16:11:07,296  INFO XmlWebApplicationContext: Refreshing
org.springframework.web.context.support.XmlWebApplicationContext@d5276a:
display name [Root WebApplicationContext]; startup date [Fri Aug 03
16:11:07 PDT 2007]; root of context hierarchy
16:11:07,500  INFO XmlBeanDefinitionReader: Loading XML bean
definitions from ServletContext resource
[/WEB-INF/applicationContext.xml]
16:11:07,718  INFO XmlWebApplicationContext: Bean factory for
application context
[org.springframework.web.context.support.XmlWebApplicationContext@d5276a]:
org.springframework.beans.factory.support.DefaultListableBeanFactory@1f51e5c
16:11:07,812  INFO DefaultListableBeanFactory: Pre-instantiating
singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@1f51e5c:
defining beans [connectionFactory,messageworkDestination,jmsTemplate,mapMessageFactory,textMessageFactory,actionMessageSender];
root of factory hierarchy
16:11:07,812  INFO DefaultListableBeanFactory: Destroying singletons
in org.springframework.beans.factory.support.DefaultListableBeanFactory@1f51e5c:
defining beans [connectionFactory,messageworkDestination,jmsTemplate,mapMessageFactory,textMessageFactory,actionMessageSender];
root of factory hierarchy
16:11:07,828 ERROR ContextLoader: Context initialization failed
org.springframework.beans.factory.CannotLoadBeanClassException: Cannot
find class [org.codehaus.activemq.ActiveMQConnectionFactory] for bean
with name 'connectionFactory' defined in ServletContext resource
[/WEB-INF/applicationContext.xml]; nested exception is
java.lang.ClassNotFoundException:
org.codehaus.activemq.ActiveMQConnectionFactory
Caused by:
java.lang.ClassNotFoundException:
org.codehaus.activemq.ActiveMQConnectionFactory
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1352)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1198)
	at org.springframework.util.ClassUtils.forName(ClassUtils.java:201)
	at org.springframework.beans.factory.support.AbstractBeanDefinition.resolveBeanClass(AbstractBeanDefinition.java:327)
	at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1075)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:282)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352)
	at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:244)
	at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:187)
	at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3729)
	at org.apache.catalina.core.StandardContext.start(StandardContext.java:4187)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
	at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:608)
	at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:535)
	at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:470)
	at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1122)
	at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:310)
	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1021)
	at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
	at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
	at org.apache.catalina.core.StandardService.start(StandardService.java:450)
	at org.apache.catalina.core.StandardServer.start(StandardServer.java:709)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:551)
	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:294)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:432)
16:11:07,843 ERROR [/]: Exception sending context initialized event to
listener instance of class
org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.CannotLoadBeanClassException: Cannot
find class [org.codehaus.activemq.ActiveMQConnectionFactory] for bean
with name 'connectionFactory' defined in ServletContext resource
[/WEB-INF/applicationContext.xml]; nested exception is
java.lang.ClassNotFoundException:
org.codehaus.activemq.ActiveMQConnectionFactory
Caused by:
java.lang.ClassNotFoundException:
org.codehaus.activemq.ActiveMQConnectionFactory
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1352)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1198)
	at org.springframework.util.ClassUtils.forName(ClassUtils.java:201)
	at org.springframework.beans.factory.support.AbstractBeanDefinition.resolveBeanClass(AbstractBeanDefinition.java:327)
	at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1075)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:282)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352)
	at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:244)
	at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:187)
	at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3729)
	at org.apache.catalina.core.StandardContext.start(StandardContext.java:4187)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
	at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:608)
	at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:535)
	at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:470)
	at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1122)
	at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:310)
	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1021)
	at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
	at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
	at org.apache.catalina.core.StandardService.start(StandardService.java:450)
	at org.apache.catalina.core.StandardServer.start(StandardServer.java:709)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:551)
	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:294)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:432)
Aug 3, 2007 4:11:07 PM org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart
Aug 3, 2007 4:11:07 PM org.apache.catalina.core.StandardContext start
SEVERE: Context [] startup failed due to previous errors
16:11:07,859  INFO [/]: Closing Spring root WebApplicationContext
Aug 3, 2007 4:11:08 PM org.apache.coyote.http11.Http11AprProtocol start
INFO: Starting Coyote HTTP/1.1 on http-8000
Aug 3, 2007 4:11:08 PM org.apache.coyote.ajp.AjpAprProtocol start
INFO: Starting Coyote AJP/1.3 on ajp-8002
Aug 3, 2007 4:11:08 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 4969 ms

</CONSOLE-OUTPUT>

The peculiar thing about this failure is that it is complaining about
not being able to load this class:

org.codehaus.activemq.ActiveMQConnectionFactory

When I crack open the latest ActiveMQ jar from Apache site, there is
an ActiveMQConnectionFactory class. However, it is packaged like so:

org.apache.activemq.ActiveMQConnectionFactory

I am beginning to spin my wheels on this. Any pointers or suggestions
would be much appreciated. If I can't figure this out, I may have to
admit defeat and switch to Rails development. ;-)

-Van

Mike Van Riper
van_riper@dev.java.net

Silicon Valley Web Developer JUG
https://sv-web-jug.dev.java.net

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: ActiveMQ Problem migrating from WebWork 2.2.2 to Struts 2.0.9

Posted by Van Riper <va...@gmail.com>.
Yup! I had updated build process to exclude the spring plugin, but, I
never did a full rebuild that would have nuked it from my
distribution. Doh!

I'm not past this problem. I'm even see struts tags execute in the
JSPs forwarded to from my actions. However, I am now hitting my head
on a problem with the interaction of Sitemesh with Struts 2.0.9.  The
WW2.2 tags which have been converted to S2.0.9 tags which are working
fine in the main JSPs being evaluated are failing with an NPE on the
first struts tag encountered in my sitemesh decorator JSP file.

I'll start a new thread with a more appropriate topic for my current problem.

-Van

P.S. I already found the Wiki docs about sitemesh integration, but,
that was not enough in my case. :-(

On 8/3/07, Don Brown <do...@gmail.com> wrote:
> Struts 2 behaves quite differently based on what plugins are
> installed.  Looks like you are using the Spring plugin, which it
> sounds like you shouldn't be.  Remove the
> struts2-spring-plugin-VERSION.jar from your WEB-INF/lib.
>
> Don
>
> On 8/4/07, Van Riper <va...@gmail.com> wrote:
> > I'm running into trouble migrating my existing web application from
> > WebWork 2.2.2 to Struts 2.0.9. We are using JSE6 (AKA JDK 1.6) and
> > Tomcat 5.5.17. I did everything mentioned on the wiki plus a bunch
> > more stuff:
> >
> > http://struts.apache.org/2.x/docs/webwork-2-migration-strategies.html
> >
> > If I ever get this working I promise to provide feedback to update
> > this page based on my experiences migrating to Struts 2.0.9. To set
> > things up, I was fairly quickly able to get to the point that I had a
> > clean build of my webapp after swapping out WebWork and swapping in
> > Struts 2.0.9. Hard as it may be to believe, we were not using Spring
> > IoC. I had that turned off in my webwork.properties like so:
> >
> > ### Configuration for IoC Container
> > ### webwork.objectFactory=spring
> >
> > However, it appears that S2 really wants some IoC container because I
> > kept getting complaints with this commented out. So, I uncommented it
> > in my renamed struts. properties file (added necessary listener in
> > web.xml too) and included the latest Spring Framework jar file
> > (2.0.6). This in turn gave me complaints about missing ActiveMQ
> > classes and including the main jar file for latest ActiveMQ (4.1.1)
> > didn't seem to help. That catches everyone up to my current situation.
> > Here is the full console log output for my latest failed webapp
> > startup:
> >
> > <CONSOLE-OUTPUT>
> >
> > cmd /c C:\java\apache-tomcat-5.5.17\bin\catalina.bat run
> > Using CATALINA_BASE:   C:\Documents and
> > Settings\van\.IntelliJIdea60\system\tomcat_Unnamed_7c1b22c1
> > Using CATALINA_HOME:   C:\java\apache-tomcat-5.5.17
> > Using CATALINA_TMPDIR:
> > C:\svn\head\dev\projects\krillion\dist\catalina_bases\browser\dev\temp
> > Using JRE_HOME:        C:\java\jdk1.6.0
> > Connected to the target VM, address: '127.0.0.1:1866', transport: 'socket'
> > Aug 3, 2007 4:11:03 PM org.apache.coyote.http11.Http11AprProtocol init
> > INFO: Initializing Coyote HTTP/1.1 on http-8000
> > Aug 3, 2007 4:11:03 PM org.apache.coyote.ajp.AjpAprProtocol init
> > INFO: Initializing Coyote AJP/1.3 on ajp-8002
> > Aug 3, 2007 4:11:03 PM org.apache.catalina.startup.Catalina load
> > INFO: Initialization processed in 640 ms
> > Aug 3, 2007 4:11:03 PM org.apache.catalina.core.StandardService start
> > INFO: Starting service Catalina
> > Aug 3, 2007 4:11:03 PM org.apache.catalina.core.StandardEngine start
> > INFO: Starting Servlet Engine: Apache Tomcat/5.5.17
> > Aug 3, 2007 4:11:03 PM org.apache.catalina.core.StandardHost start
> > INFO: XML validation disabled
> > 16:11:07,218  INFO [/]: Initializing Spring root WebApplicationContext
> > 16:11:07,218  INFO ContextLoader: Root WebApplicationContext:
> > initialization started
> > 16:11:07,296  INFO XmlWebApplicationContext: Refreshing
> > org.springframework.web.context.support.XmlWebApplicationContext@d5276a:
> > display name [Root WebApplicationContext]; startup date [Fri Aug 03
> > 16:11:07 PDT 2007]; root of context hierarchy
> > 16:11:07,500  INFO XmlBeanDefinitionReader: Loading XML bean
> > definitions from ServletContext resource
> > [/WEB-INF/applicationContext.xml]
> > 16:11:07,718  INFO XmlWebApplicationContext: Bean factory for
> > application context
> > [org.springframework.web.context.support.XmlWebApplicationContext@d5276a]:
> > org.springframework.beans.factory.support.DefaultListableBeanFactory@1f51e5c
> > 16:11:07,812  INFO DefaultListableBeanFactory: Pre-instantiating
> > singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@1f51e5c:
> > defining beans [connectionFactory,messageworkDestination,jmsTemplate,mapMessageFactory,textMessageFactory,actionMessageSender];
> > root of factory hierarchy
> > 16:11:07,812  INFO DefaultListableBeanFactory: Destroying singletons
> > in org.springframework.beans.factory.support.DefaultListableBeanFactory@1f51e5c:
> > defining beans [connectionFactory,messageworkDestination,jmsTemplate,mapMessageFactory,textMessageFactory,actionMessageSender];
> > root of factory hierarchy
> > 16:11:07,828 ERROR ContextLoader: Context initialization failed
> > org.springframework.beans.factory.CannotLoadBeanClassException: Cannot
> > find class [org.codehaus.activemq.ActiveMQConnectionFactory] for bean
> > with name 'connectionFactory' defined in ServletContext resource
> > [/WEB-INF/applicationContext.xml]; nested exception is
> > java.lang.ClassNotFoundException:
> > org.codehaus.activemq.ActiveMQConnectionFactory
> > Caused by:
> > java.lang.ClassNotFoundException:
> > org.codehaus.activemq.ActiveMQConnectionFactory
> >         at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1352)
> >         at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1198)
> >         at org.springframework.util.ClassUtils.forName(ClassUtils.java:201)
> >         at org.springframework.beans.factory.support.AbstractBeanDefinition.resolveBeanClass(AbstractBeanDefinition.java:327)
> >         at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1075)
> >         at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:282)
> >         at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352)
> >         at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:244)
> >         at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:187)
> >         at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
> >         at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3729)
> >         at org.apache.catalina.core.StandardContext.start(StandardContext.java:4187)
> >         at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
> >         at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
> >         at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
> >         at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:608)
> >         at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:535)
> >         at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:470)
> >         at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1122)
> >         at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:310)
> >         at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
> >         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1021)
> >         at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
> >         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
> >         at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
> >         at org.apache.catalina.core.StandardService.start(StandardService.java:450)
> >         at org.apache.catalina.core.StandardServer.start(StandardServer.java:709)
> >         at org.apache.catalina.startup.Catalina.start(Catalina.java:551)
> >         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:294)
> >         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:432)
> > 16:11:07,843 ERROR [/]: Exception sending context initialized event to
> > listener instance of class
> > org.springframework.web.context.ContextLoaderListener
> > org.springframework.beans.factory.CannotLoadBeanClassException: Cannot
> > find class [org.codehaus.activemq.ActiveMQConnectionFactory] for bean
> > with name 'connectionFactory' defined in ServletContext resource
> > [/WEB-INF/applicationContext.xml]; nested exception is
> > java.lang.ClassNotFoundException:
> > org.codehaus.activemq.ActiveMQConnectionFactory
> > Caused by:
> > java.lang.ClassNotFoundException:
> > org.codehaus.activemq.ActiveMQConnectionFactory
> >         at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1352)
> >         at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1198)
> >         at org.springframework.util.ClassUtils.forName(ClassUtils.java:201)
> >         at org.springframework.beans.factory.support.AbstractBeanDefinition.resolveBeanClass(AbstractBeanDefinition.java:327)
> >         at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1075)
> >         at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:282)
> >         at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352)
> >         at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:244)
> >         at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:187)
> >         at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
> >         at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3729)
> >         at org.apache.catalina.core.StandardContext.start(StandardContext.java:4187)
> >         at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
> >         at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
> >         at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
> >         at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:608)
> >         at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:535)
> >         at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:470)
> >         at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1122)
> >         at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:310)
> >         at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
> >         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1021)
> >         at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
> >         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
> >         at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
> >         at org.apache.catalina.core.StandardService.start(StandardService.java:450)
> >         at org.apache.catalina.core.StandardServer.start(StandardServer.java:709)
> >         at org.apache.catalina.startup.Catalina.start(Catalina.java:551)
> >         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:294)
> >         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:432)
> > Aug 3, 2007 4:11:07 PM org.apache.catalina.core.StandardContext start
> > SEVERE: Error listenerStart
> > Aug 3, 2007 4:11:07 PM org.apache.catalina.core.StandardContext start
> > SEVERE: Context [] startup failed due to previous errors
> > 16:11:07,859  INFO [/]: Closing Spring root WebApplicationContext
> > Aug 3, 2007 4:11:08 PM org.apache.coyote.http11.Http11AprProtocol start
> > INFO: Starting Coyote HTTP/1.1 on http-8000
> > Aug 3, 2007 4:11:08 PM org.apache.coyote.ajp.AjpAprProtocol start
> > INFO: Starting Coyote AJP/1.3 on ajp-8002
> > Aug 3, 2007 4:11:08 PM org.apache.catalina.startup.Catalina start
> > INFO: Server startup in 4969 ms
> >
> > </CONSOLE-OUTPUT>
> >
> > The peculiar thing about this failure is that it is complaining about
> > not being able to load this class:
> >
> > org.codehaus.activemq.ActiveMQConnectionFactory
> >
> > When I crack open the latest ActiveMQ jar from Apache site, there is
> > an ActiveMQConnectionFactory class. However, it is packaged like so:
> >
> > org.apache.activemq.ActiveMQConnectionFactory
> >
> > I am beginning to spin my wheels on this. Any pointers or suggestions
> > would be much appreciated. If I can't figure this out, I may have to
> > admit defeat and switch to Rails development. ;-)
> >
> > -Van
> >
> > Mike Van Riper
> > van_riper@dev.java.net
> >
> > Silicon Valley Web Developer JUG
> > https://sv-web-jug.dev.java.net

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: ActiveMQ Problem migrating from WebWork 2.2.2 to Struts 2.0.9

Posted by Don Brown <do...@gmail.com>.
Struts 2 behaves quite differently based on what plugins are
installed.  Looks like you are using the Spring plugin, which it
sounds like you shouldn't be.  Remove the
struts2-spring-plugin-VERSION.jar from your WEB-INF/lib.

Don

On 8/4/07, Van Riper <va...@gmail.com> wrote:
> I'm running into trouble migrating my existing web application from
> WebWork 2.2.2 to Struts 2.0.9. We are using JSE6 (AKA JDK 1.6) and
> Tomcat 5.5.17. I did everything mentioned on the wiki plus a bunch
> more stuff:
>
> http://struts.apache.org/2.x/docs/webwork-2-migration-strategies.html
>
> If I ever get this working I promise to provide feedback to update
> this page based on my experiences migrating to Struts 2.0.9. To set
> things up, I was fairly quickly able to get to the point that I had a
> clean build of my webapp after swapping out WebWork and swapping in
> Struts 2.0.9. Hard as it may be to believe, we were not using Spring
> IoC. I had that turned off in my webwork.properties like so:
>
> ### Configuration for IoC Container
> ### webwork.objectFactory=spring
>
> However, it appears that S2 really wants some IoC container because I
> kept getting complaints with this commented out. So, I uncommented it
> in my renamed struts. properties file (added necessary listener in
> web.xml too) and included the latest Spring Framework jar file
> (2.0.6). This in turn gave me complaints about missing ActiveMQ
> classes and including the main jar file for latest ActiveMQ (4.1.1)
> didn't seem to help. That catches everyone up to my current situation.
> Here is the full console log output for my latest failed webapp
> startup:
>
> <CONSOLE-OUTPUT>
>
> cmd /c C:\java\apache-tomcat-5.5.17\bin\catalina.bat run
> Using CATALINA_BASE:   C:\Documents and
> Settings\van\.IntelliJIdea60\system\tomcat_Unnamed_7c1b22c1
> Using CATALINA_HOME:   C:\java\apache-tomcat-5.5.17
> Using CATALINA_TMPDIR:
> C:\svn\head\dev\projects\krillion\dist\catalina_bases\browser\dev\temp
> Using JRE_HOME:        C:\java\jdk1.6.0
> Connected to the target VM, address: '127.0.0.1:1866', transport: 'socket'
> Aug 3, 2007 4:11:03 PM org.apache.coyote.http11.Http11AprProtocol init
> INFO: Initializing Coyote HTTP/1.1 on http-8000
> Aug 3, 2007 4:11:03 PM org.apache.coyote.ajp.AjpAprProtocol init
> INFO: Initializing Coyote AJP/1.3 on ajp-8002
> Aug 3, 2007 4:11:03 PM org.apache.catalina.startup.Catalina load
> INFO: Initialization processed in 640 ms
> Aug 3, 2007 4:11:03 PM org.apache.catalina.core.StandardService start
> INFO: Starting service Catalina
> Aug 3, 2007 4:11:03 PM org.apache.catalina.core.StandardEngine start
> INFO: Starting Servlet Engine: Apache Tomcat/5.5.17
> Aug 3, 2007 4:11:03 PM org.apache.catalina.core.StandardHost start
> INFO: XML validation disabled
> 16:11:07,218  INFO [/]: Initializing Spring root WebApplicationContext
> 16:11:07,218  INFO ContextLoader: Root WebApplicationContext:
> initialization started
> 16:11:07,296  INFO XmlWebApplicationContext: Refreshing
> org.springframework.web.context.support.XmlWebApplicationContext@d5276a:
> display name [Root WebApplicationContext]; startup date [Fri Aug 03
> 16:11:07 PDT 2007]; root of context hierarchy
> 16:11:07,500  INFO XmlBeanDefinitionReader: Loading XML bean
> definitions from ServletContext resource
> [/WEB-INF/applicationContext.xml]
> 16:11:07,718  INFO XmlWebApplicationContext: Bean factory for
> application context
> [org.springframework.web.context.support.XmlWebApplicationContext@d5276a]:
> org.springframework.beans.factory.support.DefaultListableBeanFactory@1f51e5c
> 16:11:07,812  INFO DefaultListableBeanFactory: Pre-instantiating
> singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@1f51e5c:
> defining beans [connectionFactory,messageworkDestination,jmsTemplate,mapMessageFactory,textMessageFactory,actionMessageSender];
> root of factory hierarchy
> 16:11:07,812  INFO DefaultListableBeanFactory: Destroying singletons
> in org.springframework.beans.factory.support.DefaultListableBeanFactory@1f51e5c:
> defining beans [connectionFactory,messageworkDestination,jmsTemplate,mapMessageFactory,textMessageFactory,actionMessageSender];
> root of factory hierarchy
> 16:11:07,828 ERROR ContextLoader: Context initialization failed
> org.springframework.beans.factory.CannotLoadBeanClassException: Cannot
> find class [org.codehaus.activemq.ActiveMQConnectionFactory] for bean
> with name 'connectionFactory' defined in ServletContext resource
> [/WEB-INF/applicationContext.xml]; nested exception is
> java.lang.ClassNotFoundException:
> org.codehaus.activemq.ActiveMQConnectionFactory
> Caused by:
> java.lang.ClassNotFoundException:
> org.codehaus.activemq.ActiveMQConnectionFactory
>         at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1352)
>         at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1198)
>         at org.springframework.util.ClassUtils.forName(ClassUtils.java:201)
>         at org.springframework.beans.factory.support.AbstractBeanDefinition.resolveBeanClass(AbstractBeanDefinition.java:327)
>         at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1075)
>         at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:282)
>         at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352)
>         at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:244)
>         at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:187)
>         at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
>         at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3729)
>         at org.apache.catalina.core.StandardContext.start(StandardContext.java:4187)
>         at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
>         at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
>         at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
>         at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:608)
>         at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:535)
>         at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:470)
>         at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1122)
>         at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:310)
>         at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
>         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1021)
>         at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
>         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
>         at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
>         at org.apache.catalina.core.StandardService.start(StandardService.java:450)
>         at org.apache.catalina.core.StandardServer.start(StandardServer.java:709)
>         at org.apache.catalina.startup.Catalina.start(Catalina.java:551)
>         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:294)
>         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:432)
> 16:11:07,843 ERROR [/]: Exception sending context initialized event to
> listener instance of class
> org.springframework.web.context.ContextLoaderListener
> org.springframework.beans.factory.CannotLoadBeanClassException: Cannot
> find class [org.codehaus.activemq.ActiveMQConnectionFactory] for bean
> with name 'connectionFactory' defined in ServletContext resource
> [/WEB-INF/applicationContext.xml]; nested exception is
> java.lang.ClassNotFoundException:
> org.codehaus.activemq.ActiveMQConnectionFactory
> Caused by:
> java.lang.ClassNotFoundException:
> org.codehaus.activemq.ActiveMQConnectionFactory
>         at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1352)
>         at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1198)
>         at org.springframework.util.ClassUtils.forName(ClassUtils.java:201)
>         at org.springframework.beans.factory.support.AbstractBeanDefinition.resolveBeanClass(AbstractBeanDefinition.java:327)
>         at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1075)
>         at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:282)
>         at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352)
>         at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:244)
>         at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:187)
>         at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
>         at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3729)
>         at org.apache.catalina.core.StandardContext.start(StandardContext.java:4187)
>         at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
>         at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
>         at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
>         at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:608)
>         at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:535)
>         at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:470)
>         at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1122)
>         at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:310)
>         at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
>         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1021)
>         at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
>         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
>         at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
>         at org.apache.catalina.core.StandardService.start(StandardService.java:450)
>         at org.apache.catalina.core.StandardServer.start(StandardServer.java:709)
>         at org.apache.catalina.startup.Catalina.start(Catalina.java:551)
>         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:294)
>         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:432)
> Aug 3, 2007 4:11:07 PM org.apache.catalina.core.StandardContext start
> SEVERE: Error listenerStart
> Aug 3, 2007 4:11:07 PM org.apache.catalina.core.StandardContext start
> SEVERE: Context [] startup failed due to previous errors
> 16:11:07,859  INFO [/]: Closing Spring root WebApplicationContext
> Aug 3, 2007 4:11:08 PM org.apache.coyote.http11.Http11AprProtocol start
> INFO: Starting Coyote HTTP/1.1 on http-8000
> Aug 3, 2007 4:11:08 PM org.apache.coyote.ajp.AjpAprProtocol start
> INFO: Starting Coyote AJP/1.3 on ajp-8002
> Aug 3, 2007 4:11:08 PM org.apache.catalina.startup.Catalina start
> INFO: Server startup in 4969 ms
>
> </CONSOLE-OUTPUT>
>
> The peculiar thing about this failure is that it is complaining about
> not being able to load this class:
>
> org.codehaus.activemq.ActiveMQConnectionFactory
>
> When I crack open the latest ActiveMQ jar from Apache site, there is
> an ActiveMQConnectionFactory class. However, it is packaged like so:
>
> org.apache.activemq.ActiveMQConnectionFactory
>
> I am beginning to spin my wheels on this. Any pointers or suggestions
> would be much appreciated. If I can't figure this out, I may have to
> admit defeat and switch to Rails development. ;-)
>
> -Van
>
> Mike Van Riper
> van_riper@dev.java.net
>
> Silicon Valley Web Developer JUG
> https://sv-web-jug.dev.java.net
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org