setCharacterEncoding未定义
做项目时,从svn上download一个项目到myEclipse后,项目报错,打开出错的java文件,提示如下错误:
Servlet.service() for servlet jsp threw exception java.lang.Error: Unresolved compilation problem: The method setCharacterEncoding(String) is undefined for the type ServletResponse
简单说来就是setCharacterEncoding方法未定义。
解决方案1
打开buildpath,发现同时导入了servlet.jar和javaEE 5。在他们中都有javax.servlet.http.HttpServletRequest,而项目中默认是导入的servlet.jar 中的该类,而可能该jar版本过低,反正在该jar包的HttpServletRequest类中就是没得setCharacterEncoding方法。移除servlet.jar即可。
此方法失败。
解决方案2
这个方法是接口ServletResponse中的方法,但在引用的servlet.jar中的这个接口中,并没有这个方法。而在J2EE中也有servlet.jar,而这个jar包中的servletResponse接口中,确有这个方法。但是如何让工程首先引用这个接口呢?首先删除servlet.jar的引用,然后重新添加即可。
问题可以解决。但是真的需要每次遇到这个问题都这样吗?难道myEclipse针对兄的jar包,就没有控制引用顺序的方法吗,答案是由。
解决方案3
打开buildpath,切换到Order and Export 选项卡,把J2EE的库移至前边即可,如下图。就这么简单。
总结:之所以出现setCharacterEncoding未定义的错误,是因为引入(或者说使用)的jar包没有这个方法,是真的没有。而有这个方法的jar包又没有被引入。删除错误的jar包固然是个解决办法,但如果有很多个冲突的jar包,或者这些jar包之间不仅仅是版本的关系的时候,使用更改引用顺序将会是一种更好的方法。
之后又遇到了个isWrapperFor 方法未定义的错误。有了上次的经验,去同事那看了下,他那引用的是rt.jar,而我这引用的是class12.jar(我们的jar包是相同的),之索引出现这种问题,可能是引用的顺序造成的。更爱了引用顺序后,然后错误就消失了
方法3 亲测可行。
感谢博主 http://sxyandapp.blog.163.com/blog/static/61488308201282492739161/
相关推荐
IE11也支持html2canvas该插件 Promise 未定义 引用该脚本即可
下面小编就为大家带来一篇完美解决IE9浏览器出现的对象未定义问题。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧,祝大家游戏愉快哦
AjaxControlToolkit未定义
sys未定义的解决方法sys未定义的解决方法
环境变量ORACLE_UNQNAME未定义问题
引入解决IE7及以下版本JSON未定义问题
解决.net4.5+解决WebForm_InitCallback() 未定义问题,直接在问题页面引用即可。
主要解决在单例模式下类中声明静态指针存储单例对象,在.cpp文件中编译时显示未定义的解决办法: 参考博客: http://bbs.csdn.net/topics/10439749
excel提示用户定义类型未定义怎么办.docx
json2.js json.parse json未定义 的解决方案!
主要介绍了vue 解决无法对未定义的值,空值或基元值设置反应属性报错问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
json2.js json.parse json未定义 的解决方案!
解决IE中JSON未定义的兼容问题
.Net4.0下ASP.NET在IE10以上版本访问的时候,遇到分页或者控件回发的时候会提示doPostBack未定义,这个补丁是用来在服务器端修正这个问题,安装完需要重启。如不想在服务器修正,可以看...
NULL 博文链接:https://ruohanfly.iteye.com/blog/2184028
.Net4.0下ASP.NET在IE10以上版本访问的时候,遇到分页或者控件回发的时候会提示doPostBack未定义,这个补丁是用来在服务器端修正这个问题,安装完需要重启。如不想在服务器修正,可以看...
json2.js,官方版本(2014-02-04) ie6、ie7下JSON.parse JSON未定义的解决方法
vs2008中 Ajax错误: Sys未定义 vs2008中 Ajax错误: Sys未定义
我用在2008r2 上没用,后来用的App_Browsers文件夹的方式解决的,这个应该针对有一些也应该有用。 网上方法三的文件,直接放到网站根目录下就可以了。下载链接;...我是用这个方法解决好的。我用于主要是翻页控件和报表...