一直用eclipse做JSP,今天上午还好好的,别人给了几个小例子,我运行了下,也正常。但突然出现叉号错误提示,位置是在工程名/work/org.apache.jsp目录下的.java文件,也就是JSP代码编译出来的servlet代码中。而且同时出现在几个工程中。查看了一下,其中一个错误是这样的:
out.write("<option value=\"鐢穃" selected>鐢�</option>\r\n");
out.write("<option value=\"濂砛">濂�</option>\r\n");
out.write("</select>\r\n");

它对应的JSP代码是:
          <option value="男" selected>男</option>
          <option value="女">女</option>
也就是说实际上Servlet没有正确处理好中文问题,而且大家注意,在第一行乱码的第三个引号之前,没有出现转义符号\,因此eclipse对这个java文件提示了错误。我上网查了一下,发现也有人遇到过同样的问题,请大家也顺便看一下这两个网页,也是没有解决的:
http://topic.csdn.net/t/20050328/12/3887387.html
http://topic.csdn.net/t/20050328/12/3887373.html

我的page指令:
<%@ page contentType="text/html; charset=GB2312" language="java" errorPage=""%>
所以不是这个原因。而且这几个工程原来还运行得好好的,是突然出现了这种情况,也许跟我今天某些操作有关系,但是我没有找到解决问题的办法。恳请各位高手支招!!

解决方案 »

  1.   

    window->preferences->General->Editors->Text Editors->Spelling (Encoding 选择Default(GBK))
      

  2.   

    window->preferences->General->Editors->Text Editors->Spelling (Encoding 选择Default(GBK/UTF-8))
    建议在Linux下,无此问题
      

  3.   

    首先在页头加上:
    <%@ page language="java" pageEncoding="UTF-8"/>
    然后右键点击文件-properties-text file encoding中选择other,选择UTF-8编码。应该没错了。
      

  4.   

    <%@ page language="java" pageEncoding="UTF-8"/> 
    把这个加在你的代码第一行就可以了,
      

  5.   

    <%@ page contentType="text/html; charset=GBK" %>
      

  6.   

    谢谢大家~~ 我的解决办法是,把项目的属性下面文本文件的缺省编码,改成其它下面选择UTF-8!
    但页面代码部分没有动,page指令选择的还是GB2312.
    特别感谢spaceko2006 。