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

初学jsp+javabean时的有关问题 找不到class

2012-04-19 
初学jsp+javabean时的问题 找不到class我的一个JSP+Javabean的练习放在如下路径D:\J2ee\Apache Software F

初学jsp+javabean时的问题 找不到class
我的一个JSP+Javabean的练习放在如下路径
D:\J2ee\Apache Software Foundation\Tomcat 6.0\webapps\Jsp\exercises
useBean -folder 下面
-[WEB-INF] ---> Folder
  -classes ----> folder  
  - tax ----> folder 
  -TaxRate.class
  - TaxRate.java

-UseBean.jsp
-settax.jsp


UseBean.jsp
-----------------

HTML code
<html><body><%@ page language="java" %><jsp:useBean id="taxbean" scope="application" class="tax.TaxRate" /><jsp:setProperty name="taxbean" property="*"/>产品:<jsp:getProperty name="taxbean" property="product"/><br>税率:<jsp:getProperty name="taxbean" property="rate"/></body></html>


settax.jsp
-----------------------
HTML code
<html><head><title>设置产品税率</title></head><body bgcolor="#fffffr"><FORM method="post" action="UseBean.jsp"> <TABLE border=0 cellspacing=1 cellpadding=5>  <TR>   <td width="100">&nbsp;</td>   <td align="right"><H1><FONT color="red">设置产品税率</FONT></H1></TD>  </TR>  <TR>   <td width="100" align="right"><B><FONT color="blue">产品:</FONT></B></TD>   <td align="left"><INPUT TYPE="text" name="product" size="30"></TD>  </TR>  <TR>   <td width="100" align="right"><B><FONT color="blue">税率:</FONT></B></TD>   <td align="left"><INPUT TYPE="text" name="rate" size="30"></TD>  </TR>  <TR>   <td width="100">&nbsp;</TD>   <td align="right"></TD>  </TR>  <TR>   <TD width="100">&nbsp;</td>   <td align="left"><input type="submit" value="Submit"></td>  </tr> </table> </FORM> </BODY> </HTML>


TaxRate.java
------------------
Java code
package tax;  public class TaxRate  {      double rate;      String product;      public TaxRate(){      }      public void setProduct(String ProductName){ this.product=ProductName;  }      public String getProduct(){ return (this.product);  }      public void setRate(double rateValue){ this.rate=rateValue;      }      public double getRate(){ return this.rate;}  }
 

..\Tomact6.0\conf\Server.xml 中<host 部分的缺省如下
XML code
      <Host name="localhost"  appBase="webapps"            unpackWARs="true" autoDeploy="true"            xmlValidation="false" xmlNamespaceAware="false">


在ie 中进入以下页面 并输入 产品: test , 税率: 17.0
http://localhost:8080/Jsp/exercises/useBean/settax.jsp

提交后error message 如下:

org.apache.jasper.JasperException: /exercises/useBean/UseBean.jsp(4,0) The value for the useBean class attribute tax.TaxRate is invalid.
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40)


org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148)
org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1233)
org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1178)
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:3459)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:231)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:354)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:334)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:321)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:592)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:328)
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)

如果将appBase改为如下后重启Tomact 
.\Tomact6.0\conf\Server.xml 中<host 部分的缺省如下

XML code
      <Host name="localhost"  appBase="webapps\Jsp\exercises"       unpackWARs="true" autoDeploy="true"          xmlValidation="false" xmlNamespaceAware="false">



再次在ie 中进入以下页面 并输入 产品: test , 税率: 17.0
http://localhost:8080/useBean/settax.jsp
一切恢复了正常


我觉得这样改server.xml 太笨了, 如果下次有多个新的project 不是 exercises 呢,我岂不是要改多次 ?
有没有更灵活有效的解决办法,请熟悉的前辈指点








[解决办法]
你直接把你的项目放到 webapps下面就可以了 其它的不用修改。启动服务进入管理界面就能进入你的项目
[解决办法]
直接部署~
[解决办法]
用eclipse来的更快,你 还是用工具好些,然后再去看目录结构,反过来学习未尝不是件好事呀~!

热点排行