一个关于useBean使用的问题

hellen_99010 2010-04-25 10:34:01
我在一页面用useBean,setProperty用表单把值提交给别一页面用getProperty提取值时怎么提取不出来?求教各位大虾!小弟感激涕零!在线等,源码如下:


<%@ page language="java" contentType="text/html; charset=GBK"
pageEncoding="GBK"%>
<jsp:useBean id="student" class="szenjinn.Studen" scope="application"/>
<jsp:setProperty name="student" property="*"/>


<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK">
<title>UseBean Example</title>
</head>
<body>
<form action="showBeanContext.jsp" method="get">
<br>学生号:<input type="text" name="id">
<br>  姓名:<input type="text" name="name">
<br>  年龄:<input type="text" name="age">
<br>  出生日期:<input type="text" name="birthday">
<input type="submit" value="提交">
<input type="reset" value="清空">
</form>

</body>
</html>




<%@ page language="java" contentType="text/html; charset=GBK"
pageEncoding="GBK"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK">
<title>useBean Example</title>
</head>
<body>
<br>学生号:<jsp:getProperty property="student" name="id"/>
<br>  姓名:<jsp:getProperty property="student" name="name"/>
<br>  出生日期:<jsp:getProperty property="student" name="birthday"/>
</body>
</html>



package szenjinn;

public class Studen {
private String id = null;
private String name = null;
private int age;
private String birthday = null;

public void setId(String id) {
this.id = id;
}

public void setName(String name) {
this.name = name;
}

public void SetAge(int age) {
this.age = age;
}

public void setBirthday(String birthday) {
this.birthday = birthday;
}

public String getId() {
return id;
}

public String getName() {
return name;
}

public int getAge() {
return age;
}

public String getBirthday() {
return birthday;
}
}


访问提交页面时报错信息:

HTTP Status 500 -

--------------------------------------------------------------------------------

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: jsp:getProperty for bean with name 'id'. Name was not previously introduced as per JSP.5.3
org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1086)
org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1124)
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:3416)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:231)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:347)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:327)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:314)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:589)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
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)


note The full stack trace of the root cause is available in the Apache Tomcat/6.0.26 logs.





...全文
220 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
tianhandigeng 2010-04-26
  • 打赏
  • 举报
回复
age int类型的不能给赋值的嘛?
什么意思?没懂
hellen_99010 2010-04-26
  • 打赏
  • 举报
回复
int类型的值没有赋到.在显示页面提取出来的是NULL的值,我也郁闷呢.
hellen_99010 2010-04-25
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 fyhack 的回复:]
没有导入JAVABEAN的包;
提交的参数没有赋值给JAVABEAN;//setProperty
获取BEAN对象的写法错误;//jsp:getProperty property="BEAN属性" name="BEAN—ID"
[/Quote]

我导入了包,把getProperty改过来了.还是报没有找到Studen这类,是怎么回事?
fyhack 2010-04-25
  • 打赏
  • 举报
回复
没有导入JAVABEAN的包;
提交的参数没有赋值给JAVABEAN;//setProperty
获取BEAN对象的写法错误;//jsp:getProperty property="BEAN属性" name="BEAN—ID"
princess_rosie 2010-04-25
  • 打赏
  • 举报
回复
<br>学生号:<jsp:getProperty property="student" name="id"/>
<br>  姓名:<jsp:getProperty property="student" name="name"/>
<br>  出生日期:<jsp:getProperty property="student" name="birthday"/>
从你这些个JSP页面来看,你的name命名规则也用的相当不规范,不知道内部开发设计就是这样的,还是你学的并不深入
princess_rosie 2010-04-25
  • 打赏
  • 举报
回复
<form action="showBeanContext.jsp" method="get">
把这个action后面不要直接跟JSP页面,跟上指向这个JSP页面的那个Java类.
而那个Java类通常是在XML文件已经配置好了的,在配置文件中servlet 里path属性就是那个Java类的名称
指向那个就OK了,JSP页面直接跳转到另一个JSP页面我不大会用
hellen_99010 2010-04-25
  • 打赏
  • 举报
回复
JSP不能自动转换的嘛?还是说要自己转换?
hellen_99010 2010-04-25
  • 打赏
  • 举报
回复
还有一小问题.age int类型的不能给赋值的嘛?
hellen_99010 2010-04-25
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 tianhandigeng 的回复:]
<jsp:useBean id="student" class="szenjinn.Studen" />
<jsp:SetProperty name="student" property="*" />

写在第二个程序里,写在第一个程序里,有啥用啊,这个程序压根就没用到你写的javaBean!
[/Quote]

非常感谢你的帮助.是这样子的.
naruto__ 2010-04-25
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 tianhandigeng 的回复:]
<jsp:useBean id="student" class="szenjinn.Studen" />
<jsp:SetProperty name="student" property="*" />

写在第二个程序里,写在第一个程序里,有啥用啊,这个程序压根就没用到你写的javaBean!
[/Quote]

我也觉得 而且你表单里的内容可能都传不到student属性里。。。
tianhandigeng 2010-04-25
  • 打赏
  • 举报
回复
<jsp:useBean id="student" class="szenjinn.Studen" />
<jsp:SetProperty name="student" property="*" />


写在第二个程序里,写在第一个程序里,有啥用啊,这个程序压根就没用到你写的javaBean!
Super_Ninja 2010-04-25
  • 打赏
  • 举报
回复
你写的Studen这个class文件就没有引用到jsp页面中去啊!可以在<%@ page language="java" contentType="text/html; charset=GBK" pageEncoding="GBK"%> page页面中加入import="";注意编译后的class文件位置一定要放正确(WEB-INF文件夹下面)!

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧