If you specify a beanName, the container will instanciate a new bean by using java.beans.Beans's instantiate() method. You should check the API of this class to understand what this beanName means.
if you have a serialized bean as .ser that you want to use as a bean instead then beanName can be used...class or beanName can be used .. not both at a time..beanName can take runtime value(in scriplet expr or EL expr) whereas class attribute can not take runtime value...you can replace class attribute with beanName but beanName can not be replaced by class attribute as beanName provides some extra functionalities(loading serialized bean,run time values ) that class attrib doen't.hope it will help..
SCJP 1.4<br />SCWCD 1.4(91%)<br />Working on SCJD -Bodgitt & Scrapper Constructions...<br /> <br />"It takes 43 muscles to frown & 17 to smile but it doen't take any to just sit there with a dumb look on your face .. Keep Smiling "