AnsweredAssumed Answered

Problem with <a:panel>

Question asked by amagan on Oct 26, 2011
Hi all

Let me explain you my problem trying to develop a customization with Alfresco 3.4.d to see if someone can give me a hand with this, or has seen something different before.

We are creating a customization in Alfresco and one thing we are doing is customizing a jsp page. In this JSP page we use the  <a:panel> that alfresco uses to show or hide some information.

The thing is that in this JSP I am using exactly  5 <a:panel> elements and one of those <a:panel> is declared inside another <a:panel> itself. Here I show you the code so you can see it clearer. Everything goes ok and works and information is shown in the right way. Problem appears when I go to the jsp page and the first panel shown is  "hiden", if I try to open the first panel I get this error message that I dont have a clue why it is happening
avax.faces.FacesException: java.lang.IllegalStateException: duplicate Id for a component dashboard22:_idJsp2 
at org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:425) 
at org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:211) 
at org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108) 
at org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:216) 
at org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41) 
at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:132) 
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:140) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:141) 
at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:281) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at org.alfresco.web.app.servlet.AuthenticationFilter.doFilter(AuthenticationFilter.java:104) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
at java.lang.reflect.Method.invoke(Method.java:597) 
at org.alfresco.repo.management.subsystems.ChainingSubsystemProxyFactory$1.invoke(ChainingSubsystemProxyFactory.java:116) 
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) 
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202) 
at $Proxy244.doFilter(Unknown Source) 
at org.alfresco.repo.web.filter.beans.BeanProxyFilter.doFilter(BeanProxyFilter.java:82) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at org.alfresco.repo.web.filter.beans.NullFilter.doFilter(NullFilter.java:68) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
at java.lang.reflect.Method.invoke(Method.java:597) 
at org.alfresco.repo.management.subsystems.ChainingSubsystemProxyFactory$1.invoke(ChainingSubsystemProxyFactory.java:116) 
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) 
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202) 
at $Proxy244.doFilter(Unknown Source) 
at org.alfresco.repo.web.filter.beans.BeanProxyFilter.doFilter(BeanProxyFilter.java:82) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at org.alfresco.web.app.servlet.GlobalLocalizationFilter.doFilter(GlobalLocalizationFilter.java:58) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) 
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) 
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:859) 
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:579) 
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1555) 
at java.lang.Thread.run(Thread.java:619) 
Caused by: org.apache.jasper.JasperException: java.lang.IllegalStateException: duplicate Id for a component dashboard22:_idJsp2 
at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:491) 
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:413) 
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) 
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646) 
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436) 
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374) 
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302) 
at org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:419) 
… 49 more 
Caused by: java.lang.IllegalStateException: duplicate Id for a component dashboard22:_idJsp2 
at org.ajax4jsf.application.AjaxStateManager$TreeStrutureNode.apply(AjaxStateManager.java:442) 
at org.ajax4jsf.application.AjaxStateManager$TreeStrutureNode.apply(AjaxStateManager.java:464) 
at org.ajax4jsf.application.AjaxStateManager$TreeStrutureNode.apply(AjaxStateManager.java:464) 
at org.ajax4jsf.application.AjaxStateManager$TreeStrutureNode.apply(AjaxStateManager.java:464) 
at org.ajax4jsf.application.AjaxStateManager$TreeStrutureNode.apply(AjaxStateManager.java:464) 
at org.ajax4jsf.application.AjaxStateManager$TreeStrutureNode.apply(AjaxStateManager.java:464) 
at org.ajax4jsf.application.AjaxStateManager.buildSerializedView(AjaxStateManager.java:330) 
at org.ajax4jsf.application.AjaxStateManager.saveSerializedView(AjaxStateManager.java:314) 
at org.apache.myfaces.taglib.core.ViewTag.doAfterBody(ViewTag.java:125) 
at org.apache.jsp.jsp.extension.sgi.editarInfoOrden_jsp._jspService(editarInfoOrden_jsp.java:379) 
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377) 

As I see it in the error message seems that I get a duplicated ID when as you can see in the code there is none duplicated as I have reviewed the page lne by line.

Here I attach you the jsp code and the bean that it uses to see if any of you have got this problem before or has any idea about how to solve it.
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="/WEB-INF/alfresco.tld" prefix="a" %>
<%@ taglib uri="/WEB-INF/repoBE.tld" prefix="r" %>
<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>

<%@ page buffer="32kb" contentType="text/html;charset=iso-8859-1" %>
<%@ page isELIgnored="false" %>
<%@ page import="org.alfresco.web.app.Application" %>
<%@ page import="org.alfresco.web.ui.common.PanelGenerator" %>
<%@ page import="javax.faces.context.FacesContext" %>

<head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>Intranet B|E Banco Etcheverría</title>
    <link href="/alfresco/css/extension/be/estilos.css" rel="stylesheet" type="text/css">
    <script language="JavaScript" src="js/forms.js"></script>
  </head>

<f:loadBundle basename="alfresco.extension.webclient" var="mensajes"/>
<r:pageBE titleId="title_general">

<f:view>
<%
FacesContext fc = FacesContext.getCurrentInstance();

// set locale for JSF framework usage
fc.getViewRoot().setLocale(Application.getLanguage(fc));
%>

<h:form acceptcharset="iso-8859-1" id="dashboard22">

<%– Main outer table –%>
<table cellspacing="0" cellpadding="2" width="100%" id="tabla">

   <%– Title bar –%>
   <tr>
   <td colspan="2">
      <%@ include file="parts/titlebarBE.jsp" %>
   </td>
   </tr>

   <%– Main area –%>
   <tr valign="top">
   
   </tr>
   <tr>
       <td height="81" colspan="3" class="menuIzqdaCabecera">
      <table width="100%" height="100%" border="0" id="tabla1">
           <tr>
              <td width="34%" valign="bottom">
                 <div class="textoSubCabecera">
                    <h:outputText value="#{msgBE.detalles_operacion}" style="text-decoration : none; font-weight : bold; color : #D6F7B3;"/>
             </div></td>
            </tr>
       </table>
      </td>
     </tr>
   <tr><td class="wizardButtonSpacing"></td></tr>
   <tr><td class="wizardButtonSpacing"></td></tr>
   <tr valign="top">
        <td> 
   <a:panel label="#{mensajes.datos_basicos}"  styleClass="mainSubTitleBE" id="dashboard-panel"  titleBgcolor="#D6F7B3" progressive="true" facetsId="dialog:dialog-body:dashboard-panel-facets1" border="white" bgcolor="white" titleBorder="lbgrey" expandedTitleBorder="dotted"
         expanded='#{SimpleSearch.panels["dashboard-panel"]}' expandedActionListener="#{SimpleSearch.expandPanel}">
       <h:panelGrid id="panelGeneral"   width="100%" columns="8" border="0" >
       <h:outputLabel for="tipo_cliente" styleClass="mainSubTitle" value="#{mensajes.tipo_cliente}" />
        <h:outputText id="tipo_cliente" value="#{SimpleSearch.labelTipoClienteMap[SimpleSearch.ordeninfo.tipo_cliente]}">
         </h:outputText> 
          <h:outputLabel for="tipo_operacion3" styleClass="mainSubTitle" value="#{mensajes.tipo_operacion}" />
        <h:outputText id="tipo_operacion3" value="#{SimpleSearch.labelTipoOperacionMap[SimpleSearch.ordeninfo.tipo_operacion]}"  >
         </h:outputText>
         <h:outputLabel for="fecha" styleClass="mainSubTitle" value="#{mensajes.fecha}" />
        <h:outputText id="fecha" value="#{SimpleSearch.ordeninfo.fecha_creacion}" >
        </h:outputText>
          <h:outputLabel for="estado" styleClass="mainSubTitle" value="#{mensajes.estado}" />
        <h:outputText id="estado"  value="#{SimpleSearch.labelStatusMap[SimpleSearch.ordeninfo.estado]}" >
           </h:outputText>
   </h:panelGrid>
   <a:panel label="#{SimpleSearch.nombre_cliente}"  styleClass="mainSubTitleBE" id="dashboard-panel2" progressive="true" facetsId="dialog:dialog-body:dashboard-panel-facets2" border="white" bgcolor="white" titleBorder="lbgrey" expandedTitleBorder="dotted" titleBgcolor="white"
         expanded='#{SimpleSearch.panels["dashboard-panel2"]}' expandedActionListener="#{SimpleSearch.expandPanel}">
         <t:dataTable id="resultTitulares"  rowClasses="tableline2,tableline1" align="center" width="100%" value="#{SimpleSearch.clistits}" var="tit"
                        rows="25" rendered="#{!empty SimpleSearch.clistits}" sortable="true">
                    <h:column>
                      <f:facet name="header">
                         <t:commandSortHeader style="color: #6699cc;font-weight:bold;font-size:11px;text-decoration:none;"
                                          columnName="id_orden" arrow="false">
                                          <f:facet name="ascending"> 
                                    <t:graphicImage url="#{FacesContext.externalContext.request.contextPath}/images/sgi/icons/arrow_up.gif" /> 
                                 </f:facet>
                                 <f:facet name="descending">
                                    <t:graphicImage url="#{FacesContext.externalContext.request.contextPath}/images/sgi/icons/arrow_down.gif"/>
                                 </f:facet>
                                 <h:outputText  id="id1"value="#{msgBE.nombre}" />
                           </t:commandSortHeader>
                      </f:facet>
                      <h:panelGroup id="id2">
                        <center>
                        <h:outputText id="id3" value="#{tit.nombre}" />
                        </center>
                      </h:panelGroup>
                          
                    </h:column>
                    
                        <h:column>
                      <f:facet name="header">
                      <t:commandSortHeader style="color: #6699cc;font-weight:bold;font-size:11px;text-decoration:none;"
                                          columnName="tipo_operacion" arrow="false">
                                          <f:facet name="ascending"> 
                                    <t:graphicImage url="#{FacesContext.externalContext.request.contextPath}/images/sgi/icons/arrow_up.gif" /> 
                                 </f:facet>
                                 <f:facet name="descending">
                                    <t:graphicImage url="#{FacesContext.externalContext.request.contextPath}/images/sgi/icons/arrow_down.gif"/>
                                 </f:facet>
                           <h:outputText id="id4" value="#{msgBE.direccion_fiscal}" />
                        </t:commandSortHeader>
                      </f:facet>
                     <h:panelGroup>
                        <center>
                           <h:outputText id="id5" value="#{tit.direccion_fiscal}" />
                        </center>
                   </h:panelGroup>
                    </h:column>
                    <h:column>
                      <f:facet name="header">
                         <t:commandSortHeader style="color: #6699cc;font-weight:bold;font-size:11px;text-decoration:none;"
                                          columnName="tipo_cliente" arrow="false">
                                          <f:facet name="ascending"> 
                                    <t:graphicImage url="#{FacesContext.externalContext.request.contextPath}/images/sgi/icons/arrow_up.gif" /> 
                                 </f:facet>
                                 <f:facet name="descending">
                                    <t:graphicImage url="#{FacesContext.externalContext.request.contextPath}/images/sgi/icons/arrow_down.gif"/>
                                 </f:facet>
                              <h:outputText id="id6" value="#{msgBE.direccion_postal}" />
                           </t:commandSortHeader>
                      </f:facet>
                     <h:panelGroup>
                        <center>
                           <h:outputText id="id7"value="#{tit.direccion_postal}" />
                        </center>
                     </h:panelGroup>
                    </h:column>
                    <h:column>
                      <f:facet name="header">
                         <t:commandSortHeader style="color: #6699cc;font-weight:bold;font-size:11px;text-decoration:none;"
                                          columnName="estado" arrow="false">
                                          <f:facet name="ascending"> 
                                    <t:graphicImage url="#{FacesContext.externalContext.request.contextPath}/images/sgi/icons/arrow_up.gif" /> 
                                 </f:facet>
                                 <f:facet name="descending">
                                    <t:graphicImage url="#{FacesContext.externalContext.request.contextPath}/images/sgi/icons/arrow_down.gif"/>
                                 </f:facet>
                              <h:outputText id="id8" value="#{msgBE.porcentaje_participacion}" >
                                 <r:convertDecimal />
                              </h:outputText>
                           </t:commandSortHeader>
                      </f:facet>
                     <h:panelGroup>
                        <center>
                           <h:outputText  value="#{tit.titularidad.titulariada}" >
                              <r:convertDecimal />
                           </h:outputText>
                        </center>
                     </h:panelGroup>
                    </h:column>
                    
                     </t:dataTable>
    </a:panel>
    <h:panelGrid id="panel2" columns="6" border="0" align="center" width="100%" columnClasses="columnIzq"  rendered="#{SimpleSearch.ordeninfo.tipo_operacion == 'Orden_Valores_Compra_RF' ||
      SimpleSearch.ordeninfo.tipo_operacion == 'Orden_Valores_Compra_Sicavs' || SimpleSearch.ordeninfo.tipo_operacion == 'Orden_Valores_Venta_Sicavs' ||
      SimpleSearch.ordeninfo.tipo_operacion == 'Orden_Valores_Venta_RF'}">
      <h:outputLabel for="tc" styleClass="mainSubTitle" value="#{mensajes.tc}" />
        <h:outputText id="tc" value="#{SimpleSearch.compra_venta.tipo_codigo}" >
      </h:outputText>
      <h:outputLabel for="cisin" value="#{mensajes.cisin}" styleClass="mainSubTitle" />
      <h:outputText id="cisin" value="#{SimpleSearch.compra_venta.codigo_isin}" >
      </h:outputText>
      <h:outputLabel for="desc" value="#{mensajes.desc}" styleClass="mainSubTitle" />
      <h:outputText id="desc" value="#{SimpleSearch.compra_venta.isin}" >
      </h:outputText>
      
       <h:outputLabel for="subtipo_operacion" value="#{mensajes.subtipo_operacion}" styleClass="mainSubTitle" />
      <h:outputText id="subtipo_operacion" value="#{SimpleSearch.labelTipoSubtiposMap[SimpleSearch.compra_venta.subtipo]}" >
      </h:outputText>
         <h:outputLabel for="segmenta_orden" value="#{mensajes.segmenta_orden}" styleClass="mainSubTitle" />
      <h:outputText id="segmenta_orden" value="#{SimpleSearch.labelTipoSegmentaMap[SimpleSearch.compra_venta.segmenta_orden]}" >
      </h:outputText>
      <h:outputLabel for="num_titulos" styleClass="mainSubTitle" value="#{mensajes.num_titulos}" />
        <h:outputText id="num_titulos" value="#{SimpleSearch.compra_venta.num_titulos}" >
         </h:outputText>
         
      <h:outputLabel for="ccv" styleClass="mainSubTitle" value="#{mensajes.ccv}" />
        <h:outputText id="ccv" value="#{SimpleSearch.compra_venta.ccv}" >
         </h:outputText>
         <h:outputLabel for="ccc" styleClass="mainSubTitle" value="#{mensajes.ccc}" />
        <h:outputText id="ccc" value="#{SimpleSearch.compra_venta.ccc}" >
         </h:outputText> 
         <h:outputLabel for="nominal" styleClass="mainSubTitle" value="#{mensajes.nominal}" />
        <h:outputText id="nominal" value="#{SimpleSearch.compra_venta.nominal}" >
           <r:convertDecimal />
         </h:outputText>
   </h:panelGrid>
   <h:panelGrid id="panel2Sub" columns="6" border="0" align="center" width="100%" columnClasses="columnIzq"  rendered="#{SimpleSearch.ordeninfo.tipo_operacion == 'Orden_Valores_Compra_RV' ||
      SimpleSearch.ordeninfo.tipo_operacion == 'Orden_Valores_Compra_Derechos' || SimpleSearch.ordeninfo.tipo_operacion == 'Orden_Valores_Venta_RV' ||
      SimpleSearch.ordeninfo.tipo_operacion == 'Orden_Valores_Venta_Derechos' }">
      <h:outputLabel for="tcSub" styleClass="mainSubTitle" value="#{mensajes.tc}" />
        <h:outputText id="tcSub" value="#{SimpleSearch.compra_venta.tipo_codigo}" >
      </h:outputText>
      <h:outputLabel for="cisinSub" value="#{mensajes.cisin}" styleClass="mainSubTitle" />
      <h:outputText id="cisinSub" value="#{SimpleSearch.compra_venta.codigo_isin}" >
      </h:outputText>
      <h:outputLabel for="descSub" value="#{mensajes.desc}" styleClass="mainSubTitle" />
      <h:outputText id="descSub" value="#{SimpleSearch.compra_venta.isin}" >
      </h:outputText>
      
       <h:outputLabel for="subtipo_operacion2" value="#{mensajes.subtipo_operacion}" styleClass="mainSubTitle" />
      <h:outputText id="subtipo_operacion2" value="#{SimpleSearch.labelTipoSubtiposMap[SimpleSearch.compra_venta.subtipo]}" >
      </h:outputText>
         <h:outputLabel for="segmenta_orden2" value="#{mensajes.segmenta_orden}" styleClass="mainSubTitle" />
      <h:outputText id="segmenta_orden2" value="#{SimpleSearch.labelTipoSegmentaMap[SimpleSearch.compra_venta.segmenta_orden]}" >
      </h:outputText>
      <h:outputLabel for="num_titulos2" styleClass="mainSubTitle" value="#{mensajes.num_titulos}" />
        <h:outputText id="num_titulos2" value="#{SimpleSearch.compra_venta.num_titulos}" >
           <r:convertDecimal />
         </h:outputText>
         
      <h:outputLabel for="ccv2" styleClass="mainSubTitle" value="#{mensajes.ccv}" />
        <h:outputText id="ccv2" value="#{SimpleSearch.compra_venta.ccv}" >
         </h:outputText>
         <h:outputLabel for="ccc2" styleClass="mainSubTitle" value="#{mensajes.ccc}" />
        <h:outputText id="ccc2" value="#{SimpleSearch.compra_venta.ccc}" >
         </h:outputText>
         <h:outputLabel for="tipo_orden" styleClass="mainSubTitle" value="#{mensajes.tipo_orden}" />
         <h:outputText id="tipo_orden" value="#{SimpleSearch.labelTipoOrdenRVMap[SimpleSearch.compra_venta.tipo_orden]}" >
         
        
         </h:outputText>
         <h:outputLabel for="precio_orden" styleClass="mainSubTitle" value="#{mensajes.precio_orden}"  rendered="#{SimpleSearch.compra_venta.tipo_orden == 'limitada'}" />
        <h:outputText id="precio_orden" value="#{SimpleSearch.compra_venta.precio_orden}" rendered="#{SimpleSearch.compra_venta.tipo_orden == 'limitada'}">
           <r:convertDecimal />
         </h:outputText> 
         <h:outputLabel for="vigencia" styleClass="mainSubTitle" value="#{mensajes.vigencia}" />
        <h:outputText id="vigencia" value="#{SimpleSearch.compra_venta.vigencia}" >
         </h:outputText>
   </h:panelGrid>      
    <h:panelGrid id="panel21" columns="8" border="0" align="center" width="100%"  columnClasses="columnIzq"  rendered="#{SimpleSearch.ordeninfo.tipo_operacion == 'Orden_Fondos_Suscripcion'
   || SimpleSearch.ordeninfo.tipo_operacion == 'Orden_Fondos_Reembolso'}">
   
      <h:outputLabel for="nombre_gestora" styleClass="mainSubTitle" value="#{mensajes.nombre_gestora}" />
        <h:outputText id="nombre_gestora" value="#{SimpleSearch.suscripcion_reembolso.nombre_gestora}" >
      </h:outputText>
      <h:outputLabel for="nif_gestora" styleClass="mainSubTitle" value="#{mensajes.nif_gestora}" />
        <h:outputText id="nif_gestora" value="#{SimpleSearch.suscripcion_reembolso.nif_gestora}" >
         </h:outputText>
         <h:outputLabel for="num_reg_cnmv" styleClass="mainSubTitle" value="#{mensajes.num_reg_cnmv}" />
        <h:outputText id="num_reg_cnmv" value="#{SimpleSearch.suscripcion_reembolso.num_reg_cnmv}" >
         </h:outputText>
         <h:outputLabel for="nombre_fondo" styleClass="mainSubTitle" value="#{mensajes.nombre_fondo}" />
        <h:outputText id="nombre_fondo" value="#{SimpleSearch.suscripcion_reembolso.nombre_fondo}" >
         </h:outputText>
         
         <h:outputLabel for="nif_fondo" styleClass="mainSubTitle" value="#{mensajes.nif_fondo}" />
        <h:outputText id="nif_fondo" value="#{SimpleSearch.suscripcion_reembolso.nif_fondo}" >
         </h:outputText>
      <h:outputLabel for="tc2" styleClass="mainSubTitle" value="#{mensajes.tc}" />
        <h:outputText id="tc2" value="#{SimpleSearch.suscripcion_reembolso.tipo_codigo_fondo}" >
      </h:outputText>
      <h:outputLabel for="cisin2" value="#{mensajes.cisin}" styleClass="mainSubTitle" />
      <h:outputText id="cisin2" value="#{SimpleSearch.suscripcion_reembolso.codigo_isin_fondo}" >
      </h:outputText>
      <h:outputLabel for="desc2" value="#{mensajes.desc}" styleClass="mainSubTitle" />
      <h:outputText id="desc2" value="#{SimpleSearch.suscripcion_reembolso.isin_fondo}" >
      </h:outputText>
      
      <h:outputLabel for="num_reg_cnmv_fondo" styleClass="mainSubTitle" value="#{mensajes.num_reg_cnmv_fondo}" />
        <h:outputText id="num_reg_cnmv_fondo" value="#{SimpleSearch.suscripcion_reembolso.num_reg_cnmv_fondo}" >
         </h:outputText>
         <h:outputLabel for="cuenta_fondo" styleClass="mainSubTitle" value="#{mensajes.cuenta_fondo}" />
        <h:outputText id="cuenta_fondo" value="#{SimpleSearch.suscripcion_reembolso.cuenta_fondo}" >
         </h:outputText>
         <h:outputLabel for="ccv_fs" styleClass="mainSubTitle" value="#{mensajes.ccv}" />
        <h:outputText id="ccv_fs" value="#{SimpleSearch.suscripcion_reembolso.ccv}" >
         </h:outputText>
         <h:outputLabel for="tipo_fondo" value="#{mensajes.tipo_traspaso}" styleClass="mainSubTitle" />
         <h:outputText id="tipo_fondo" value="#{SimpleSearch.labelTipoFondoMap[SimpleSearch.suscripcion_reembolso.tipo]}" >
         </h:outputText>
     
      <h:outputLabel for="tipo_reembolso" value="#{mensajes.tipo_reembolso}" styleClass="mainSubTitle" />
      <h:outputText id="tipo_reembolso" value="#{SimpleSearch.suscripcion_reembolso.tipo_reembolso}" >
         </h:outputText>
      
         <h:outputLabel for="importe_bruto" styleClass="mainSubTitle" value="#{mensajes.importe_bruto}" />
        <h:outputText id="importe_bruto" value="#{SimpleSearch.suscripcion_reembolso.importe}" >
           <r:convertDecimal />
         </h:outputText>
   </h:panelGrid>   
    <h:panelGrid id="panel23" columns="10" border="0" align="center" width="100%"  columnClasses="columnIzq"  rendered="#{SimpleSearch.ordeninfo.tipo_operacion == 'Orden_Fondos_Traspaso'}">
    <h:outputLabel for="nif_cliente_ft" styleClass="mainSubTitle" value="#{mensajes.nif_cliente}" />
        <h:outputText id="nif_cliente_ft" value="#{SimpleSearch.traspaso_fondos.nif_cliente}" >
      </h:outputText>
      <h:outputLabel for="ccv_ft" styleClass="mainSubTitle" value="#{mensajes.ccv}" />
        <h:outputText id="ccv_ft" value="#{SimpleSearch.traspaso_fondos.ccv}" >
         </h:outputText>
      <h:outputLabel for="nom_gestora_destino" styleClass="mainSubTitle" value="#{mensajes.nom_gestora_destino}" />
        <h:outputText id="nom_gestora_destino" value="#{SimpleSearch.traspaso_fondos.nom_gestora_destino}" >
         </h:outputText>
         <h:outputLabel for="nif_gestora_destino_ft" styleClass="mainSubTitle" value="#{mensajes.nif_gestora_destino}" />
        <h:outputText id="nif_gestora_destino_ft" value="#{SimpleSearch.traspaso_fondos.nif_gestora_destino}" >
         </h:outputText>
         <h:outputLabel for="num_reg_cnmv_ft" styleClass="mainSubTitle" value="#{mensajes.num_reg_cnmv}" />
        <h:outputText id="num_reg_cnmv_ft" value="#{SimpleSearch.traspaso_fondos.num_registro_cnmv}" >
         </h:outputText>
         
         <h:outputLabel for="nom_fondo_destino_ft" styleClass="mainSubTitle" value="#{mensajes.nom_fondo_destino}" />
        <h:outputText id="nom_fondo_destino_ft" value="#{SimpleSearch.traspaso_fondos.nom_fondo_destino}" >
         </h:outputText>
         <h:outputLabel for="nif_fondo_destino_ft" styleClass="mainSubTitle" value="#{mensajes.nif_fondo_destino}" />
        <h:outputText id="nif_fondo_destino_ft" value="#{SimpleSearch.traspaso_fondos.nif_fondo_destino}" >
         </h:outputText>
         <h:outputLabel for="tc32" styleClass="mainSubTitle" value="#{mensajes.tc32}" />
        <h:outputText id="tc32" value="#{SimpleSearch.traspaso_fondos.tipo_codigo_fondo_destino}" >
      </h:outputText>
      <h:outputLabel for="cisin32" value="#{mensajes.cisin32}" styleClass="mainSubTitle" />
      <h:outputText id="cisin32" value="#{SimpleSearch.traspaso_fondos.codigo_isin_fondo_destino}" >
      </h:outputText>
      <h:outputLabel for="desc32" value="#{mensajes.desc32}" styleClass="mainSubTitle" />
      <h:outputText id="desc32" value="#{SimpleSearch.traspaso_fondos.isin_fondo_destino}" >
      </h:outputText>
      
         <h:outputLabel for="num_registro_cnmvdestino" styleClass="mainSubTitle" value="#{mensajes.num_registro_cnmvdestino}" />
        <h:outputText id="num_registro_cnmvdestino" value="#{SimpleSearch.traspaso_fondos.num_registro_cnmvdestino}" >
         </h:outputText>
         <h:outputLabel for="cuenta_fondo_destino_ft" styleClass="mainSubTitle" value="#{mensajes.cuenta_fondo_destino}" />
        <h:outputText id="cuenta_fondo_destino_ft" value="#{SimpleSearch.traspaso_fondos.cuenta_fondo_destino}" >
         </h:outputText>
         <h:outputLabel for="nom_gestora_origen_ft" styleClass="mainSubTitle" value="#{mensajes.nom_gestora_origen}" />
        <h:outputText id="nom_gestora_origen_ft" value="#{SimpleSearch.traspaso_fondos.nom_gestora_origen}" >
         </h:outputText>
         <h:outputLabel for="nif_gestora_origen_ft" styleClass="mainSubTitle" value="#{mensajes.nif_gestora_origen}" />
        <h:outputText id="nif_gestora_origen_ft" value="#{SimpleSearch.traspaso_fondos.nif_gestora_origen}" >
         </h:outputText>
         <h:outputLabel for="num_registro_gestora_original" styleClass="mainSubTitle" value="#{mensajes.num_registro_gestora_original}" />
        <h:outputText id="num_registro_gestora_original" value="#{SimpleSearch.traspaso_fondos.num_registro_gestora_original}" >
         </h:outputText>
         
         <h:outputLabel for="nombre_fondo_origen_ft" styleClass="mainSubTitle" value="#{mensajes.nombre_fondo_origen}" />
        <h:outputText id="nombre_fondo_origen_ft" value="#{SimpleSearch.traspaso_fondos.nombre_fondo_origen}" >
         </h:outputText>
         <h:outputLabel for="nif_fondo_origen_ft" styleClass="mainSubTitle" value="#{mensajes.nif_fondo_origen}" />
        <h:outputText id="nif_fondo_origen_ft" value="#{SimpleSearch.traspaso_fondos.nif_fondo_origen}" >
         </h:outputText>
      <h:outputLabel for="tc31" styleClass="mainSubTitle" value="#{mensajes.tc31}" />
        <h:outputText id="tc31" value="#{SimpleSearch.traspaso_fondos.tipo_codigo_fondo_origen}" >
      </h:outputText>
      <h:outputLabel for="cisin31" value="#{mensajes.cisin31}" styleClass="mainSubTitle" />
      <h:outputText id="cisin31" value="#{SimpleSearch.traspaso_fondos.codigo_isin_fondo_origen}" >
      </h:outputText>
      <h:outputLabel for="desc31" value="#{mensajes.desc31}" styleClass="mainSubTitle" />
      <h:outputText id="desc31" value="#{SimpleSearch.traspaso_fondos.isin_fondo_origen}" >
      </h:outputText>
      
         <h:outputLabel for="num_registro_cnmv_fondo_origen" styleClass="mainSubTitle" value="#{mensajes.num_registro_cnmv_fondo_origen}" />
        <h:outputText id="num_registro_cnmv_fondo_origen" value="#{SimpleSearch.traspaso_fondos.num_registro_cnmv_fondo_origen}" >
         </h:outputText>
         <h:outputLabel for="cuenta_origen_ft" styleClass="mainSubTitle" value="#{mensajes.cuenta_origen}" />
        <h:outputText id="cuenta_origen_ft" value="#{SimpleSearch.traspaso_fondos.cuenta_origen}" >
         </h:outputText>
         <h:outputLabel for="tipo_traspaso_ft" value="#{mensajes.tipo_traspaso}" styleClass="mainSubTitle" />
         <h:outputText id="tipo_traspaso_ft" value="#{SimpleSearch.labelTipoTraspasoMap[SimpleSearch.traspaso_fondos.tipo_traspaso]}" >
         </h:outputText>
         <h:outputLabel for="importe_ft" styleClass="mainSubTitle" value="#{mensajes.importe}" />
        <h:outputText id="importe_ft" value="#{SimpleSearch.traspaso_fondos.importe}" >
           <r:convertDecimal />
         </h:outputText>
            <h:outputLabel for="participaciones_ft" styleClass="mainSubTitle" value="#{mensajes.participaciones}" />
        <h:outputText id="participaciones_ft" value="#{SimpleSearch.traspaso_fondos.participaciones}" >
           <r:convertDecimal />
         </h:outputText>
   </h:panelGrid>   
   <h:panelGrid id="panel24" columns="6" border="0" align="center" width="100%"  columnClasses="columnIzq"  rendered="#{SimpleSearch.ordeninfo.tipo_operacion == 'Orden_Planes_Aportaciones_Extraordinarias'}">
      <h:outputLabel for="ident_plan" styleClass="mainSubTitle" value="#{mensajes.ident_plan}" />
        <h:outputText id="ident_plan"  styleClass="mainSubText" value="#{SimpleSearch.aportaciones_extraordinarias.ident_plan}" >
      </h:outputText>
      <h:outputLabel for="importe" styleClass="mainSubTitle" value="#{mensajes.importe_aportacion}" />
        <h:outputText id="importe"  styleClass="mainSubText" value="#{SimpleSearch.aportaciones_extraordinarias.importe_aportacion}" >
           <r:convertDecimal />
         </h:outputText>                              
        <h:outputLabel for="fecha2" styleClass="mainSubTitle" value="#{mensajes.fecha_aportacion}" />
        <h:outputText  id="fecha2" styleClass="mainSubText" value="#{SimpleSearch.aportaciones_extraordinarias.fecha_aportacion}" />
   </h:panelGrid>   
   
   <h:panelGrid id="panel26" columns="6" border="0" align="center" width="100%" columnClasses="columnIzq"  rendered="#{SimpleSearch.ordeninfo.tipo_operacion == 'Orden_Valores_Traspaso'}">
      <h:outputLabel for="tc6" styleClass="mainSubTitle" value="#{mensajes.tc}" />
        <h:outputText id="tc6" value="#{SimpleSearch.traspaso_valores.tipo_codigo}" >
         </h:outputText>
         <h:outputLabel for="cisin6" styleClass="mainSubTitle" value="#{mensajes.cisin}" />
        <h:outputText id="cisin6" value="#{SimpleSearch.traspaso_valores.codigo_isin}" >
         </h:outputText>
         <h:outputLabel for="desc6" styleClass="mainSubTitle" value="#{mensajes.desc}" />
        <h:outputText id="desc6" value="#{SimpleSearch.traspaso_valores.isin}" >
         </h:outputText>
         
         <h:outputLabel for="tipo_traspaso" value="#{mensajes.tipo_traspaso}" styleClass="mainSubTitle" />
         <h:outputText id="tipo_traspaso" value="#{SimpleSearch.labelTipoTraspasoMap[SimpleSearch.traspaso_valores.tipo_traspaso]}" >
         </h:outputText>
         <h:outputLabel for="num_titulos_tv" styleClass="mainSubTitle" value="#{mensajes.num_titulos}" />
        <h:outputText id="num_titulos_tv" value="#{SimpleSearch.traspaso_valores.num_titulos}" >
         </h:outputText>
         <h:outputLabel for="fecha_comienzo" styleClass="mainSubTitle" value="#{mensajes.fecha_comienzo}" />
         <h:outputText value="#{SimpleSearch.traspaso_valores.fecha}"  id="fecha6" />
         
         <h:outputLabel for="ccv_origen" styleClass="mainSubTitle" value="#{mensajes.ccv_origen}" />
        <h:outputText id="ccv_origen" value="#{SimpleSearch.traspaso_valores.ccv_origen}" >
         </h:outputText>
   </h:panelGrid>   
      </a:panel>
    <h:panelGrid id="panel21111" columns="1" border="0"width="50%" >
      <a:panel label="#{mensajes.broker_msj}"  styleClass="mainSubTitleBE"  id="dashboard-panel5" progressive="true" facetsId="dialog:dialog-body:dashboard-panel-facets3" border="white" bgcolor="white" titleBorder="lbgrey" expandedTitleBorder="dotted" titleBgcolor="white"
         expanded='#{SimpleSearch.panels["dashboard-panel5"]}' expandedActionListener="#{SimpleSearch.expandPanel}"
         rendered="#{(SimpleSearch.ordeninfo.estado == 'Orden_Pte_Ejecucion' || SimpleSearch.ordeninfo.estado == 'Orden_Ejecutada'
      || SimpleSearch.ordeninfo.estado == 'Orden_Fuera_Plazo' || SimpleSearch.ordeninfo.estado == 'Orden_Cancelada') }">
         <h:panelGrid id="panel222" columns="4" border="0"   columnClasses="columnIzq" rendered="#{(SimpleSearch.ordeninfo.tipo_operacion == 'Orden_Valores_Compra_RF' ||
            SimpleSearch.ordeninfo.tipo_operacion == 'Orden_Valores_Compra_Sicavs' || SimpleSearch.ordeninfo.tipo_operacion == 'Orden_Valores_Venta_Sicavs' ||
            SimpleSearch.ordeninfo.tipo_operacion == 'Orden_Valores_Venta_RF')}">
            <h:outputLabel for="broker" styleClass="mainSubTitle" value="#{mensajes.broker}" />
              <h:outputText id="broker" value="#{SimpleSearch.ordeninfo.broker}" >
            </h:outputText>
            <h:outputLabel for="liquidador" value="#{mensajes.liquidador}" styleClass="mainSubTitle" />
            <h:outputText id="liquidador" value="#{SimpleSearch.ordeninfo.liquidador}" >
            </h:outputText>
            
         </h:panelGrid>         
         <h:panelGrid id="panel223" columns="4" border="0"  columnClasses="columnIzq" width="40%" rendered="#{(SimpleSearch.ordeninfo.tipo_operacion == 'Orden_Valores_Compra_RV' ||
            SimpleSearch.ordeninfo.tipo_operacion == 'Orden_Valores_Compra_Derechos' || SimpleSearch.ordeninfo.tipo_operacion == 'Orden_Valores_Venta_RV' ||
            SimpleSearch.ordeninfo.tipo_operacion == 'Orden_Valores_Venta_Derechos') }">
            <h:outputLabel for="broker2" styleClass="mainSubTitle" value="#{mensajes.broker}" />
              <h:outputText id="broker2" value="#{SimpleSearch.ordeninfo.broker}" >
            </h:outputText>
            <h:outputLabel for="liquidador2" value="#{mensajes.liquidador}" styleClass="mainSubTitle" />
            <h:outputText id="liquidador2" value="#{SimpleSearch.ordeninfo.liquidador}" >
         </h:outputText>
         </h:panelGrid>   
         <h:panelGrid id="panel224" columns="2" border="0"  columnClasses="columnIzq" width="40%" rendered="#{SimpleSearch.ordeninfo.tipo_operacion == 'Orden_Fondos_Suscripcion'
         || SimpleSearch.ordeninfo.tipo_operacion == 'Orden_Fondos_Reembolso' || SimpleSearch.ordeninfo.tipo_operacion == 'Orden_Fondos_Traspaso'}">
            <h:outputLabel for="liquidador5" value="#{mensajes.liquidador}" styleClass="mainSubTitle" />
            <h:outputText id="liquidador5" value="#{SimpleSearch.ordeninfo.liquidador}" >
            </h:outputText>
         </h:panelGrid>
        </a:panel>
    </h:panelGrid >
       <h:panelGrid id="panel22222" columns="1" border="0"width="50%" >
      <a:panel label="#{mensajes.ejecuciones}"  id="dashboard-panel3"  styleClass="mainSubTitleBE" progressive="true" facetsId="dialog:dialog-body:dashboard-panel-facets4" border="white" bgcolor="white" titleBorder="lbgrey" expandedTitleBorder="dotted" titleBgcolor="white"
         expanded='#{SimpleSearch.panels["dashboard-panel3"]}' expandedActionListener="#{SimpleSearch.expandPanel}">
         <t:dataTable id="feedbackFT2"  value="#{SimpleSearch.ejecucionesList}" var="feedft2"
                        rows="25">
                        <h:column>
                        <h:outputText  styleClass="mainSubTitle" value="#{mensajes.precio_uni}" />
                     </h:column>
                        <h:column>
                        <h:outputText  value="#{feedft2.precio_uni}" >
                           <r:convertDecimal />
                        </h:outputText >
                     </h:column>
                  <h:column>
                        <h:outputText  value=" " />
                     </h:column>
                     <h:column>
                        <h:outputText  styleClass="mainSubTitle" value="#{mensajes.num_valores}" />
                     </h:column>
                     <h:column>
                        <h:outputText  value="#{feedft2.num_valores}" >
                           <r:convertDecimal />
                        </h:outputText >
                     </h:column>
           </t:dataTable>
        
        </a:panel>  
      </h:panelGrid>
      <h:panelGrid id="panel3333" columns="1" border="0"width="50%" >
        <a:panel label="#{mensajes.datos_feedback}"  id="dashboard-panel4" styleClass="mainSubTitleBE" progressive="true" facetsId="dialog:dialog-body:dashboard-panel-facets5" border="white" bgcolor="white" titleBorder="lbgrey" expandedTitleBorder="dotted" titleBgcolor="white"
         expanded='#{SimpleSearch.panels["dashboard-panel4"]}' expandedActionListener="#{SimpleSearch.expandPanel}"
          rendered="#{(SimpleSearch.ordeninfo.estado == 'Orden_Pte_Ejecucion' || SimpleSearch.ordeninfo.estado == 'Orden_Ejecutada'
      || SimpleSearch.ordeninfo.estado == 'Orden_Fuera_Plazo' || SimpleSearch.ordeninfo.estado == 'Orden_Cancelada') }">
         <t:dataTable id="feedbackFT"  value="#{SimpleSearch.feedbackList}" var="feedft"
                        rows="25">
                        <h:column>
                        value="#{SimpleSearch.labelTipoTraspasoMap[SimpleSearch.traspaso_fondos.tipo_traspaso]}"
                        <h:outputText  styleClass="mainSubTitle" value="#{SimpleSearch.labelTipoFeedbackMap[feedft.clave]}" rendered="#{feedft.clave != 'Precio_cambio_compra'}" />
                     </h:column>
                     <h:column >
                        <h:outputText  value="#{feedft.valor}" rendered="#{feedft.clave != 'Precio_cambio_compra'}">
                        <r:convertDecimal />
                     </h:outputText>
                     </h:column>
           </t:dataTable>
        </a:panel>
      </h:panelGrid>
     <a:panel label="#{mensajes.boletas}"  styleClass="mainSubTitleBE" id="dashboard-panel6" progressive="true" facetsId="dialog:dialog-body:dashboard-panel-facets6" border="white" bgcolor="white" titleBorder="lbgrey" expandedTitleBorder="dotted" titleBgcolor="white"
         expanded='#{SimpleSearch.panels["dashboard-panel6"]}' expandedActionListener="#{SimpleSearch.expandPanel}">
     </a:panel>
   <br></br>
     <h:outputText id="id27" styleClass="mainSubTitleBE" value="#{mensajes.actions}" />
   <r:actions id="menu_orden" value="menu_orden" context="#{SimpleSearch.ordenTaskInfo}" showLink="false" styleClass="inlineAction" />   
    </td>
   
    </tr>
       <tr><td class="wizardButtonSpacing"></td></tr>
      <tr><td class="wizardButtonSpacing"></td></tr>
        <tr><td class="wizardButtonSpacing"></td></tr>
        <tr>
           
        </tr>
        
     <tr>
        <td align="center">
      <a:actionLink value="volver" image="/images/sgi/botones/botonVolver.gif" showLink="false"
         action="#{SimpleSearch.searchPrin}" id="impresoras56" style="text-decoration : none; font-weight : bold; color : #D6F7B3;"/> </td>
     </tr>
</table>
</h:form>
</f:view>
</r:pageBE>

and the code in the bean is:

panels.put("dashboard-panel", true);
            panels.put("dashboard-panel2", false);
            panels.put("dashboard-panel3", true);
            panels.put("dashboard-panel4", true);
            panels.put("dashboard-panel5", true);
            panels.put("dashboard-panel6", false);

public void expandPanel(ActionEvent event)
       {
          if (event instanceof ExpandedEvent)
          {
             String id = event.getComponent().getId();
             System.out.println("El id del panel es: "+id);
             // we prefix some panels with "no-" which we remove to give consistent behaviour in the UI
             if (id.startsWith("no-") == true)
             {
                id = id.substring(3);
             }
             this.panels.put(id, ((ExpandedEvent)event).State);
          }
       
        
       }

Thanks a lot in advance!!

Ana

Outcomes