日期:2014-05-18  浏览次数:20680 次

用javaBean从前页面取值的基础问题,问题写点很细了,望指点!
javaBean的基础问题,望指点!
最近刚开始看JSP,以前对JAVA语法什么的有所了解,没想到一个小问题整了一天没整明白,望高人指点一下,先谢了!
环境:JB9+Tomcat4.0(JB9自带),程序调试就在JB里进行的
程序非常简单,2个JSP文件一个JAVA文件,编译通过.
------------------------
myjsp1.jsp
<%@   page   language= "java "   contentType= "text/html;   charset=GBK "     %>
<html>
<head>
<title>
myjsp1
</title>
</head>
<body   bgcolor= "#ffffc0 ">
<form   action= "jsp2.jsp "   method= "POST ">
<input   type= "text "   name= "sID "   value= "123 ">
<input   type= "submit "     value= "Submit ">
<input   type= "reset "   value= "Reset ">
</form>
</body>
</html>
------------------------
jsp2.jsp
<%@   page   language= "java "   contentType= "text/html;   charset=GBK "     %>
<jsp:useBean   id= "tb "   class= "sjb.tempbean.tempbean "   scope= "page ">
<jsp:setPropery   name= "tb "   propery= "* "/>
</jsp:useBean>

tempbean的SID: <%=tb.getSID()%>
<BR>
request传来的SID: <%out.println(request.getParameter( "sID ").toString());%>
------------------------
tempbean.java
package   sjb.tempbean;
public   class   tempbean   {
    private   String   sID;
    public     void   setSID(String   sID)
    {
        this.sID=sID;
    }
    public   String   getSID()
    {
        return   this.sID;
    }

    public   tempbean()   {
//sID= "此处斌值可以在jsp2.jsp中显示 ";
    }
}
------------------------
问题如下:
1,在myjsp1.jsp中写入的值,提交连到jsp2.jsp页面上,用bean的GETTER方法取不出myjsp1.jsp的sID的值,用request可以取得结果.我看书是这么写的,为什么我总得到null值?
2,在JB9中如果server选Tomcat4.1(JB9自带)则,jsp2.jsp页面一片空白,什么也不显示为啥?
3,在将程序COPY到Tomcat5(单独安装的)中,则jsp2.jsp页面出错???程序打包发布到WebLogic   Workshop   8.1中则与问题1效果一样
这么个小问题整了一天,败了!感觉还是MS的.NET亲切一些,哈哈



------解决方案--------------------

tempbean的SID: <%=tb.getSID()%>
前加上
<%tb.setSID(request.getParameter( "sID ").toString());%>

实体bean的属性sID你没有对他设置值,所以根本取不到,或是
把tempbean.java中的private String sID;改成private String sID= "test ";
看下效果~!
------解决方案--------------------
注意结贴喔


你的结贴是我回贴的最大动力!