miaomiaoga1 2008-12-15 09:08
浏览 161
已采纳

第一个HelloWorld的Struts2程序出错了。请大家看一下是什么问题。感谢。感谢。:(

程序在部署后,在TOMCAT里看到的错误是(localhost.2008-12-14.log):



2008-12-14 19:19:40 org.apache.catalina.core.StandardContext filterStart

严重: Exception starting filter struts2

Unable to load bean: type: class:com.opensymphony.xwork2.ObjectFactory - bean - jar:file:/D:/Java/tomcat6016/webapps/struts2hello/WEB-INF/lib/struts2-core-2.0.14.jar!/struts-default.xml:30:72

at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:208)

at org.apache.struts2.config.StrutsXmlConfigurationProvider.register(StrutsXmlConfigurationProvider.java:101)

at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reload(DefaultConfiguration.java:131)

at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:52)

at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:395)

at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:452)

at org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:205)

at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:275)

at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:397)

at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:108)

at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3709)

at org.apache.catalina.core.StandardContext.start(StandardContext.java:4356)

at org.apache.catalina.manager.ManagerServlet.start(ManagerServlet.java:1244)

at org.apache.catalina.manager.HTMLManagerServlet.start(HTMLManagerServlet.java:604)

at org.apache.catalina.manager.HTMLManagerServlet.doGet(HTMLManagerServlet.java:129)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)

at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)

at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:856)

at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:565)

at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1509)

at java.lang.Thread.run(Unknown Source)

Caused by: Bean type class com.opensymphony.xwork2.ObjectFactory with the name xwork has already been loaded by bean - jar:file:/D:/Java/tomcat6016/lib/struts2-core-2.0.14.jar!/struts-default.xml:30:72 - bean - jar:file:/D:/Java/tomcat6016/webapps/struts2hello/WEB-INF/lib/struts2-core-2.0.14.jar!/struts-default.xml:30:72

at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:193)

... 29 more











以下是程序代码:

struts2.xml:





"http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>

<package name="default" extends="struts-default">




<action name="HelloWorld" class="example.HelloWorld">

<result name="success">/HelloWorld.jsp</result>

</action>

</package>

</struts>









HelloWorld.jsp:



<%@ page contentType="text/html; charset=GBK"%>

<%@ taglib prefix="s" uri="/struts-tags"%>

<html>

<head>

<title>Struts 2 示例</title>

</head>

<body>



<s:property value="message">



${message}

</body>

</html>











HelloWorld.java:



package example;



import com.opensymphony.xwork2.ActionSupport;



public class HelloWorld extends ActionSupport {

public String execute() throws Exception {

setMessage("你好!Struts 2!");

return SUCCESS;

}



private String message;



public String getMessage() {

return message;

}



public void setMessage(String message) {

this.message = message;

}

}











web.xml:





<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" <br="">xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://java.sun.com/xml/ns/javaee

http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">



<filter>

<filter-name>struts2</filter-name>

<filter-class>

org.apache.struts2.dispatcher.FilterDispatcher

</filter-class>

</filter>



<filter-mapping>

<filter-name>struts2</filter-name>

<url-pattern>/*</url-pattern>

</filter-mapping>



  <welcome-file-list>

    <welcome-file>index.jsp</welcome-file>

  </welcome-file-list>

</web-app>


问题补充:
我看了一下。好像是说我在系统里已经有了另外一个不同版本(或者相同版本)的struts2 core .jar 。



的确是这样。但是我把我原来拷贝到TOMCAT\LIB下的struts2的那些jar删除后。也不行哦。究竟是什么回事呢?



郁闷ing...
  • 写回答

5条回答 默认 最新

  • samungtered 2008-12-15 11:10
    关注

    简单的struts2应用只需要的几个包:
    struts2-core_2.0.1x.jar
    xwork-2.0x.jar
    ognl-2.6.11.jar
    freemarker-2.3.8.jar
    oro-2.0.8.jar
    就可以了...
    其他就是些常用的commons包了

    很明确的是 包有问题

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 Arcgis相交分析无法绘制一个或多个图形
  • ¥15 seatunnel-web使用SQL组件时候后台报错,无法找到表格
  • ¥15 fpga自动售货机数码管(相关搜索:数字时钟)
  • ¥15 用前端向数据库插入数据,通过debug发现数据能走到后端,但是放行之后就会提示错误
  • ¥30 3天&7天&&15天&销量如何统计同一行
  • ¥30 帮我写一段可以读取LD2450数据并计算距离的Arduino代码
  • ¥15 飞机曲面部件如机翼,壁板等具体的孔位模型
  • ¥15 vs2019中数据导出问题
  • ¥20 云服务Linux系统TCP-MSS值修改?
  • ¥20 关于#单片机#的问题:项目:使用模拟iic与ov2640通讯环境:F407问题:读取的ID号总是0xff,自己调了调发现在读从机数据时,SDA线上并未有信号变化(语言-c语言)