Can't Create Bean Error

I modified the numguess example that comes with tomcat but I get a "can't create bean" error message when I call my jsp file. If anyone can see what I'm doing wrong or suggest ways to discover the problem I'd appreciate it.

My modified jsp:

<!--

Copyright (c) 1999 The Apache Software Foundation. All rights

reserved.

Number Guess Game

Written by Jason Hunter, CTO, K&A Software

http://www.servlets.com

-->

<%@ page import = "num.NumberGuessBean" %>

<jsp:useBean id="numguess" class="num.NumberGuessBean" scope="session"/>

<jsp:setProperty name="numguess" property="*"/>

<html>

<head><title>Number Guess</title></head>

<body bgcolor="white">

<font size=4>

<% if (numguess.getSuccess()) { %>

Congratulations! You got it.

And after just <%= numguess.getNumGuesses() %> tries.<p>

<% numguess.reset(); %>

Care to <a href="numguess.jsp">try again</a>?

<% } else if (numguess.getNumGuesses() == 0) { %>

Welcome to the Number Guess game.<p>

Play with default limits ( a number between 0 and 100)<p>

or enter upper and lower limits.<p>

<form method=get>

Play with defaults?: <input type=radio name=default value="yes">Yes

<input type=radio name=default value="no">No

<\form>

<% if (numguess.getRadio().equals("no")) { %>

<form method=get>

Enter upper limit:<input type=text name=upperLimit>

Enter lower limit:<input type=text name=lowerLimit>

<\form>

<% numguess.reset(); %>

<% } %>

<form method=get>

What's your guess? <input type=text name=guess>

<input type=submit value="Submit">

</form>

<% } else { %>

Good guess, but nope. Try <b><%= numguess.getHint() %></b>.

You have made <%= numguess.getNumGuesses() %> guesses.<p>

I'm thinking of a number between <jsp:getProperty name="numguess" property="lowerLimit"/> and <jsp:getProperty name="numguess" property="upperLimit"/>.<p>

<form method=get>

What's your guess? <input type=text name=guess>

<input type=submit value="Submit">

</form>

<% } %>

</font>

</body>

</html>

and the modified bean:

/*

* ====================================================================

*

* The Apache Software License, Version 1.1

*

* Copyright (c) 1999 The Apache Software Foundation. All rights

* reserved.

*

* Redistribution and use in source and binary forms, with or without

* modification, are permitted provided that the following conditions

* are met:

*

* 1. Redistributions of source code must retain the above copyright

*notice, this list of conditions and the following disclaimer.

*

* 2. Redistributions in binary form must reproduce the above copyright

*notice, this list of conditions and the following disclaimer in

*the documentation and/or other materials provided with the

*distribution.

*

* 3. The end-user documentation included with the redistribution, if

*any, must include the following acknowlegement:

*"This product includes software developed by the

*Apache Software Foundation (http://www.apache.org/)."

*Alternately, this acknowlegement may appear in the software itself,

*if and wherever such third-party acknowlegements normally appear.

*

* 4. The names "The Jakarta Project", "Tomcat", and "Apache Software

*Foundation" must not be used to endorse or promote products derived

*from this software without prior written permission. For written

*permission, please contact apache@apache.org.

*

* 5. Products derived from this software may not be called "Apache"

*nor may "Apache" appear in their names without prior written

*permission of the Apache Group.

*

* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED

* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES

* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE

* DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR

* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,

* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT

* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF

* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND

* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,

* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT

* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF

* SUCH DAMAGE.

* ====================================================================

*

* This software consists of voluntary contributions made by many

* individuals on behalf of the Apache Software Foundation. For more

* information on the Apache Software Foundation, please see

* <http://www.apache.org/>.

*

*/

/*

* Originally written by Jason Hunter, http://www.servlets.com.

*/

package num;

import java.util.*;

public class NumberGuessBean {

int answer;

boolean success;

String hint;

int numGuesses;

String radiochoice;

int lowerLimit=0;

int upperLimit=100;

String error;

public NumberGuessBean() {

reset();

}

public void setGuess(String guess) {

numGuesses++;

int g;

try {

g = Integer.parseInt(guess);

}

catch (NumberFormatException e) {

g = -1;

}

if (g == answer) {

success = true;

}

else if (g == -1) {

hint = "a number next time";

}

else if (g < answer) {

hint = "higher";

}

else if (g > answer) {

hint = "lower";

}

}

public void setRadio(String s) {

radiochoice=s;

}

public String getRadio() {

return radiochoice;

}

public void setLowerLimit( int lowerLimit) {

this.lowerLimit=lowerLimit;

}

public int getLowerLimit() {

return lowerLimit;

}

public void setUpperLimit(int upperLimit) {

this.upperLimit=upperLimit;

}

public int getUpperLimit() {

return upperLimit;

}

public boolean getSuccess() {

return success;

}

public String getHint() {

return "" + hint;

}

public String getError() {

return ""+error;

}

public int getNumGuesses() {

return numGuesses;

}

public void reset() {

if (getRadio().equals("yes")) {

answer = (int)(Math.random()*100);

}

else {

int i;

i=(int)(Math.random()*upperLimit);

if (i<lowerLimit) {

i=i+lowerLimit;

}

answer=i;

}

success = false;

numGuesses = 0;

}

}

>

[7502 byte] By [mpburke] at [2007-9-26 2:41:50]
# 1
implement synchronizable and createa constructor, then check it once again.
sngolla at 2007-6-29 10:18:01 > top of Java-index,Enterprise & Remote Computing,Web Tier APIs...