gpt4 book ai didi

java - 在 session bean 中绑定(bind)表单值

转载 作者:太空宇宙 更新时间:2023-11-04 06:28:36 25 4
gpt4 key购买 nike

我有一个存储在 session 中的Bean,以及三个表单。我需要将提交的值保存到 bean,顺序如下: Form1.jsp -> Form2.jsp -> Form3.jsp -> ViewValues.jsp

这是我的 bean :

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 有以下操作:

<jsp:useBean id="cotizacion" class="bean.Cotizacion" scope="session">
<jsp:setProperty name="cotizacion" property="*" />
</jsp:useBean>

当我尝试<% System.out.print("Cobertura.jsp: " + cotizacion); %>时在第三种形式中,控制台输出为:

Cobertura.jsp: Ford;T;1990;5000;null;null;null;null;null;null

该 bean 仅在第一次提交后填充。 bean 属性与请求参数相同。

有什么想法吗?

最佳答案

<jsp:setProperty name="cotizacion" property="*" />从请求参数重新初始化属性,但您没有使用参数或参数为空。确保 Bean 具有 getter 和 setter。如果删除此标记,bean 应该保留 session 值。如果您想使用请求中的参数填充 bean,请使用

<jsp:useBean id="cotizacion" class="bean.Cotizacion" scope="session"></jsp:useBean>
<jsp:setProperty name="cotizacion" property="*" />

上面的示例会迭代 HTTP 请求参数,将 bean 属性名称与请求参数名称进行匹配,并根据相应的请求参数值设置 bean 属性值。如果您使用 POST 方法提交表单,则请求中会缺少参数。

关于java - 在 session bean 中绑定(bind)表单值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26454390/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com