2016-02-14 53 views
0

这是JSP标签我使用如何使用JSP

<jsp:useBean id="user" scope="request" class="business.Bean"> 
    <p>Name is <jsp:getProperty name="user" property="name"/></p><br> 
    <p>Surname is <jsp:getProperty name="user" property="surname"/></p><br> 
</jsp:useBean> 

这是正确给数值为java-豆怎么我设置了豆从servlet request.getSession().setAttribute("user", new Bean("MyName", "MySurname")); 。这种设置工作,当我使用EL但是当我在这里使用它我有“空”的双重输出,这是bean的默认空构造函数,我应该如何使它在这里工作?

回答

1

当您使用class属性,你accualy创建该类的一个新实例,你把它这就是为什么你你的bean带有两个空的属性范围的要求,但是这不是你想要做什么,你想使用request.getSession().setAttribute("user", new Bean("MyName", "MySurname"));

所以你应该改变与类型属性

<jsp:useBean id="user" scope="session" type="business.Bean"> 
</jsp:useBean> 
<p>Name is <jsp:getProperty name="user" property="name"/></p><br> 
<p>Surname is <jsp:getProperty name="user" property="surname"/></p><br> 
+0

类的属性,如果我删除类检索您的请求范围已经设置了豆和替换它的标签类型“< JSP:useBean的ID = “用户” 范围= “请求” 类型= “business.Bean”> “我有” HTTP Statu 500家 - 发生异常处理JSP页面/index2.jsp在第11" 行,这是该行 – T4l0n

+0

我的坏我已经编辑了答案的外应 achabahe

+0

即便如此我有同样的错误 – T4l0n