(1)  05_01.jsp 存放路径为C:\Program Files\Apache Group\Tomcat 4.1\webapps\examples<html>
<head>
<title>一个简单的使用JavaBean的例子</title>
</head>
<%@page contentType="text/html; charset=gb2312"%>
<jsp:useBean id="mybean" class="test.MyBean" />
<body>
<h2>这是一个使用JavaBean的简单例子。</h2>
<%!
   String str1="这里调用了JavaBean中的方法。";
   String str2="不是吗?";
%>   
<%
   mybean.setValue(str1);
   str2=mybean.getValue()+str2;
%>
<h3>
  <%=str2%>
</h3>  
</body>
</html>(2) MyBean.java,它编译成的MyBean.class文件存放路径C:\Program Files\Apache Group\Tomcat 4.1\webapps\examples\WEB-INF\classes\test,没错吧,是WEB-INF\classes下呀!package test;
public class MyBean{
private String str;
private int num;
//初始化
public MyBean(){
str="This is the initial value.";
num=0;
}
//设置str
public void setvalue(String avalue){
str=avalue;
}
//得到str
public String getvalue() {
return str;
}
//设置number
public void setnumber(int Number)
{
        num=Number;
}
//得到number
public int getnumber()
{
return num;
}

}错误结果是:
org.apache.jasper.JasperException: Unable to compile class for JSPAn error occurred at line: 12 in the jsp file: /05_01.jspGenerated servlet error:
    [javac] Compiling 1 source fileC:\Program Files\Apache Group\Tomcat 4.1\work\Standalone\localhost\examples\_05_01_jsp.java:71: cannot resolve symbol
symbol  : method setValue (java.lang.String)
location: class test.MyBean
   mybean.setValue(str1);
         ^
An error occurred at line: 12 in the jsp file: /05_01.jsp
Generated servlet error:
C:\Program Files\Apache Group\Tomcat 4.1\work\Standalone\localhost\examples\_05_01_jsp.java:72: cannot resolve symbol
symbol  : method getValue ()
location: class test.MyBean
   str2=mybean.getValue()+str2;
              ^
2 errors
请大家帮我看看,问题出在哪呀,我运行examples里的javabean都可以呀,说明servlet没有问题吧,都不知道怎么回事,真是郁闷呀,都好长一段时间了,就是找出毛病在哪?

解决方案 »

  1.   

    大哥,javaBean不是这么写的。错误就是说你这个javaBena没有get,set方法。正确的写法是:
    public int getNum() {
    return num;
    } public void setNum(int num) {
    this.num = num;
    } public String getStr() {
    return str;
    } public void setStr(String str) {
    this.str = str;
    }
      

  2.   

    //设置str
    public void setValue(String avalue){
    str=avalue;
    }
    //得到str
    public String getValue() {
    return str;
    }-- 注意要大写
      

  3.   

    public void setvalue(String avalue){
    str=avalue;
    }
    应该调用mybean.setvalue(str1);
    而不是
    mybean.setValue(str1);