在下面的servlet中,我想添加内容类型和字符集编码。
public class FBOAuth extends HttpServlet {
public void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
PrintWriter out = response.getWriter();
this.response.setContentType("application/json");
this.response.setCharacterEncoding("UTF-8");
...
我使用以下命令编译这个servlet。
$ javac -classpath json.jar FBOAuth.java
FBOAuth.java:24: error: cannot find symbol
this.response.setContentType("application/json");
^
symbol: variable response
FBOAuth.java:25: error: cannot find symbol
this.response.setCharacterEncoding("UTF-8");
^
symbol: variable response
2 errors
答案 0 :(得分:7)
在this.
之前移除response
。它们是参数,而不是类变量。
答案 1 :(得分:0)
从代码中删除此关键字,它将起作用。由于HTTPServletRequest和HttpServletResponse对象仅适用于当前请求,因为它是无状态协议,并且它仅适用于当前对象。 此关键字仅用于成员变量和成员函数,不用于内置对象,因为这两个对象(请求,响应)都是隐式的。