This week's giveaway is in the EJB and other Java EE Technologies forum. We're giving away four copies of EJB 3 in Action and have Debu Panda, Reza Rahman, Ryan Cuprak, and Michael Remijan on-line! See this thread for details.
I'm not familiar with the <bean:define> tag, but in the JSP <jsp:useBean> tag, if you specify the class with type="classname" it will not create an instance of the class - instead it will expect to find the object in the session (or wherever). If you want it to create the object if it doesn't already exist, you have to use class="classname". Perhaps it's the same with the <bean:define> tag?