1

由于 Struts 2.3.14.3 中的安全问题,我们今天升级到 Struts 2.3.15.1。

但是我们遇到了一个问题,因为struts2-tiles-plugin从版本 2.1.4 更新到 3.0.1 并且我们的服务器不再工作了。

错误是:

18.07.2013 16:19:20 org.apache.catalina.core.StandardContext listenerStart
SCHWERWIEGEND: Error configuring application listener of class org.apache.struts2.tiles.StrutsTilesListener
java.lang.NoClassDefFoundError: org/apache/tiles/web/startup/TilesListener
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
at de.hybris.tomcat.HybrisWebappClassLoader60.findClassInternal(HybrisWebappClassLoader60.java:2244)
at de.hybris.tomcat.HybrisWebappClassLoader60.findClass(HybrisWebappClassLoader60.java:982)
at de.hybris.tomcat.HybrisWebappClassLoader60.loadClass(HybrisWebappClassLoader60.java:1610)
at de.hybris.tomcat.HybrisWebappClassLoader60.loadClass(HybrisWebappClassLoader60.java:1443)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4078)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4630)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445)
at org.apache.catalina.core.StandardService.start(StandardService.java:519)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:581)
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:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
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.tanukisoftware.wrapper.WrapperSimpleApp.run(WrapperSimpleApp.java:244)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.ClassNotFoundException: org.apache.tiles.web.startup.TilesListener
at de.hybris.tomcat.HybrisWebappClassLoader60.loadClass(HybrisWebappClassLoader60.java:1663)
at de.hybris.tomcat.HybrisWebappClassLoader60.loadClass(HybrisWebappClassLoader60.java:1443)
... 29 more
18.07.2013 16:19:20 org.apache.catalina.core.StandardContext listenerStart
SCHWERWIEGEND: Skipped installing application listeners due to previous error(s)
18.07.2013 16:19:20 org.apache.catalina.core.StandardContext start

现在我有点卡住了,因为这篇文章在这里:如何将 Struts 2 与 Tiles 3集成开始集成 tile-extras(我为什么需要它,确切地说)并使用注释和侦听器等等。我只想快速更新struts,而不是更新tile。谁能指出我该怎么做?谢谢你的帮助 :)

4

1 回答 1

-1

我们现在只将struts 包和tile(包括有问题的tile-servlet)升级到2.2.2 版。新的struts包中tile 3.0.1的实现不完整,无法使用。

于 2013-07-19T08:48:09.940 回答