环境:resin2.1.17+struts2的高版本,result的返回是jsp页面
错误信息:META-INF/tags/JsonPlugin.tld:5 unknown element`xsi:schemaLocation' in `taglib等类似错误
根本原因:resin版本较旧,不能识别新的element导致;
解决办法:替换高版本的resin或者修改resin的jar包。
如果项目已经上线,替换高版本的resin可能会出其它不可预知的问题,所以我建议维持改版本不变,使用修改resin的jar包的方式解决。
修改的步骤为(首先从网上下载resin2.1.17-src.zip文件,下载地址可问度娘):
1、在resin.jar这个文件中,找到com.caucho.jsp.TagLib类,定位到底部,如下图所示的位置:
2、将报错信息中element后面引号中的内容添加到对应的map中。如报错的最后是taglib,则把该值添加到taglibElements中,若报错的最后是tag,则把该值添加到tagElements中。
3、将编译好的TagLib.class文件替换原有的文件,重启resin。
4、一般报这个错的时候,不一定是只报一次,需要不停的试验,并把报错的elements加到对应map中,直到不出现类似的错误为止。