Error cargando Collection en formulario
Publicado por Paco (4 intervenciones) el 25/09/2006 17:05:13
En la pagina jsp ProyectosEncontrados.jsp obtengo una lista de todos los proyectos de la BD. Ahi tengo dos
botones para cada fila (editar y añadir grupos).
Si voy a Añadir grupos, quiero mostrar en la nueva pagina (AgregarGrupos.jsp) el nombre del proyecto y una lista de todos
los grupos para seleccionar los que quiero para el proyecto (relacion many-to-many en la BD).
Obtengo el nombre del proyecto sin problema mediante:
<input type="text" name="nombre" value="<bean:write name="proyectoActivo" property="nombre"/>"/>
pero cuando intento mostrar todas las filas de la tabla grupos,
<logic:iterate name="listarTodosGrupos" id="grupo">
<bean:write name="grupo" property="idGrupo"/>
</logic:iterate>
donde listarTodosGrupos es una Collection guardada en sesion:
GrupoBean bgb = new GrupoBean(getDataSource(request,"proyecto"));
Collection grupos = bgb.getTodosGrupos();
session.setAttribute("listarTodosGrupos",grupos);
Obtengo el error:
org.apache.jasper.JasperException
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:370)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1062)
org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:386)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:229)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
java.lang.NullPointerException
org.apache.commons.beanutils.PropertyUtilsBean.getSimpleProperty(PropertyUtilsBean.java:1109)
org.apache.commons.beanutils.PropertyUtilsBean.getNestedProperty(PropertyUtilsBean.java:686)
org.apache.commons.beanutils.PropertyUtilsBean.getProperty(PropertyUtilsBean.java:715)
org.apache.commons.beanutils.PropertyUtils.getProperty(PropertyUtils.java:290)
org.apache.struts.taglib.TagUtils.lookup(TagUtils.java:950)
org.apache.struts.taglib.bean.WriteTag.doStartTag(WriteTag.java:225)
org.apache.jsp.Menus.Admin.agregarGruposAProyecto_jsp._jspx_meth_bean_write_2(org.apache.jsp.Menus.Admin.agregarGruposAProyecto_jsp:446)
org.apache.jsp.Menus.Admin.agregarGruposAProyecto_jsp._jspService(org.apache.jsp.Menus.Admin.agregarGruposAProyecto_jsp:199)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1062)
org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:386)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:229)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
En struts-config.xml tengo:
<form-bean name="agregarGrupoAProyectoForm" type="org.apache.struts.validator.DynaValidatorForm">
<form-property name="idProyecto" type="java.lang.String"/>
<form-property name="nombre" type="java.lang.String"/>
<form-property name="idGrupo" type="java.util.ArrayList"/>
</form-bean>
<action
name="agregarGrupoAProyectoForm" parameter="accion" path="/agregarGrupoAProyecto"
scope="request" type="project.struts.Actions.Admin.ProyectoAction" validate="false">
<forward name="addGroups" path="/Menus/Admin/verDatosProyecto.jsp"/>
<forward name="notAddGroups" path="/Menus/Admin/error.jsp"/>
</action>
Ayuda, por favor!!!
Gracias
botones para cada fila (editar y añadir grupos).
Si voy a Añadir grupos, quiero mostrar en la nueva pagina (AgregarGrupos.jsp) el nombre del proyecto y una lista de todos
los grupos para seleccionar los que quiero para el proyecto (relacion many-to-many en la BD).
Obtengo el nombre del proyecto sin problema mediante:
<input type="text" name="nombre" value="<bean:write name="proyectoActivo" property="nombre"/>"/>
pero cuando intento mostrar todas las filas de la tabla grupos,
<logic:iterate name="listarTodosGrupos" id="grupo">
<bean:write name="grupo" property="idGrupo"/>
</logic:iterate>
donde listarTodosGrupos es una Collection guardada en sesion:
GrupoBean bgb = new GrupoBean(getDataSource(request,"proyecto"));
Collection grupos = bgb.getTodosGrupos();
session.setAttribute("listarTodosGrupos",grupos);
Obtengo el error:
org.apache.jasper.JasperException
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:370)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1062)
org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:386)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:229)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
java.lang.NullPointerException
org.apache.commons.beanutils.PropertyUtilsBean.getSimpleProperty(PropertyUtilsBean.java:1109)
org.apache.commons.beanutils.PropertyUtilsBean.getNestedProperty(PropertyUtilsBean.java:686)
org.apache.commons.beanutils.PropertyUtilsBean.getProperty(PropertyUtilsBean.java:715)
org.apache.commons.beanutils.PropertyUtils.getProperty(PropertyUtils.java:290)
org.apache.struts.taglib.TagUtils.lookup(TagUtils.java:950)
org.apache.struts.taglib.bean.WriteTag.doStartTag(WriteTag.java:225)
org.apache.jsp.Menus.Admin.agregarGruposAProyecto_jsp._jspx_meth_bean_write_2(org.apache.jsp.Menus.Admin.agregarGruposAProyecto_jsp:446)
org.apache.jsp.Menus.Admin.agregarGruposAProyecto_jsp._jspService(org.apache.jsp.Menus.Admin.agregarGruposAProyecto_jsp:199)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1062)
org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:386)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:229)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
En struts-config.xml tengo:
<form-bean name="agregarGrupoAProyectoForm" type="org.apache.struts.validator.DynaValidatorForm">
<form-property name="idProyecto" type="java.lang.String"/>
<form-property name="nombre" type="java.lang.String"/>
<form-property name="idGrupo" type="java.util.ArrayList"/>
</form-bean>
<action
name="agregarGrupoAProyectoForm" parameter="accion" path="/agregarGrupoAProyecto"
scope="request" type="project.struts.Actions.Admin.ProyectoAction" validate="false">
<forward name="addGroups" path="/Menus/Admin/verDatosProyecto.jsp"/>
<forward name="notAddGroups" path="/Menus/Admin/error.jsp"/>
</action>
Ayuda, por favor!!!
Gracias
Valora esta pregunta


0