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 未定义 引用该脚本即可
在本文中,我们将深入探讨如何完美解决在Internet Explorer 9(IE9)浏览器中遇到的“对象未定义”错误。这种问题通常是由于浏览器的兼容性问题、JavaScript代码执行顺序、或者资源加载顺序不当所引起的。以下是一些...
Word宏出现“子过程或函数未定义”故障分析和解决方法 在Word宏中出现“子过程或函数未定义”的故障可能是由于多种原因引起的,包括宏里的VBA编辑器问题、用户版本或工具箱安装问题、Word版本问题等。本文将对这些...
然而,实现单例模式时,可能会遇到一些问题,比如“未定义的引用”错误,这通常是由于链接阶段找不到对应的符号导致的。这里我们将深入探讨如何解决这个问题。 首先,让我们理解为什么会出现“未定义的引用”错误。...
### Sys未定义的解决方法 在开发Web应用程序时,可能会遇到“sys未定义”的错误,尤其是在使用Ajax与ASP.NET结合的场景中。这种错误通常是因为系统未能正确引用或加载Ajax相关的库导致的。本文将详细介绍如何解决...
Excel中用户定义类型未定义的解决方法 Excel中用户定义类型未定义是指在编译时出现的错误提示,原因是对象未正确创建或未引用相关库文件。本文将详细介绍解决此类错误的方法。 一、正确创建对象 在定义对象时,...
但有时会发现,在操作过程中无法对未定义的值、空值或基本数据类型(基元值,如字符串、数字等)设置反应属性,这会引发错误提示:“Cannot set reactive property on undefined, null, or primitive value”。...
解决.net4.5+解决WebForm_InitCallback() 未定义问题,直接在问题页面引用即可。
环境变量 ORACLE_UNQNAME 未定义问题 环境变量 ORACLE_UNQNAME 未定义问题是 Oracle 数据库管理系统中常见的一种错误,该错误通常是由于环境变量 ORACLE_UNQNAME 未被正确设置所致。该环境变量用于指定 Oracle ...
"JSON2"是一个由 Douglas Crockford 创建的JavaScript库,它的主要目的是解决在旧版IE浏览器中JSON未定义的问题。JSON2.js这个文件就是这个库的实现,当在老版本IE中引入这个脚本后,它会为浏览器提供JSON对象以及其...
标题中的“JSON.stringify()报错:JSON未定义”是一个常见的JavaScript错误,通常出现在尝试使用`JSON.stringify()`方法但全局环境中没有定义JSON对象时。在浏览器环境中,JSON是默认支持的,但在某些旧版本的IE...
在IE浏览器中,有时会遇到“JSON未定义”的错误,特别是在使用兼容模式或者较旧版本的IE时。这是因为JSON(JavaScript Object Notation)是ECMAScript 5引入的一个内置对象,而在IE8及以下版本中并未原生支持JSON。...
问题原因: IE一些低版本的浏览器对于ES6语法不支持 Promise是es6语法里为了解决异步函数多重嵌套的问题(回调地狱) 说明: 或许你并不没有使用Promise,但是有可能你使用Axios等,其中原理也是Promise,进行了封装而已 ...
解决IE中JSON未定义的兼容问题
本文将深入探讨在使用json2.js时遇到"json未定义"错误的解决方案,以及如何正确使用json.parse方法。 首先,"json未定义"的错误通常发生在尝试调用JSON对象的函数,如`json.parse()`或`json.stringify()`时,但JSON...
然而,“AjaxControlToolkit未定义”这个错误提示通常意味着在尝试使用该工具包时遇到了问题。这可能是由于多种原因导致的,我们将深入探讨这些原因以及相应的解决方法。 首先,我们需要确保正确地引用了...
json2.js json.parse json未定义 的解决方案!
.Net4.0下ASP.NET在IE10以上版本访问的时候,遇到分页或者控件回发的时候会提示doPostBack未定义,这个补丁是用来在服务器端修正这个问题,安装完需要重启。如不想在服务器修正,可以看...
### Confluence管理未定义页面详解 #### 一、概述 Confluence是一款强大的团队协作与文档管理系统,被广泛应用于企业内部的知识共享与项目管理之中。在使用Confluence的过程中,经常会遇到“未定义页面”的情况,...