Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在会话bean中绑定表单值_Java_Jsp_Session_Javabeans - Fatal编程技术网

Java 在会话bean中绑定表单值

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 ..

我在会话中存储了一个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 ...

    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,请参阅上面的代码。很高兴使用此参数和属性对您有效。