我想在jsp中建立一个bean对象并对它赋值,然后在servlet中获得这个bean的对象,现在出现这样的问题:
在jsp中使用:<jsp:useBean id="sendmailbean" scope="request" class="WebBean.MailBean" >
<jsp:setProperty name="sendmailbean" property="*" />
</jsp:useBean>
<FORM name="form1" method="POST" action="Send">
</FORM>
Send是servlet的url
在servlet中用: MailBean smb = (MailBean) request.getAttribute("sendmailbean");
获得的smb是null
为什么呢?request的有效期已经过了吗?如果改成下面这样:
在jsp中使用:<jsp:useBean id="sendmailbean" scope="session" class="WebBean.MailBean" >
<jsp:setProperty name="sendmailbean" property="*" />
</jsp:useBean>
<FORM name="form1" method="POST" action="Send">
</FORM>
在servlet中用:HttpSession mysession = request.getSession();
MailBean smb = (MailBean) mysession.getAttribute("sendmailbean");
这次获得smb虽然不是null了,可是,用bean的get方法取得的bean属性值都是null。烦请各位高手指点一二阿~!
在jsp中使用:<jsp:useBean id="sendmailbean" scope="request" class="WebBean.MailBean" >
<jsp:setProperty name="sendmailbean" property="*" />
</jsp:useBean>
<FORM name="form1" method="POST" action="Send">
</FORM>
Send是servlet的url
在servlet中用: MailBean smb = (MailBean) request.getAttribute("sendmailbean");
获得的smb是null
为什么呢?request的有效期已经过了吗?如果改成下面这样:
在jsp中使用:<jsp:useBean id="sendmailbean" scope="session" class="WebBean.MailBean" >
<jsp:setProperty name="sendmailbean" property="*" />
</jsp:useBean>
<FORM name="form1" method="POST" action="Send">
</FORM>
在servlet中用:HttpSession mysession = request.getSession();
MailBean smb = (MailBean) mysession.getAttribute("sendmailbean");
这次获得smb虽然不是null了,可是,用bean的get方法取得的bean属性值都是null。烦请各位高手指点一二阿~!
解决方案 »
- java web 连接oracle数据库乱码
- sql错误 帮忙看看
- 用jsp如何做站内搜索啊
- 为什么我编写的html文件在IE浏览器中打开正常,在FireFox浏览器中打开排版就乱了?
- 如何处理搜索引擎中页面重复问题
- httpServlet包问题
- jsp配置连接池not bound in this Context报错?
- 连接池调用,不知何解,附源码
- 一个传递参数的简单问题!
- 发布应用后,在tomcat配置下,log4j无法每天生成一个日志文件,而是覆盖上一天的文件,求大神看看
- struts+hibernate时候Transaction not successfully started怎么解决啊
- iReport 新手求解!哪位大虾能帮忙看看
1.数据对象bean 不要出现在页面中创建.
就算创建了也不要保存在page,session中,page保存的数据是很临时的,session是有时间延时的,都不好。
2.bean 的创建应该在servlet中。
<jsp:setProperty name="sendmailbean" property="*" />给bean中的属性赋值,而且在servlet中使用bean也算是bean和servlet结合使用吗?
我是刚开始学习,有很多都不懂,麻烦大虾能讲明白些吗?
JSP页面表单: <form mothed="post" action="send">
<input type="text" name="textfield">
</form>javaBean (bean.java):定义两个方法setxxx()、getxxx()servlet( send.java ) : 具体继承什么接口等servlet的固定格式我就不写了
//获取JSP页面表单传递过来的值
String xxx = (String)request.getParameter("textfield");
//创建一个javaBean的对象
bean bean = new bean();
//将传递过来的表单值存储在javaBean中
bean.setxxx("xxx");OVER!
多问一句:
<jsp:useBean id="sendmailbean" scope="request" class="WebBean.MailBean" >
<jsp:setProperty name="sendmailbean" property="*" />
</jsp:useBean>
是只用在jsp+javaBean里的嘛?
2.你访问该页面的Request并不存在你需要的参数,所以sendmailbean的Get方法返回null,可以这样试试,假如该页面叫A.jsp,你这样访问:a.jsp?mailto=aaa&mailfrom=bbb,试一下,在servlet中是否可以使用Get方法。
3.如果你使用ide,在你当前页面应该有个警告,“sendmailbean没有被访问”
3.我没有试验,如果说错了,就当我是胡说的!