//这个是名为MyBean的文件,编译后的class文件放在test文件夹下
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;
}

}
//这是调用bean的jsp文件名字:05_01.jsp
<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>把test文件夹和上面的05_01.jsp放到root目录下
输入地址http://localhost:8080/05_01.jsp出现如下的错误提示:
HTTP Status 500 - --------------------------------------------------------------------------------type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: Unable to load class for JSP
org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:550)
org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:136)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:307)
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)
root cause java.lang.ClassNotFoundException: org.apache.jsp._1._05_005f01_jsp
java.net.URLClassLoader$1.run(URLClassLoader.java:199)
java.security.AccessController.doPrivileged(Native Method)
java.net.URLClassLoader.findClass(URLClassLoader.java:187)
org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:156)
org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:69)
org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:548)
org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:136)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:307)
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.
这个程序是一光盘教程上的,应该没有什么错误吧,到底是什么地方错了,我调试了n次,都这样。

解决方案 »

  1.   

    你test文件夹要放到ROOT/WEB-INF/classes下
      

  2.   

    把编译后的class放在 网站文件目录/WEB-INF/classes/    下面!
      

  3.   

    你应该把这个BEAN文件放在/WEB-INF/classer/下。同时要把.java文件编译成.class文件。
      

  4.   

    把test文件夹和文件夹中的MyBean.class要放到ROOT/WEB-INF/classes下
      

  5.   

    你应该把这个BEAN文件放在/WEB-INF/classer/下。同时要把.java文件编译成.class文件。
      

  6.   

    你们看看那些程序是否有错误啊?我放到那个目录下后,怎么还有错误啊?错误代码HTTP Status 500 - --------------------------------------------------------------------------------type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: Unable to compile class for JSPAn error occurred at line: 13 in the jsp file: /05_01.jsp
    Generated servlet error:
    E:\Tomcat\work\Catalina\localhost\_\org\apache\jsp\_05_005f01_jsp.java:64: cannot resolve symbol
    symbol  : method setValue (java.lang.String)
    location: class test.MyBean
       mybean.setValue(str1);
             ^
    An error occurred at line: 13 in the jsp file: /05_01.jsp
    Generated servlet error:
    E:\Tomcat\work\Catalina\localhost\_\org\apache\jsp\_05_005f01_jsp.java:65: cannot resolve symbol
    symbol  : method getValue ()
    location: class test.MyBean
       str2=mybean.getValue()+str2;
                  ^
    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)
    note The full stack trace of the root cause is available in the Apache Tomcat/5.0.28 logs.
    --------------------------------------------------------------------------------Apache Tomcat/5.0.28