Java 在会话bean中绑定表单值
我在会话中存储了一个Bean和三个表单。我需要将提交的值保存到bean中,顺序如下:Form1.jsp->Form2.jsp->Form3.jsp->ViewValues.jsp 这是我的豆子:Java 在会话bean中绑定表单值,java,jsp,session,javabeans,Java,Jsp,Session,Javabeans,我在会话中存储了一个Bean和三个表单。我需要将提交的值保存到bean中,顺序如下:Form1.jsp->Form2.jsp->Form3.jsp->ViewValues.jsp 这是我的豆子: package bean; public class Cotizacion implements java.io.Serializable { private static final long serialVersionUID = 1L; // Some properties ..
package bean;
public class Cotizacion implements java.io.Serializable {
private static final long serialVersionUID = 1L;
// Some properties ...
public Cotizacion(){
// Nothing ...
}
// Accessors & toString ...
}
第一个JSP具有以下操作:
<jsp:useBean id="cotizacion" class="bean.Cotizacion" scope="session" />
<jsp:useBean id="cotizacion" class="bean.Cotizacion" scope="session">
<jsp:setProperty name="cotizacion" property="*" />
</jsp:useBean>
第二个和第三个JSP具有以下操作:
<jsp:useBean id="cotizacion" class="bean.Cotizacion" scope="session" />
<jsp:useBean id="cotizacion" class="bean.Cotizacion" scope="session">
<jsp:setProperty name="cotizacion" property="*" />
</jsp:useBean>
当我尝试第三种形式的
时,控制台输出为:
jsp:Ford;T1990;5000;无效的无效的无效的无效的无效的空的
bean仅在第一次提交后填充。bean属性与请求参数相同
有什么想法吗?
从请求参数重新初始化属性,但您没有使用参数或参数为空。确保bean具有getter和setter。如果删除这个标记,bean应该保留会话值。如果您想用请求中的参数填充bean,那么使用
<jsp:useBean id="cotizacion" class="bean.Cotizacion" scope="session"></jsp:useBean>
<jsp:setProperty name="cotizacion" property="*" />
上面的示例导致对HTTP请求参数进行迭代,将bean属性名称与请求参数名称匹配,并根据相应的请求参数值设置bean属性值。如果使用POST方法提交表单,则请求中缺少参数 Roman,参数存在于POST请求中。setter在bean中定义。如果我删除
,每次提交后将不会填充bean。如果您想使用请求中的参数填充bean,请参阅上面的代码。很高兴使用此参数和属性对您有效。