2013-02-20 73 views
2

我正在学习struts2。然后根据tutorial 尝试我的hello世界项目然后我在eclipse中运行代码。但它不起作用。控制台显示了很多错误。 第一个是如下:Struts2教程不起作用

com.opensymphony.xwork2.util.logging.commons.CommonsLogger error 
SEVERE: Dispatcher initialization failed 
Unable to load configuration. - bean - jar:file:/C:/Users/Administrator/Eclipse/workspace_2/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/MyStruts2/WEB-INF/lib/struts2-gxp-plugin-2.3.8.jar!/struts-plugin.xml:8:162 
    at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:70) 
    at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:429) 
    at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:471) 
    at org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:193) 
    at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:281) 
    at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:262) 
    at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:107) 
    at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4656) 
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5312) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549) 
    at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) 
    at java.util.concurrent.FutureTask.run(Unknown Source) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
    at java.lang.Thread.run(Unknown Source) 

并且页面显示: HTTP状态404 - /MyStruts2/index.jsp 类型状态报告

消息/MyStruts2/index.jsp

描述请求的资源不可用。

它有什么问题。我需要配置更多?

回答

2

首先,删除所有未使用的S2插件如果您使用的是基本教程,那么您几乎可以肯定使用GXP的而不是

S2插件:

  1. 可能会改变根本途径S2功能和
  2. 有自己的依赖,这将导致失败,如果它们的依赖得不到满足。

其次,确保您正在部署所有必需的库。 Maven(或同等产品)是为了管理这些依赖性而创建的,但对于绝对的裸机应用程序来说,这并不是绝对必要的。

+0

它的工作原理,首先我将所有压缩在struts-2.3.8-lib.zip中的jar文件复制到lib文件夹中。因为我认为lib中的所有jar文件都可以确保没有丢失类。但我是worng。所以我只是在教程中说了必要的jar。现在没关系,但是当我开发我的应用程序时,我怎么知道哪一个是必要的?任何参考文件? – 2013-02-20 02:03:43

+0

@roast_soul使用Maven是处理这个问题的最好方法,但是:http://struts.apache.org/release/2.3.x/struts2-core/dependencies.html – 2013-02-20 02:49:52