初学JSP,用Eclipse3.4.0 自带的Lomboz做了个入门的JSP,却遇到了这样的问题,如下(不会贴图,汗!):
<html>
<body>
<%!
void sayHello(javax.servlet.jsp.JspWriter jw) {
try {
jw.println("HelloWorld!");
} catch(Exception e) {
System.out.println(e);
}
}
%> <%
sayHello(out);
javax.servlet.jsp.JspWriter jw1;
%>
</body>
</html>程序可以运行,并且HelloWorld也输出了.然而两个定义javax.servlet.jsp.JspWriter 的地方总是提示错误
javax.servlet.jsp.JspWriter cannot be resolved to a type
并且前面一红圈叉,这是为什么,是lomboz的Bug??

解决方案 »

  1.   

    javax.servlet.jsp.JspWriter
    没有找到这个类,引入相应的包
      

  2.   

    这种错误在 编译器中很常见,有很多时候并不是代码的问题,而是编译器不能正确识别。
    只要你能保证你的代码正常运行就OK。
    包括 MYECLIPSE 都是的。
      

  3.   

    原来是这样啊,谢谢大家.再问个问题,还是上面那小段代码,如果将
    <%! 
    void sayHello(javax.servlet.jsp.JspWriter jw) { 
    try { 
    jw.println("HelloWorld!"); 
    } catch(Exception e) { 
    System.out.println(e); 


    %> 里的try catch块去掉,只留下jw.println("HelloWorld!");再调用sayHello(out)就要出错了:org.apache.jasper.JasperException: Unable to compile class for JSP:
    然而我添上try catch块控制台并未打印任何异常,这又是为什么??
      

  4.   

    我终于发现是为什么了.我用的servlet是tomcat里的jar包,发现jsp包下面居然是空的;然而我下了个sun的servlet,jsp包下面才有东西,有类JspWriter,真是奇怪啊,tomcat的servlet怎么,和sun的servlet有些许不同啊?
      

  5.   

    汗,你用eclipse j2ee版或是my eclipse就行了