主题:[讨论]我运行书上的JSP代码,不知道为什么不成功
setvalue.jsp:
<%@page session="true"%>
<html>
<head>
<title>session应用</title>
<meta http-equiv="Content-Type" content="text/html;charset=gb2312">
</head>
<body bgcolor="#FF11FF" text="#000000">
<%
Integer number1=new Integer(2005);
String str1="年";
session.setAttribute("number2",number1);
session.setAttribute("str2",str1);
String URL1=response.encodeURL("getvalue.jsp");
%>
<h1 align="center"> 已将“2005”、“年”</h1>
<h1 align="center"> 存入session对象中!</h1>
<h1 align="center"> </h1>
<h3 align="center"><a href='<%=URL1%>'>查看存入的数据</a></h3>
</body>
</html>
getvalue.jsp:
<%@page session="true"%>
<html>
<head>
<title>session应用</title>
<meta http-equiv="Content-Type" content="text/html;charset=gb2312">
</head>
<body bgcolor="#FF11FF" text="#000000">
<p>
<%
Integer number1;
String str1;
number1=(Integer)session.getAttribute("number2");
str1=(String)session.getAttribute("str2");
%>
</p>
<h1>从session对象中取出的数据是:</h1>
<h1> <%=number1%><%=str1%>
</h1>
<h1>
<%
if(number1.parseInt==2005&str1=="年")
out.print("session对象中存入的数据与取出的数据完全一致!");
else
out.print("session对象中存入的数据与取出的数据完全不一致!");
%>
</h1>
</body>
</html>
出现的错误是:
HTTP Status 500 -
--------------------------------------------------------------------------------
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: Unable to compile class for JSP
An error occurred at line: 21 in the jsp file: /getvalue.jsp
Generated servlet error:
F:\Tomcat\Tomcat 5.0\work\Catalina\localhost\web\org\apache\jsp\getvalue_jsp.java:68: operator == cannot be applied to java.lang.Integer,int
if(number1==2005&str1=="骞?")
^
1 error
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)
note The full stack trace of the root cause is available in the Apache Tomcat/5.0.28 logs.
--------------------------------------------------------------------------------
<%@page session="true"%>
<html>
<head>
<title>session应用</title>
<meta http-equiv="Content-Type" content="text/html;charset=gb2312">
</head>
<body bgcolor="#FF11FF" text="#000000">
<%
Integer number1=new Integer(2005);
String str1="年";
session.setAttribute("number2",number1);
session.setAttribute("str2",str1);
String URL1=response.encodeURL("getvalue.jsp");
%>
<h1 align="center"> 已将“2005”、“年”</h1>
<h1 align="center"> 存入session对象中!</h1>
<h1 align="center"> </h1>
<h3 align="center"><a href='<%=URL1%>'>查看存入的数据</a></h3>
</body>
</html>
getvalue.jsp:
<%@page session="true"%>
<html>
<head>
<title>session应用</title>
<meta http-equiv="Content-Type" content="text/html;charset=gb2312">
</head>
<body bgcolor="#FF11FF" text="#000000">
<p>
<%
Integer number1;
String str1;
number1=(Integer)session.getAttribute("number2");
str1=(String)session.getAttribute("str2");
%>
</p>
<h1>从session对象中取出的数据是:</h1>
<h1> <%=number1%><%=str1%>
</h1>
<h1>
<%
if(number1.parseInt==2005&str1=="年")
out.print("session对象中存入的数据与取出的数据完全一致!");
else
out.print("session对象中存入的数据与取出的数据完全不一致!");
%>
</h1>
</body>
</html>
出现的错误是:
HTTP Status 500 -
--------------------------------------------------------------------------------
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: Unable to compile class for JSP
An error occurred at line: 21 in the jsp file: /getvalue.jsp
Generated servlet error:
F:\Tomcat\Tomcat 5.0\work\Catalina\localhost\web\org\apache\jsp\getvalue_jsp.java:68: operator == cannot be applied to java.lang.Integer,int
if(number1==2005&str1=="骞?")
^
1 error
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)
note The full stack trace of the root cause is available in the Apache Tomcat/5.0.28 logs.
--------------------------------------------------------------------------------