The value for the useBean class attribute XXX is invalid异常的意思是:useBean中的类型是无效的。
1、对该异常的解释
JSP文件中利用动作指令(Action)来使用javaBean的语法如下:
<%@ page import="file.User"%>
<jsp:useBean id="user" class="User" scope="page">
<jsp:setProperty name="user" property="*"/>
</jsp:useBean>
首先来简单解释一下这段代码的意思:
第1行:把包file下的类User引入该JSP文件 ;
第2行:等价于---->
<% User user = new User(); %>
其中,user这个引用的有效范围是‘当前页面’;
第3行:等价于---->
<% user.setXX(XX); %>
如果该JSP页面接收过来的参数名和User这个类的属性名相同,则把user的属性设置为参数的value值;
第4行:表示<jsp:useBean ... >标签的结束。
这段代码将会抛出异常:The value for the useBean class attribute user id invalid 。意思是执行这条语句时没找到User这个类。
2、该异常出现的原因
在这条语句中:
<jsp:useBean id="user" class="User" scope="page">
<span style="color:#FF0000;">语法要求:必须在class="完整的类名"中,包名和类名都写完整,不能写裸体类</span>。所以这条语句应改为:
<pre name="code" class="plain"> <jsp:useBean id="user" class="file.User" scope="page">
这样,就能找到User这个类了。