jsp:useBean的class属性问题

 刚学jsp就遇到了这个问题,写bean的时候想不要弄那么复杂,就没有将类打包,即没有使用package语句,bean编译的时候是正确的,就把编译后的class文件放到了WEB-INF/classes目录下,接下来用
  1. <jsp:useBean id="onlineCount" class="mypack.OnlineCount" />
  2. <jsp:setProperty name="onlineCount" property="count" value="8" />
  3. <jsp:getProperty name="onlineCount" property="count" />
结果编译错误了:
  1. org.apache.jasper.JasperException: Unable to compile class for JSP: 
  2. An error occurred at line: 12 in the jsp file: /index.jsp
  3. OnlineCount cannot be resolved to a type
  4. 9:  <title>鎴戠殑缃戠珯</title>
  5. 10: </head>
  6. 11: <body>
  7. 12:     <jsp:useBean id="onlineCount" class="OnlineCount" />
  8. 13:     <jsp:setProperty name="onlineCount" property="count" value="8" />
  9. 14:     <jsp:getProperty name="onlineCount" property="count" />
  10. 15: </body>
  11. An error occurred at line: 12 in the jsp file: /index.jsp
  12. OnlineCount cannot be resolved to a type
  13. 9:  <title>鎴戠殑缃戠珯</title>
  14. 10: </head>
  15. 11: <body>
  16. 12:     <jsp:useBean id="onlineCount" class="OnlineCount" />
  17. 13:     <jsp:setProperty name="onlineCount" property="count" value="8" />
  18. 14:     <jsp:getProperty name="onlineCount" property="count" />
  19. 15: </body>
  20. An error occurred at line: 12 in the jsp file: /index.jsp
  21. OnlineCount cannot be resolved to a type
  22. 9:  <title>鎴戠殑缃戠珯</title>
  23. 10: </head>
  24. 11: <body>
  25. 12:     <jsp:useBean id="onlineCount" class="OnlineCount" />
  26. 13:     <jsp:setProperty name="onlineCount" property="count" value="8" />
  27. 14:     <jsp:getProperty name="onlineCount" property="count" />
  28. 15: </body>
  29. An error occurred at line: 14 in the jsp file: /index.jsp
  30. OnlineCount cannot be resolved to a type
  31. 11: <body>
  32. 12:     <jsp:useBean id="onlineCount" class="OnlineCount" />
  33. 13:     <jsp:setProperty name="onlineCount" property="count" value="8" />
  34. 14:     <jsp:getProperty name="onlineCount" property="count" />
  35. 15: </body>
  36. 16: </html>
  37. Stacktrace:
  38.     org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92)
  39.     org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
  40.     org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:423)
  41.     org.apache.jasper.compiler.Compiler.compile(Compiler.java:317)
  42.     org.apache.jasper.compiler.Compiler.compile(Compiler.java:295)
  43.     org.apache.jasper.compiler.Compiler.compile(Compiler.java:282)
  44.     org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:586)
  45.     org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
  46.     org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
  47.     org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
  48.     javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

查了好久的资料才知道了要怎么解决,必须要把类放在包里:
  1. <jsp:useBean id="onlineCount" class="mypack.OnlineCount" />
  2. <jsp:setProperty name="onlineCount" property="count" value="8" />
  3. <jsp:getProperty name="onlineCount" property="count" />
这样才运行正确了。

但是我到现在还是不明白为什么非要把类放在包里呢?在部署servlet时却可以不用放在包下面,问题现在是解决了,可是还是不知道为什么,还望知道的朋友告诉我一声,谢谢。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值