回 帖 发 新 帖 刷新版面

主题:帮忙看一下 先谢过!


一个简单的文件:request.jsp
帮忙看一下

<%@ page import="java.sql.*" contentType="text/html;charset=GB2312" %>
<html>
  <body>
   <%
     request.setCharacterEncoding("GB2312");
     String name = request.getParameter("name");
     Byte[]  b  = name.getBytes("");
     String  s = new  String ( b ) ;
     name=s;
   %>
   <%= name %>
  </body>
</html>
运行后有错误:
org.apache.jasper.JasperException: Unable to compile class for JSP

An error occurred at line: 4 in the jsp file: /request.jsp
Generated servlet error:
C:\Documents and Settings\lee\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\work\Catalina\localhost\website\org\apache\jsp\request_jsp.java:50: incompatible types
found   : byte[]
required: java.lang.Byte[]
     Byte[]  b  = name.getBytes("");
                               ^


An error occurred at line: 4 in the jsp file: /request.jsp
Generated servlet error:
C:\Documents and Settings\lee\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\work\Catalina\localhost\website\org\apache\jsp\request_jsp.java:51: cannot resolve symbol
symbol  : constructor String (java.lang.Byte[])
location: class java.lang.String
     String  s = new  String ( b ) ;
                 ^
2 errors



    org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84)
    org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:332)
    org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:412)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:472)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)


 

回复列表 (共3个回复)

沙发

<%@ page import="java.sql.*" contentType="text/html;charset=GB2312" %>
<html>
  <body>
   <%
     request.setCharacterEncoding("GB2312");
     String name = request.getParameter("name");
     Byte[]  b  = name.getBytes("ISO-8859-1");
     name = new  String ( b ) ;
   %>
   <%= name %>
  </body>
</html>
看看先!

板凳

生成如下错误:


org.apache.jasper.JasperException: Unable to compile class for JSP

An error occurred at line: 4 in the jsp file: /request.jsp
Generated servlet error:
C:\Documents and Settings\lee\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\work\Catalina\localhost\website\org\apache\jsp\request_jsp.java:50: incompatible types
found   : byte[]
required: java.lang.Byte[]
     Byte[]  b  = name.getBytes("ISO-8859-1");
                               ^


An error occurred at line: 4 in the jsp file: /request.jsp
Generated servlet error:
C:\Documents and Settings\lee\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\work\Catalina\localhost\website\org\apache\jsp\request_jsp.java:51: cannot resolve symbol
symbol  : constructor String (java.lang.Byte[])
location: class java.lang.String
     name = new  String ( b ) ;
            ^
2 errors



    org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84)
    org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:332)
    org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:412)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:472)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

3 楼

谢过,刚刚被人点拨,大小写问题
Byte[]  b  = name.getBytes();里面的Byte->byte;呵,谢谢你!

我来回复

您尚未登录,请登录后再回复。点此登录或注册