好的.页面牵移前:session.setAttribute("pb",pb);
RequestDispatcher b = request.getRequestDispatcher("a.jsp");
b.forward(request,response);a.jsp:<jsp:useBean id="pb" scope="session" class="guilin.project.PrjBean"/>
...<form name="form" action="/guilin/slip" target="_self" method="post">
<TABLE border="0">
<TBODY>
<TR>
<TD width="100">编号</TD>
<TD><jsp:getProperty name="pb" property="PRJID"/></TD> <TD width="100">级别</TD>
<TD><jsp:getProperty name="pb" property="RANKID"/></TD> </TR>
</tbody>
</table>
<TABLE border="0" width="100%">
<TR>
<TD align="left">
<input type="submit" value="确认" name="confirm" class="button">
</TD>
</TR>
</TABLE>
</FORM>
<jsp:setProperty name="pb" property="*"/>页面牵移后:
PrjBean pb = session.getAttribute("pb");
System.out.println(pb.getRANKID());结果:
无
帮忙看看,上面的代码有什么问题
RequestDispatcher b = request.getRequestDispatcher("a.jsp");
b.forward(request,response);a.jsp:<jsp:useBean id="pb" scope="session" class="guilin.project.PrjBean"/>
...<form name="form" action="/guilin/slip" target="_self" method="post">
<TABLE border="0">
<TBODY>
<TR>
<TD width="100">编号</TD>
<TD><jsp:getProperty name="pb" property="PRJID"/></TD> <TD width="100">级别</TD>
<TD><jsp:getProperty name="pb" property="RANKID"/></TD> </TR>
</tbody>
</table>
<TABLE border="0" width="100%">
<TR>
<TD align="left">
<input type="submit" value="确认" name="confirm" class="button">
</TD>
</TR>
</TABLE>
</FORM>
<jsp:setProperty name="pb" property="*"/>页面牵移后:
PrjBean pb = session.getAttribute("pb");
System.out.println(pb.getRANKID());结果:
无
帮忙看看,上面的代码有什么问题
解决方案 »
- JSP页面传值的问题
- 已经深夜了,还是找不到这个include .html乱码的解决方法
- 关于按钮是否点击作判断?
- Cookie getMaxAge() 的问题?
- 请问现在有没有开源的博客,必须是jsp+servlet+bean的(不要有SSH框架的),而且是多用户的?
- 请各位高手帮帮忙!!谢谢
- Tomcat6启动时 重复加载和警告
- 紧急求助
- How to replace a file in a war ?
- servlet 放在tomcat的哪个目录下?
- 一个始终无法解决的问题,恳请赐教!!!
- 试试我的小代码 checkbox传值问题 为什么只是在第一个checkbox被选时才正常。救命阿 我搞了一个下午都搞不定,眼都花啦。。
name="beanInstanceName"
{ property="*" |
property="propertyName" [ param="parameterName" ] |
property="propertyName" value="{string | <%= expression %>}"
}
/> 在前面我们就知道了可以使用 jsp:setProperty 来为一个bean的属性赋值。您可以使用两种方式实现它。其一是,在jsp:useBean后(而不是在之内)使用jsp:setProperty:<jsp:useBean id="myName" ... />
...
<jsp:setProperty name="myName"
property="someProperty" ... /> 在这种方式中,jsp:setProperty 将被执行无论是否已有一个具有相同的id和scope的bean存在。另一种方式是,jsp:setProperty出现在jsp:useBean 元素内,如:<jsp:useBean id="myName" ... >
...
<jsp:setProperty name="myName"
property="someProperty" ... />
</jsp:useBean> 此种情况下,jsp:setProperty仅在新的对象被实例化时才执行。 以下是四种jsp:setProperty的可用的属性: 属性 用法name
这是一个必选属性。它指出哪一个bean的属性将被设置。jsp:usebean必须出现在jsp:setProperty之前。property
这是一个必选属性。表明您将设置哪一个属性。然而,有一个特殊的情况:如果以"*"为值意味着,所有的名称与bean的属性匹配的request参数都将被传递到相应的属性设置方法。
value
这是一个可选属性。它指定被设置的属性的值。字符串的值通过相应的对象或包的标准的valueOf方法将自动的转换为numbers,boolean,Boolean,byte,Byte,char,和Character。例如,boolean或Boolean属性的值“true”将通过Boolean.valueOf方法转化,而,一个int或Integer属性的值“42”将通过Integer.valueOf转化。您不能同时使用value和param属性,但,两个都不用是允许的。param
这是一个可选属性。它指明了bean的属性应该继承的request的参数。如果当前的request没有这样的一个参数,就什麽也不做:系统并不将null传给设置属性的方法。因此,您可以使用bean的缺省值。例如下面的这段程序执行“将numberOfItems属性设置为任意numItems request参数的值,如果有这样的一个request参数,否则什么也不做。”<jsp:setProperty name="orderBean"
property="numberOfItems"
param="numItems" /> 如果您将value和param同时缺省,这和您将param的名称设为bean的属性名相同一样。您可以通过将name的值设置为”*”和省略value和param来自动的使用与bean的属性相应的request的属性。在这种情况下,服务器将反复的查找可用的属性和request参数来匹配具有相同名字的。
<jsp:setProperty name="DOMRender" property="sourceXML" value="link.xml"/>
</jsp:useBean>确保bean有
String sourceXML;
public void setSourceXML(String str)
{}
<jsp:setProperty name="pb" property="RANKNAME" param="RANKNAME"/>
bean中有
setRANKNAME(String str){}
jsp中有
<select name="RANKNAME">...
照书上说,JSP应该能够自动把用户在SELECT中选择的结果存入bean中,
但是我没有成功:(
为什么???