有一个java beans类 UserData 。
package random;
public class UserData {
String username;
String email;
int age;
public void setUsername( String value )
{
username = value;
}
public void setEmail( String value )
{
email = value;
}
public void setAge( int value )
{
age = value;
}
public String getUsername() { return username; }
public String getEmail() { return email; }
public int getAge() { return age; }
}
还有一个jsp文件。
SaveName.jsp
<jsp:useBean id="user" class="random.UserData" scope="session"/>
<jsp:setProperty name="user" property="*"/>
<HTML>
<BODY>
<A HREF="NextPage.jsp">Continue</A>
</BODY>
</HTML>
我一直收到错误提示未定义类型:user.UserData 。
知道如何纠正它吗? 这已经得到纠正。感谢那些帮助过的人。 从这里提供帮助。 我还有一个疑问。 除了上述两个文件外,还有两个文件。
NextPage.jsp上
<jsp:useBean id="user" class="random.UserData" scope="session"/>
<HTML>
<BODY>
You entered<BR>
Name: <%= user.getUsername() %><BR>
Email: <%= user.getEmail() %><BR>
Age: <%= user.getAge() %><BR>
</BODY>
</HTML>
form.html
<HTML>
<BODY>
<FORM METHOD=POST ACTION="SaveName.jsp">
What's your name? <INPUT TYPE=TEXT NAME=username SIZE=20><BR>
What's your e-mail address? <INPUT TYPE=TEXT NAME=email SIZE=20><BR>
What's your age? <INPUT TYPE=TEXT NAME=age SIZE=4>
<P><INPUT TYPE=SUBMIT>
</FORM>
</BODY>
</HTML>
但是当我跑这个。我没有得到任何输入的值。代替。我明白了:
你输入了 名称:null 电子邮件:null 年龄:0
任何想法为什么?
答案 0 :(得分:1)
请尝试
<jsp:useBean id="user" class="random.UserData" scope="session"/>
答案 1 :(得分:0)
您在JSP中指定了类class="user.UserData"
,而您在Java中声明为random.UserData
(包+类名)。
编辑 (问题的第二部分)
在SaveName.jsp
中,您实际上没有保存任何内容..您需要设置如下值:
<jsp:setProperty name="user" property="username" value="${param.username}" />
另请注意,这应该在Servlet中完成,而不是在JSP中完成。 JSP在这里获取值并显示它们,而不是对它们进行处理。