Problemas con jsp:useBean
En el código de una página JSP instancio varios beans de la siguiente manera:
<jsp:useBean
id="myBean"
class="classes.control.web.myBean"
scope="session">
Usando en mi jsp el bean no tengo ningún problema, por ejemplo en una llamada así:
<% ObjectoEjemplo obj = myBean.getObjeto(); %>
Sin embargo, si en este JSP hago lo siguiente:
<%@ include file="otroJSP.jsp"%>
Me ocurre, q aunq en un principio, y si en ese otroJSP escribo el siguiente código:
<% ObjectoEjemplo obj = myBean.getObjeto(); %>
Éste no me da error y funciona correctamente, llega un momento, cuando la aplicación lleva tiempo en marcha (algún día) en q me da el siguiente error:
primerJSP_JSP: cannot resolve symbol
symbol variable myBean
location: class org.apache.jsp.primerJSP_JSP
ObjectoEjemplo obj = myBean.getObjeto();
^
Por alguna razón me ha desaparecido la referencia en ese momento, cuando hasta entonces no había habido problema. ¿ intuis porque ?
Y otra pregunta, ¿ puedo definir en "otroJSP.jsp" el mismo acceso a bean con otro identificador y utilizarlo ?
Por ejemplo:
<jsp:useBean
id="myBean2"
class="classes.control.web.myBean"
scope="session">
<% ObjectoEjemplo obj = myBean2.getObjeto(); %>
¿ Habría algun tipo de conflicto ?
Gracias de antemano
<jsp:useBean
id="myBean"
class="classes.control.web.myBean"
scope="session">
Usando en mi jsp el bean no tengo ningún problema, por ejemplo en una llamada así:
<% ObjectoEjemplo obj = myBean.getObjeto(); %>
Sin embargo, si en este JSP hago lo siguiente:
<%@ include file="otroJSP.jsp"%>
Me ocurre, q aunq en un principio, y si en ese otroJSP escribo el siguiente código:
<% ObjectoEjemplo obj = myBean.getObjeto(); %>
Éste no me da error y funciona correctamente, llega un momento, cuando la aplicación lleva tiempo en marcha (algún día) en q me da el siguiente error:
primerJSP_JSP: cannot resolve symbol
symbol variable myBean
location: class org.apache.jsp.primerJSP_JSP
ObjectoEjemplo obj = myBean.getObjeto();
^
Por alguna razón me ha desaparecido la referencia en ese momento, cuando hasta entonces no había habido problema. ¿ intuis porque ?
Y otra pregunta, ¿ puedo definir en "otroJSP.jsp" el mismo acceso a bean con otro identificador y utilizarlo ?
Por ejemplo:
<jsp:useBean
id="myBean2"
class="classes.control.web.myBean"
scope="session">
<% ObjectoEjemplo obj = myBean2.getObjeto(); %>
¿ Habría algun tipo de conflicto ?
Gracias de antemano
En principio no veo yo por qué debería haber conflicto.
En la página a incluir pones la misma directiva jsp:useBean y, si se llaman igual y ya hay una en sesión hará referencia a esa instancia y no creará otra.
Lo que no recuerdo es si <%@include file %> se interpreta el JSP que incluyas. Si no se interpreta, no encontrará la referencia. Prueba con <jsp:include a ver si hay diferencias (Sinceramente, no recupero si las hay).
Un saludo,
Ken
En la página a incluir pones la misma directiva jsp:useBean y, si se llaman igual y ya hay una en sesión hará referencia a esa instancia y no creará otra.
Lo que no recuerdo es si <%@include file %> se interpreta el JSP que incluyas. Si no se interpreta, no encontrará la referencia. Prueba con <jsp:include a ver si hay diferencias (Sinceramente, no recupero si las hay).
Un saludo,
Ken