使用Struts标签库,JSP页面报:java.lang.ClassNotFoundException: com.opensymphony.xwork2.util.TextUtils
2011-09-05 19:12
627 查看
我的解决方法是:
不用xwork-2.1.6.jar,换xwork-2.1.2.jar!
JSP页面里引入了struts标签库:<%@taglib prefix="s" uri="/struts-tags"%>
写个简单的form,
结果运行后JSP出错:java.lang.ClassNotFoundException: com.opensymphony.xwork2.util.TextUtils
从字面上看,已经知道原因了:找不到TextUtils这个类导致的。
看一下代码,没错误吧。OK,代码没错,那就是其他代码问题了!对象只有一种可能:引入的jar包出问题了。
网上查查都说是jar包冲突的问题。xwork-2.1.6.jar里已经去掉了TextUtils!!!OK,你不可能去下载这个class手动加进来吧?那就用现成的最安全。目标锁定在xwork-2这个jar包上,那就看看这个jar的版本情况吧。Google一下还是得到答案了,TextUtils存在于之前的版本,为神马高版本的2.1.6去掉了该类那也是很无语的。有人说2.1.8可以,但是还得牵连到json的jar包。如http://blog.csdn.net/foart/article/details/6669836这样解决的:
在下载好的Struts2的lib文件夹里找到了以下jar包:
json-lib-2.x.jar
struts2-json-plugin-2.x.x.jar
struts2-junit-plugin-2.x.x.jar
上面三个包加入项目里之后,再删除jsonplugin-0.3x.jar包
我用的是S2SH框架,struts2-core-2.1.6.jar + xwork-2.1.6.jar。
既然xwork-2.1.6.jar已经去掉了TextUtils,那就不能用这个版本了。
个人觉得删除jsonplugin-0.3x.jar包再换几个jar包,而且是换的版本基本上都是越来越高。这样做安全性不高。如果换个环境,并不能保证即使不会再出现这个问题,也许还有其他问题的存在。当然,接下来我的简单而保守的做法也可能面临一些版本的问题,给大家分享下。
不用xwork-2.1.6.jar,换xwork-2.1.2.jar!
不用xwork-2.1.6.jar,换xwork-2.1.2.jar!
JSP页面里引入了struts标签库:<%@taglib prefix="s" uri="/struts-tags"%>
写个简单的form,
<div> <s:form action=""> <s:textfield name="username" label="用户名"></s:textfield> <s:textfield name="password" label="密 码"></s:textfield> <s:submit value="login"></s:submit> </s:form> </div>
结果运行后JSP出错:java.lang.ClassNotFoundException: com.opensymphony.xwork2.util.TextUtils
从字面上看,已经知道原因了:找不到TextUtils这个类导致的。
看一下代码,没错误吧。OK,代码没错,那就是其他代码问题了!对象只有一种可能:引入的jar包出问题了。
网上查查都说是jar包冲突的问题。xwork-2.1.6.jar里已经去掉了TextUtils!!!OK,你不可能去下载这个class手动加进来吧?那就用现成的最安全。目标锁定在xwork-2这个jar包上,那就看看这个jar的版本情况吧。Google一下还是得到答案了,TextUtils存在于之前的版本,为神马高版本的2.1.6去掉了该类那也是很无语的。有人说2.1.8可以,但是还得牵连到json的jar包。如http://blog.csdn.net/foart/article/details/6669836这样解决的:
在下载好的Struts2的lib文件夹里找到了以下jar包:
json-lib-2.x.jar
struts2-json-plugin-2.x.x.jar
struts2-junit-plugin-2.x.x.jar
上面三个包加入项目里之后,再删除jsonplugin-0.3x.jar包
我用的是S2SH框架,struts2-core-2.1.6.jar + xwork-2.1.6.jar。
既然xwork-2.1.6.jar已经去掉了TextUtils,那就不能用这个版本了。
个人觉得删除jsonplugin-0.3x.jar包再换几个jar包,而且是换的版本基本上都是越来越高。这样做安全性不高。如果换个环境,并不能保证即使不会再出现这个问题,也许还有其他问题的存在。当然,接下来我的简单而保守的做法也可能面临一些版本的问题,给大家分享下。
不用xwork-2.1.6.jar,换xwork-2.1.2.jar!
相关文章推荐
- JSP页面使用EL表达式出现的问题:javax.el.PropertyNotFoundException: Property 'ID' not found on type java.lang.Str
- 针对jsp页面插入jstl代码遇到HTTP Status 500 - java.lang.ClassNotFoundException: org.apache.jsp.jstl.jstl_jsp的问题
- HTTP Status 500 - java.lang.ClassNotFoundException: org.apache.jsp.hello_jsp
- java.lang.ClassNotFoundException: javax.servlet.jsp.jstl.core.Config
- java.lang.ClassNotFoundException: org.apache.jsp.login_jsp
- jsp - java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver
- eclispe中的maven项目使用spring报java.lang.ClassNotFoundException: org.springframework.web.c
- java.lang.ClassNotFoundException: org.apache.struts.action.ActionServlet
- 使用tomcat产生的java.lang.ClassNotFoundException: com.mysql.jdbc.Driver问题
- 使用tomcat产生java.lang.ClassNotFoundException: com.mysql.jdbc.Driver问题
- 使用JSONObject报错:Java.lang.ClassNotFoundException: org.apache.commons.lang.exception.NestableRuntimeEx
- java.lang.ClassNotFoundException: org.apache.jsp.index_jsp
- Err:java.lang.ClassNotFoundException: org.apache.struts.action.ActionServlet
- 在intelliJ IDEA下在web项目中使用hibernate出现java.lang.ClassNotFoundException: org.hibernate.criterion.Criteri
- 使用tomcat产生的java.lang.ClassNotFoundException: com.mysql.jdbc.Driver问题
- spring+hibernate工程使用JNDI连接部署至websphere,报错Caused by: java.lang.ClassNotFoundException: oracle.sql.BLO
- HTTP Status 500 - java.lang.ClassNotFoundException: org.apache.jsp.book_jsp
- clispe中的maven项目使用spring报java.lang.ClassNotFoundException: org.springframework.web
- java.lang.ClassNotFoundException: javax.servlet.jsp.jstl.core.ConditionalTagSupport
- Android使用Eclipse遇到"java.lang.ClassNotFoundException"