【发布时间】:2013-05-18 11:33:33
【问题描述】:
我在这个论坛上搜索过,但没有找到合适的解决方案。如果不小心这个是重复的,那么对不起。
遇到问题... 我正在使用这样的 servlet 从我的一个 HTML 中设置值 index.html 的代码
<FORM METHOD="POST" ACTION="user">
What's your name? <INPUT TYPE="TEXT" NAME="username" SIZE=20>`
servlet 代码
package test;
......
UserBean ub = new UserBean();
String name = request.getParameter("username");
ub.setFirstName(name);
request.setAttribute("user",ub);
RequestDispatcher rd=request.getRequestDispatcher("/getJsp.jsp");
rd.forward(request,response);
servlet 和 bean 都放在名为 test 的包中。
UserBean 的代码:
private String firstName;
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
System.out.println(firstName);
}
通过 bean,我可以在服务器控制台上打印正确的 name 值。 从 servlet 设置值后,我试图从名为 getJsp.jsp 的 JSP 访问 bean 值
getJsp.jsp
<table>
<jsp:useBean id="user" type="test.UserBean" class="test.UserBean" scope="request" >
<tr>
<td> Id : </td>
<td> <jsp:getProperty name="user" property="firstName"/></td>
</tr>
</jsp:useBean>
</table>
从 JSP 访问 bean 属性时出现以下错误:
org.apache.jasper.JasperException: /getJsp.jsp (line: 10, column: 1) useBean 类属性 UserBean 的值无效。
我无法理解此错误的代码中的问题。 请帮帮我。
谢谢。
【问题讨论】:
-
@JB 谢谢你的帮助。我也已经试过了。刚才我用这两种方法在 netbeans 中尝试了同样的例子,但要么我得到“null”,要么什么都没有
-
-1 表示未针对与原始问题完全无关的新问题发布新问题(或至少使用后续信息编辑现有问题)。
-
@RaviThapliyal 我在 cmets 中更新了你的答案,如果你检查过的话。无论如何,感谢您让我知道我必须更新问题而不是发表评论。