使用Struts标签库,JSP页面报:java.lang.ClassNotFoundException: com.opensymphony.xwork2.util.TextUtils

我的解决方法是:

不用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!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值