首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

请指点一下呀,一个简单的程序,总是报异常HTTP Status 500

2013-09-11 
请各位高手指点一下呀,一个简单的程序,总是报错误HTTP Status 500 -javabean程序如下:package taxpublic

请各位高手指点一下呀,一个简单的程序,总是报错误HTTP Status 500 -
javabean程序如下:

package tax;
public class TaxRate {
  double Rate;
  public TaxRate(){
  this.Rate = 5;
  }
public void setRate(double rateValue){
this.Rate=rateValue;
}
public double getRate() {
return(this.Rate);

}
}

JSP程序如下:
<html>
<body>
<%@ page language="java" pageEncoding="GBK"%>
<%@ page extends="tax.TaxRate" %>
<jsp:useBean id="taxbean" scope="application" class="tax.TaxRate" />
<% 
  taxbean.setRate(17);
%>
使用方法1:<p>

税率:<%= taxbean.getRate() %>
</p>
<% 
  taxbean.setRate(3);
 %>
 <b>使用方法2:</b>
 税率:<jsp:getProperty name="taxbean" property="Rate" />
</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: Cannot find any information on property 'Rate' in a bean of type 'tax.TaxRate'
org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:839)
org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1054)
org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1124)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2361)
org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2411)
org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2417)
org.apache.jasper.compiler.Node$Root.accept(Node.java:495)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2361)
org.apache.jasper.compiler.Generator.generate(Generator.java:3383)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:216)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:332)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:312)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:299)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:589)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)


note The full stack trace of the root cause is available in the Apache Tomcat/6.0.24 logs.


请各位高手指点一下呀,感谢感谢感谢~~~~~

[解决办法]
tax.TaxRate没有导入
<%@ page import="tax.TaxRate" %>
[解决办法]
同楼上
[解决办法]
你在taxbean.setRate(17);之前先把它new出来啊

[解决办法]
你的构造函数的问题,写上参数!
[解决办法]

HTML code
税率:<jsp:getProperty name="taxbean" property="Rate" />
[解决办法]
问题已解决。
javabean程序如下:

package tax;

public class TaxRate {
private double rate;

public TaxRate(){
this.rate = 5;
}
public void setRate(double rateValue){


this.rate = rateValue;
}

public double getRate() {

return rate;
}
}

JSP程序如下:
<%@ page language="java" import="tax.TaxRate" pageEncoding="UTF-8"%>

<html>
<body>

<jsp:useBean id="taxbean" class = "tax.TaxRate" scope="application" ></jsp:useBean>

<% taxbean.setRate(17); %>
使用方法1:<p>
税率:<%= taxbean.getRate() %>

</p>
<% taxbean.setRate(3); %>

 <b>使用方法2:</b>
 税率:<jsp:getProperty property = "rate" name = "taxbean"/>

</body>
</html>

红色标示是你的错误所在。
javabean中,定义成员变量 要遵循一般的语法规则,首字母要小写,如果你大写了,程序在被编译的时候,编译器肯能把你大写的“成员变量”当做类来编译,然后又找不到,就会报错了。这里所说的成员变量就是你当初定义的 Rate,遵循规则写成rate。
还有一个就是<jsp:setProperty>标签与<jsp:getProperty>标签一般是一起使用的,习惯问题要注意一下。
我的异常网推荐解决方案:The server encountered an internal error () that prevented it from fulfilling this request.,http://www.myexception.cn/java-web/317.html

热点排行