[
https://issues.apache.org/jira/browse/MYFACES-1861?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12589007#action_12589007
]
Guy Bashan commented on MYFACES-1861:
-------------------------------------
Sorry, I am not familiar with the JSF spec (I do know the general concepts).
I do understand that every component in the JSF tree must get a unique id (I
assume when the tree is being built all controls are taken in account no matter
if they are rendered or not).
But in the real world JSF is simply not enough for accomplishing simple tasks,
like showing some link being able to show 2 different values (like: clickme1,
clickme2) that are changed dynamically (without needing to refresh the entire
view or use ajax of course).
So now, there are 2 different links, with 2 different ids in the html code
(only one is rendered when the view is shown), which makes it much harder to
dynamically change the innerHTML of the link, since in the JSF code I have 2
links, one shows "clickme1" and one shows "clickme2" and both are having a
different id although on the HTML level it is actually the same control.
> Duplicated ids exception for 2 controls with same id and one of them is not
> rendered
> ------------------------------------------------------------------------------------
>
> Key: MYFACES-1861
> URL: https://issues.apache.org/jira/browse/MYFACES-1861
> Project: MyFaces Core
> Issue Type: Bug
> Affects Versions: 1.2.2
> Reporter: Guy Bashan
>
> If there are 2 controls (or more) with the same id, one control is rendered
> and the other is not, there is duplicate id exception.
> Exception example:
> javax.servlet.jsp.JspException: Duplicated component Id: 'included1' for
> component: '{Component-Path : [Class:
> javax.faces.component.UIViewRoot,ViewId: /cmp_ads.jsp][Class:
> javax.faces.component.html.HtmlForm,Id: formAds][Class:
> org.apache.myfaces.component.html.ext.HtmlDataTable,Id: tableAds][Class:
> javax.faces.component.UIColumn,Id: j_id_jsp_2054236967_13][Class:
> org.apache.myfaces.component.html.ext.HtmlDataTable,Id:
> tableCreatives][Class: javax.faces.component.UIColumn,Id:
> j_id_jsp_2054236967_23][Class: javax.faces.component.html.HtmlPanelGroup,Id:
> j_id_jsp_2054236967_29][Class:
> org.apache.myfaces.component.html.ext.HtmlOutputText,Id: included1]}'.
> at
> javax.faces.webapp.UIComponentClassicTagBase.doStartTag(UIComponentClassicTagBase.java:459)
> at
> org.apache.jsp.cmp_005fads_jsp._jspx_meth_t_005foutputText_005f2(cmp_005fads_jsp.java:1304)
> at
> org.apache.jsp.cmp_005fads_jsp._jspx_meth_h_005fpanelGroup_005f1(cmp_005fads_jsp.java:1264)
> at
> org.apache.jsp.cmp_005fads_jsp._jspx_meth_h_005fcolumn_005f1(cmp_005fads_jsp.java:1043)
> at
> org.apache.jsp.cmp_005fads_jsp._jspx_meth_t_005fdataTable_005f1(cmp_005fads_jsp.java:994)
> at
> org.apache.jsp.cmp_005fads_jsp._jspx_meth_h_005fcolumn_005f0(cmp_005fads_jsp.java:717)
> at
> org.apache.jsp.cmp_005fads_jsp._jspx_meth_t_005fdataTable_005f0(cmp_005fads_jsp.java:648)
> at
> org.apache.jsp.cmp_005fads_jsp._jspx_meth_h_005fform_005f0(cmp_005fads_jsp.java:516)
> at
> org.apache.jsp.cmp_005fads_jsp._jspx_meth_f_005fview_005f0(cmp_005fads_jsp.java:264)
> at org.apache.jsp.cmp_005fads_jsp._jspService(cmp_005fads_jsp.java:139)
> at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> at
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
> at
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
> at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> 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:654)
> at
> org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445)
> at
> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379)
> at
> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292)
> at
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:338)
> at
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.buildView(JspViewHandlerImpl.java:480)
> at
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:334)
> at
> org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
> at
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:140)
> at javax.faces.webapp.FacesServlet.service(FacesServlet.java:152)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> at
> com.todacell.ui.view.filter.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:149)
> at
> com.todacell.ui.view.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:61)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> at
> org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147)
> 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:175)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
> 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:263)
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
> at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
> at
> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
> at java.lang.Thread.run(Thread.java:619)
> 15/04/2008 01:06:41 org.apache.catalina.core.ApplicationDispatcher invoke
> SEVERE: Servlet.service() for servlet jsp threw exception
> javax.servlet.jsp.JspException: Duplicated component Id: 'included1' for
> component: '{Component-Path : [Class:
> javax.faces.component.UIViewRoot,ViewId: /cmp_ads.jsp][Class:
> javax.faces.component.html.HtmlForm,Id: formAds][Class:
> org.apache.myfaces.component.html.ext.HtmlDataTable,Id: tableAds][Class:
> javax.faces.component.UIColumn,Id: j_id_jsp_2054236967_13][Class:
> org.apache.myfaces.component.html.ext.HtmlDataTable,Id:
> tableCreatives][Class: javax.faces.component.UIColumn,Id:
> j_id_jsp_2054236967_23][Class: javax.faces.component.html.HtmlPanelGroup,Id:
> j_id_jsp_2054236967_29][Class:
> org.apache.myfaces.component.html.ext.HtmlOutputText,Id: included1]}'.
> at
> javax.faces.webapp.UIComponentClassicTagBase.doStartTag(UIComponentClassicTagBase.java:459)
> at
> org.apache.jsp.cmp_005fads_jsp._jspx_meth_t_005foutputText_005f2(cmp_005fads_jsp.java:1304)
> at
> org.apache.jsp.cmp_005fads_jsp._jspx_meth_h_005fpanelGroup_005f1(cmp_005fads_jsp.java:1264)
> at
> org.apache.jsp.cmp_005fads_jsp._jspx_meth_h_005fcolumn_005f1(cmp_005fads_jsp.java:1043)
> at
> org.apache.jsp.cmp_005fads_jsp._jspx_meth_t_005fdataTable_005f1(cmp_005fads_jsp.java:994)
> at
> org.apache.jsp.cmp_005fads_jsp._jspx_meth_h_005fcolumn_005f0(cmp_005fads_jsp.java:717)
> at
> org.apache.jsp.cmp_005fads_jsp._jspx_meth_t_005fdataTable_005f0(cmp_005fads_jsp.java:648)
> at
> org.apache.jsp.cmp_005fads_jsp._jspx_meth_h_005fform_005f0(cmp_005fads_jsp.java:516)
> at
> org.apache.jsp.cmp_005fads_jsp._jspx_meth_f_005fview_005f0(cmp_005fads_jsp.java:264)
> at org.apache.jsp.cmp_005fads_jsp._jspService(cmp_005fads_jsp.java:139)
> at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> at
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
> at
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
> at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> 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:654)
> at
> org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445)
> at
> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379)
> at
> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292)
> at
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:338)
> at
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.buildView(JspViewHandlerImpl.java:480)
> at
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:334)
> at
> org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
> at
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:140)
> at javax.faces.webapp.FacesServlet.service(FacesServlet.java:152)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> at
> com.todacell.ui.view.filter.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:149)
> at
> com.todacell.ui.view.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:61)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> at
> org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147)
> 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:175)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
> 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:263)
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
> at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
> at
> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
> at java.lang.Thread.run(Thread.java:619)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.