<jsp:useBean id="numguess" class="num.NumberGuessBean" scope="session"/>
<jsp:setProperty name="numguess" property="*"/>
这2句是连起来的<jsp:setProperty name="numguess" property="*"/>
其中property="*"表示bean的属性都是从request里面取,所以request对象中的参数名称必须和nean中的属性名字相同

解决方案 »

  1.   

    还是没有理解,是否能够详细解释下,“bean的属性都是从request里面取”,这里面bean属性是什么?难道他会自动调用setguess这个方法?如果有另外个方法也是同样内容但是方法名不一样,那怎么调用的呢?
      

  2.   

    guess不是属性~随意不会调用~~
    你没看见
    public NumberGuessBean() {
        reset();
    }
    这是bean的构造函数啊!!生成bean对象时会自动调用的
      

  3.   

    setGuess()调用了吗?我没有在JSP中看到相关语句呀!
    因为numguess是Bean对象,numguess没有调用setGuess(String );
    我是JSP新手,不知道说的对不对!
      

  4.   

    说实话我没有怎么看懂大家的回答,我的问题是有关setguess的问题,numberguessbean是构造函数的确没有错,我就是奇怪找不到调用setguess方法的地方,但是如果我rename下,改成setguess_1,程序通不过的。所以很奇怪。
      

  5.   

    <jsp:useBean id="numguess" class="num.NumberGuessBean" scope="session"/>
    相当于创建numguess实例numguess
    <jsp:setProperty name="numguess" property="*"/>
    相当于调用numguess的Setter方法!!(包括你说的setguess方法)
    [前提:request对象中的参数名称必须和nean中的属性名字相同]劝你看看javabean的基础知识!OK?!
    如果我rename下,改成setguess_1,程序通不过的。所以很奇怪。
    scope="session"这是原因!如果你关掉Browse,重开就不会出错!!在一次会话内不允许rename!session、page、request、application好好看看!