IllegalStateException: Client-id is duplicated in the faces tree

Description

From our 2-5-x production system. Not sure how to reproduce this.

usage-session: f0a95c75-9a9f-40c4-b922-58337b350804
stack-trace-digest: 73FF7E9F78869FCFC439E2AABEA7257D5E3CE8DA
sakai-version: 2.5
service-version: [r39979-r4753]
app-server: vula4a
user-agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; InfoPath.2; .NET CLR 2.0.50727)
browser-id: Win-InternetExplorer
IP: 137.158.106.149
request-path: /portal/tool/97f4e0e7-86af-4b70-80f5-99a19bb09d72/pictures
time: 15-Jan-2008 14:51:53

stack trace:

org.sakaiproject.portal.api.PortalHandlerException: org.sakaiproject.tool.api.ToolException: Client-id : _idJsp33 is duplicated in the faces tree. Component : roster_form:_idJsp33, path: {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /roster/pictures.jsp][Class: org.sakaiproject.jsf.component.ViewComponent,Id: _idJsp0][Class: javax.faces.component.html.HtmlForm,Id: roster_form][Class: org.apache.myfaces.custom.div.Div,Id: _idJsp30][Class: javax.faces.component.html.HtmlOutputFormat,Id: _idJsp33]}
at org.sakaiproject.portal.charon.handlers.ToolHandler.doPost(ToolHandler.java:63)
caused by: org.sakaiproject.tool.api.ToolException: Client-id : _idJsp33 is duplicated in the faces tree. Component : roster_form:_idJsp33, path: {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /roster/pictures.jsp][Class: org.sakaiproject.jsf.component.ViewComponent,Id: _idJsp0][Class: javax.faces.component.html.HtmlForm,Id: roster_form][Class: org.apache.myfaces.custom.div.Div,Id: _idJsp30][Class: javax.faces.component.html.HtmlOutputFormat,Id: _idJsp33]}
at org.sakaiproject.portal.charon.SkinnableCharonPortal.forwardTool(SkinnableCharonPortal.java:1343)
caused by: javax.servlet.ServletException: Client-id : _idJsp33 is duplicated in the faces tree. Component : roster_form:_idJsp33, path: {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /roster/pictures.jsp][Class: org.sakaiproject.jsf.component.ViewComponent,Id: _idJsp0][Class: javax.faces.component.html.HtmlForm,Id: roster_form][Class: org.apache.myfaces.custom.div.Div,Id: _idJsp30][Class: javax.faces.component.html.HtmlOutputFormat,Id: _idJsp33]}
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
caused by: javax.faces.FacesException: Client-id : _idJsp33 is duplicated in the faces tree. Component : roster_form:_idJsp33, path: {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /roster/pictures.jsp][Class: org.sakaiproject.jsf.component.ViewComponent,Id: _idJsp0][Class: javax.faces.component.html.HtmlForm,Id: roster_form][Class: org.apache.myfaces.custom.div.Div,Id: _idJsp30][Class: javax.faces.component.html.HtmlOutputFormat,Id: _idJsp33]}
at org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:211)
caused by: org.apache.jasper.JasperException: Client-id : _idJsp33 is duplicated in the faces tree. Component : roster_form:_idJsp33, path: {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /roster/pictures.jsp][Class: org.sakaiproject.jsf.component.ViewComponent,Id: _idJsp0][Class: javax.faces.component.html.HtmlForm,Id: roster_form][Class: org.apache.myfaces.custom.div.Div,Id: _idJsp30][Class: javax.faces.component.html.HtmlOutputFormat,Id: _idJsp33]}
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:383)
caused by: java.lang.IllegalStateException: Client-id : _idJsp33 is duplicated in the faces tree. Component : roster_form:_idJsp33, path: {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /roster/pictures.jsp][Class: org.sakaiproject.jsf.component.ViewComponent,Id: _idJsp0][Class: javax.faces.component.html.HtmlForm,Id: roster_form][Class: org.apache.myfaces.custom.div.Div,Id: _idJsp30][Class: javax.faces.component.html.HtmlOutputFormat,Id: _idJsp33]}
at org.apache.myfaces.application.jsp.JspStateManagerImpl.checkForDuplicateIds(JspStateManagerImpl.java:329)
at org.apache.myfaces.application.jsp.JspStateManagerImpl.checkForDuplicateIds(JspStateManagerImpl.java:341)
at org.apache.myfaces.application.jsp.JspStateManagerImpl.checkForDuplicateIds(JspStateManagerImpl.java:338)
at org.apache.myfaces.application.jsp.JspStateManagerImpl.checkForDuplicateIds(JspStateManagerImpl.java:341)
at org.apache.myfaces.application.jsp.JspStateManagerImpl.checkForDuplicateIds(JspStateManagerImpl.java:341)
at org.apache.myfaces.application.jsp.JspStateManagerImpl.saveSerializedView(JspStateManagerImpl.java:286)
at org.apache.myfaces.taglib.core.ViewTag.doAfterBody(ViewTag.java:125)
at org.apache.jsp.roster.pictures_jsp._jspService(pictures_jsp.java:232)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:328)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:315)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:691)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:469)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:403)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
at org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:419)
at org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:211)
at org.sakaiproject.jsf.app.SakaiViewHandler.renderView(SakaiViewHandler.java:137)
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:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:555)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:691)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:469)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:403)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
at org.sakaiproject.jsf.util.JsfTool.dispatch(JsfTool.java:221)
at org.sakaiproject.jsf.util.JsfTool.doPost(JsfTool.java:256)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:691)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:469)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:364)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
at org.sakaiproject.tool.impl.ActiveToolComponent$MyActiveTool.forward(ActiveToolComponent.java:459)
at org.sakaiproject.portal.charon.SkinnableCharonPortal.forwardTool(SkinnableCharonPortal.java:1343)
at org.sakaiproject.portal.charon.handlers.ToolHandler.doTool(ToolHandler.java:163)
at org.sakaiproject.portal.charon.handlers.ToolHandler.doGet(ToolHandler.java:86)
at org.sakaiproject.portal.charon.handlers.ToolHandler.doPost(ToolHandler.java:63)
at org.sakaiproject.portal.charon.SkinnableCharonPortal.doPost(SkinnableCharonPortal.java:1186)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:592)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:200)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:773)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:703)
at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:895)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
at java.lang.Thread.run(Thread.java:595)

Tool Placement:
No Placement

Request:
: AuthType:null
: CharEncoding:UTF-8
: ContentLength:26328
: ContentType:application/x-www-form-urlencoded
: ContextPath:/portal
: LocalAddress:null
: LocalName:vula.uct.ac.za
: LocalPort:443
: Method:POST
: PathInfo:/tool/97f4e0e7-86af-4b70-80f5-99a19bb09d72/pictures
: Protocol:HTTP/1.1
: QueryString:null
: RemoteAddress:137.158.106.149
: RemoteHost:137.158.106.149
: RemotePort:-1
: Requested URL:https://vula.uct.ac.za/portal/tool/97f4e0e7-86af-4b70-80f5-99a19bb09d72/pictures
: Scheme:https
: ServerName:vula.uct.ac.za
: Headers:
: Header:accept:image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, /
: Header:referer:https://vula.uct.ac.za/access/content/group/f041001f-86bc-4a72-004f-c45be634c69c/Pics/ComStaff%20pictures.htm
: Header:accept-language:en-us
: Header:content-type:application/x-www-form-urlencoded
: Header:UA-CPU:x86
: Header:accept-encoding:gzip, deflate
: Header:user-agent:Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; InfoPath.2; .NET CLR 2.0.50727)
: Header:host:vula.uct.ac.za
: Header:content-length:26328
: Header:connection:Keep-Alive
: Header:Cache-Control:no-cache
: Header:cookie:---censored---
: Header:X-NovINet:v1.2
: Parameters:
: Parameter:participantId:0:ca565efa-4e19-4e12-0044-d40447e2e187
: Parameter:roster_form_SUBMIT:0:1
: Parameter:javax.faces.ViewState:0:(long string deleted)
: Parameter:roster_form:link_hidden:0:
: Parameter:roster_form:_idcl:0:roster_form:_idJsp36:41:_idJsp43
: Parameter:returnPage:0:pictures
: Attributes:
: Attribute:tool.url.manager:org.sakaiproject.portal.util.ToolURLManagerImpl@427f03c9
: Attribute:sakai.session:org.sakaiproject.tool.impl.SessionComponent$MySession@af781bc7
: Attribute:sakai.html.head.css.base:<link href="/library/skin/tool_base.css" type="text/css" rel="stylesheet" media="all" />

: Attribute:sakai.character.encoding.done:sakai.character.encoding.done
: Attribute:sakai.html.head.js:<script type="text/javascript" language="JavaScript" src="/library/js/headscripts.js"></script>

: Attribute:sakai.html.head:<link href="/library/skin/tool_base.css" type="text/css" rel="stylesheet" media="all" />
<link href="/library/skin/default/tool.css" type="text/css" rel="stylesheet" media="all" />
<script type="text/javascript" language="JavaScript" src="/library/js/headscripts.js"></script>

: Attribute:sakai.request.native.url:sakai.request.native.url
: Attribute:sakai.html.body.onload:setMainFrameHeight('Main97f4e0e7x86afx4b70x80f5x99a19bb09d72');setFocus(focus_path);
: Attribute:sakai.filtered:sakai.filtered
: Attribute:sakai.html.head.css.skin:<link href="/library/skin/default/tool.css" type="text/css" rel="stylesheet" media="all" />

: Attribute:sakai.html.head.css:<link href="/library/skin/tool_base.css" type="text/css" rel="stylesheet" media="all" />
<link href="/library/skin/default/tool.css" type="text/css" rel="stylesheet" media="all" />

Session:
: Created:1200401457205
: LastAccess:1200401513525
: MaxInactive:3600
: Attributes:
: Attribute:portalskin:defaultskin

Activity

Neal Caidin August 14, 2017 at 2:02 PM

Bulk closing issues that have not been updated since 2014 and earlier. Please reopen if this is still an issue and you have new information.

Beth Kirschner May 8, 2013 at 3:16 PM

I'd suggest retesting after JSF upgrade (some sunny day)

amberg1 March 7, 2011 at 3:50 AM

Can this Jira be closed?

Stephen Marquard January 15, 2008 at 1:48 PM

This seems to be caused by a user saving the Roster photo page to an html file (saved in Resources), then viewing the html file (which shows the profile pictures) and clicking on one of the profile links from the page. So some sort of JSF state issue.

Won't Fix

Details

Priority

Affects versions

Components

Assignee

Reporter

Created January 15, 2008 at 1:42 PM
Updated August 14, 2017 at 2:02 PM
Resolved August 14, 2017 at 2:02 PM