[richfaces-issues] [JBoss JIRA] Updated: (RF-9444) ExtendedDataTable allows only EL expressions for property selection
Jay Balunas (JIRA)
jira-events at lists.jboss.org
Tue Oct 26 10:16:55 EDT 2010
[ https://jira.jboss.org/browse/RF-9444?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jay Balunas updated RF-9444:
----------------------------
Fix Version/s: Future_3.X
> ExtendedDataTable allows only EL expressions for property selection
> -------------------------------------------------------------------
>
> Key: RF-9444
> URL: https://jira.jboss.org/browse/RF-9444
> Project: RichFaces
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: component-ScrollableDataTable
> Affects Versions: 3.3.3.Final
> Environment: Windows 2003 server
> Apache Tomcat 6.0.26 Server
> Java 1.5
> Richfaces 3.3.3 final
> Java jre1.5.0_12 (I've tested with jre6 update 21 too)
> Reporter: Eloweyn G
> Fix For: Future_3.X
>
> Attachments: MantGestSE.zip, MantGestSEHib.zip
>
>
> I start the aplication (I have tested on two different Windows 2003 servers, tomcat 6.0.26 server and 2 different jre (jre1.5.0_12 and jre6 update 21). And in all cases, I get this error:
> org.apache.jasper.JasperException: Ha sucedido una excepción al procesar la página JSP /pages/index.jsp en línea 37
> 34:
> 35: <br>
> 36: <div align="center">
> 37: <rich:extendedDataTable
> 38: value="#{mantGestBean.lGest}" var="listaGestVar" id="table"
> 39: sortMode="#{mantGestBean.sortMode}"
> 40: selectionMode="#{mantGestBean.selectionMode}"
> Stacktrace:
> org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:419)
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
> com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:410)
> com.sun.faces.application.ViewHandlerImpl.executePageToBuildView(ViewHandlerImpl.java:468)
> com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:140)
> org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)
> org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)
> com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:110)
> com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
> com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
> javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
> org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:530)
> org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:206)
> org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
> org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:388)
> org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:515)
> org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:706)
> org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:677)
> org.apache.jsp.index_jsp._jspService(index_jsp.java:58)
> org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
> causa raíz
> java.lang.IllegalArgumentException: Component org.richfaces.ExtendedDataTable with Id table allows only EL expressions for property selection
> org.richfaces.taglib.ExtendedDataTableTag.setProperties(ExtendedDataTableTag.java:1464)
> javax.faces.webapp.UIComponentELTag.createComponent(UIComponentELTag.java:230)
> javax.faces.webapp.UIComponentClassicTagBase.createChild(UIComponentClassicTagBase.java:486)
> javax.faces.webapp.UIComponentClassicTagBase.findComponent(UIComponentClassicTagBase.java:670)
> javax.faces.webapp.UIComponentClassicTagBase.doStartTag(UIComponentClassicTagBase.java:1142)
> org.apache.jsp.pages.index_jsp._jspx_meth_rich_005fextendedDataTable_005f0(index_jsp.java:302)
> org.apache.jsp.pages.index_jsp._jspx_meth_a4j_005fform_005f0(index_jsp.java:241)
> org.apache.jsp.pages.index_jsp._jspx_meth_f_005fview_005f0(index_jsp.java:165)
> org.apache.jsp.pages.index_jsp._jspService(index_jsp.java:125)
> org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
> com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:410)
> com.sun.faces.application.ViewHandlerImpl.executePageToBuildView(ViewHandlerImpl.java:468)
> com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:140)
> org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)
> org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)
> com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:110)
> com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
> com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
> javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
> org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:530)
> org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:206)
> org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
> org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:388)
> org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:515)
> org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:706)
> org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:677)
> org.apache.jsp.index_jsp._jspService(index_jsp.java:58)
> org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
> Here you have my index.jsp
> <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
> <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
> <%@ taglib uri="http://richfaces.org/rich" prefix="rich"%>
> <%@ taglib uri="http://richfaces.org/a4j" prefix="a4j"%>
> <html>
> <head>
> <title>MG</title>
> <link href="css/MG.css" rel="stylesheet" type="text/css" />
> </head>
> <body>
> <f:view>
> <a4j:form style="width:90%;align:center">
> <table style="width: 100%;" border="0">
> <col /> <col />
> <tbody>
> <tr>
> <td><img alt="AXA" src="img/logo_axa_2.gif" /></td>
> <td style="text-align: right; margin-left: auto; margin-right: 0pt;">
> <span style="font-family: Arial,Helvetica,sans-serif;">
> <span style="font-size: 8pt;">SE0200</span></span>
> </td>
> </tr>
> </tbody>
> </table>
> <h1>Siniestros Extranjeros - Mantenimiento de gestores</h1>
> <p>A continuación se muestra la lista de gestores de Siniestros Extranjeros.
> Por favor, marque los gestores presentes y pulse <em>Aceptar</em> para
> confirmar los cambios. Si no desea grabar ningún cambio o si ya ha terminado y
> desea finalizar, pulse <em>Cancelar</em> para cerrar esta ventana.
> </p>
>
> <br>
> <div align="center">
> <rich:extendedDataTable
> value="#{mantGestBean.lGest}" var="listaGestVar" id="table"
> sortMode="#{mantGestBean.sortMode}"
> selectionMode="#{mantGestBean.selectionMode}"
> selection="#{mantGestBean.selection}" align="center" height="200px"
> width="50%">
>
> <rich:column sortable="true" label="Usuario"
> filterBy="#{listaGestVar.nombre}" filterEvent="onkeyup"
> sortBy="#{listaGestVar.nombre}" width="85%">
>
> <f:facet name="header">
> <h:outputText value="Usuario" />
> </f:facet>
> <h:outputText value="#{listaGestVar.nombre}" />
>
>
> </rich:column>
>
> <rich:column label="Presente" width="15%">
> <f:facet name="header">
> <h:outputText value="Presente" />
> </f:facet>
> <h:selectBooleanCheckbox id="checkEntry"
> value="#{listaGestVar.presente}" />
> </rich:column>
> </rich:extendedDataTable>
> <h:panelGrid columns="2" style="align:right">
> <a4j:commandButton value="Aceptar" style="align:right"
> action="#{mantGestBean.update}"
> oncomplete="Richfaces.showModalPanel('Panel')" reRender="panel" />
> <a4j:commandButton value="Cancelar" onclick="window.close()"
> style="align:right" />
> </h:panelGrid>
> </div>
> <p>
> <span class="a_link" onclick="Richfaces.showModalPanel('PanelActualizaGest')">Actualizar lista gestores. </span> Actualiza la lista de gestores.
> Incorpora a la lista de gestores, marcándolos como presentes,
> todos los usuarios que se hayan añadido al grupo de gestores de apertura.
> Elimina usuarios que se hayan quitado del grupo de gestores de apertura y
> redistribuye sus tareas entre los restantes gestores que están presentes.</p>
> </a4j:form>
>
> <rich:modalPanel id="panel" width="350" height="75">
> <f:facet name="header">
> <h:panelGroup>
> <h:outputText value="Información"></h:outputText>
> </h:panelGroup>
> </f:facet>
> <f:facet name="controls">
> <h:panelGroup>
> <h:graphicImage value="/img/close.png"
> styleClass="hidelink" id="hidelink" />
> <rich:componentControl for="panel" attachTo="hidelink"
> operation="hide" event="onclick" />
> </h:panelGroup>
> </f:facet>
> <h:outputText
> value="#{mantGestBean.sMensaje}"></h:outputText>
> </rich:modalPanel>
>
> <rich:modalPanel id="panelActualizaGest" width="400" height="100">
> <f:facet name="header">
> <h:panelGroup>
> <h:outputText value="Atención"></h:outputText>
> </h:panelGroup>
> </f:facet>
> <f:facet name="controls">
> <h:panelGroup>
> <h:graphicImage value="/img/close.png" style="cursor:pointer" onclick="Richfaces.hideModalPanel('panelActualizaGest')" />
> </h:panelGroup>
> </f:facet>
> <h:outputText
> value="Se va a proceder a la actualización de la lista de gestores. Desea continuar?"></h:outputText>
> <a4j:form>
> <table style="width: 100%;">
> <tr>
> <td >
> <div align="center" >
> <a4j:commandButton value=" Sí " action="#{cargaBean.actualizarGestores}" onclick="Richfaces.hideModalPanel('panelActualizaGest')" oncomplete='window.location=\"./pages/carga.jsf\"' />
>
> <a4j:commandButton value=" No " onclick="Richfaces.hideModalPanel('panelActualizaGest')" />
> </div>
> </td>
> </tr>
> </table>
>
> </a4j:form>
>
> </rich:modalPanel>
>
> </f:view>
>
>
> </body>
> </html>
> and this is the MantGestBean class:
> package es.axa.mgSE.beans;
> import java.util.ArrayList;
> import java.util.List;
> import org.apache.commons.logging.Log;
> import org.apache.commons.logging.LogFactory;
> import org.richfaces.model.selection.SimpleSelection;
> import es.axa.SE.filenet.tasks.TaskSEManager;
> import es.axa.mgSE.hibernate.HibernateUtil;
> import es.axa.mgSE.objects.Gestor;
> import es.axa.mgSE.objects.ListaGestores;
> public class MantGestBean {
> private List <Gestor> lGest;
> private String sortMode="single";
> private String selectionMode="multi";
> private SimpleSelection selection = new SimpleSelection();
> private String sMensaje="";
> private static final Log log = LogFactory.getLog(MantGestBean.class);
>
> public List <Gestor> getlGest() throws Exception {
> try {
> ListaGestores lgestObj=new ListaGestores();
> lGest=lgestObj.getListGestores();
> HibernateUtil.closeSession();
> return lGest;
>
> }catch (Exception e){
> HibernateUtil.closeSession();
> throw e;
> }
>
> }
> public void setlGest(List <Gestor> lGest) {
> this.lGest = lGest;
> }
> public String getSortMode() {
> return sortMode;
> }
> public void setSortMode(String sortMode) {
> this.sortMode = sortMode;
> }
> public String getSelectionMode() {
> return selectionMode;
> }
> public void setSelectionMode(String selectionMode) {
> this.selectionMode = selectionMode;
> }
> public SimpleSelection getSelection() {
> return selection;
> }
>
> public void setSelection(SimpleSelection selection) {
> this.selection = selection;
> }
>
> public void takeSelection(){
> System.out.println("Selección");
> }
>
> public String getsMensaje() {
> return sMensaje;
> }
> public void setsMensaje(String sMensaje) {
> this.sMensaje = sMensaje;
> }
> public void update()throws Exception {
> try{
> if (!lGest.isEmpty()) {
> log.debug("update - Iniciando update");
>
> ListaGestores lgestObj=new ListaGestores();
>
> // Obtener la lista tal y como está antes de actualizar
> List<Gestor> listaOldGest = lgestObj.getListGestores();
>
> // Actualizamos la lista con los valores introducidos por el usuario
> lgestObj.updateListGestores(lGest);
>
> // Construir la lista de gestores que pasan de activo a inactivo
> List<Gestor> gestCambiados = new ArrayList<Gestor>();
> for( int i = 0; i < listaOldGest.size(); i++) {
> if (!lGest.get(i).isPresente() && listaOldGest.get(i).isPresente()) {
> gestCambiados.add(lGest.get(i));
> }
> }
>
> //Ahora tenemos que pasar las tareas activas de los usuarios cambiados
> //a otros usuarios que estén presentes
> if (!gestCambiados.isEmpty()){
> TaskSEManager taskManager=new TaskSEManager();
> taskManager.traspasoTareasActivas(gestCambiados);
> }
>
>
> this.setsMensaje("La base de datos se ha actualizado correctamente");
> log.debug("update - Finalizando update");
> }else {
> this.setsMensaje("No hay ningún elemento en la tabla");
> }
>
> }catch (Exception e){
> throw e;
> }finally {
> HibernateUtil.closeSession();
> }
> }
>
> }
> thank you very much
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the richfaces-issues
mailing list