cancel
Showing results for 
Search instead for 
Did you mean: 

java.lang.IllegalStateException: duplicate Id for a component

fernandogr_
Confirmed Champ
Confirmed Champ

Hello,

I have a plug in that I have used in nuxeo 5.4.1 and 5.4.2 now I want to use it with the 5.5 version, I already tried it and so far the plug in works exactly as it worked on the previous versions, basically my plug in add the feature to generate some reports and insert those reports into a specific location inside a domain.

I was testing the plug in in the new version and also checking the new nuxeo features, and here is where I found a problem. When I go to the "Home" section, and then I go to the "Network" option , I get an Error, This is the error that I see in my log file:

12:53:06,567 ERROR [viewhandler] Error Rendering View[/view_home.xhtml]
java.lang.IllegalStateException: duplicate Id for a component relationshipNetworkView:contentViewLayoutSelectForm_
        at org.ajax4jsf.application.TreeStructureNode.apply(TreeStructureNode.java:68)
        at org.ajax4jsf.application.TreeStructureNode.apply(TreeStructureNode.java:92)
        at org.ajax4jsf.application.TreeStructureNode.apply(TreeStructureNode.java:92)
        at org.ajax4jsf.application.TreeStructureNode.apply(TreeStructureNode.java:92)
        at org.ajax4jsf.application.TreeStructureNode.apply(TreeStructureNode.java:92)
        at org.ajax4jsf.application.TreeStructureNode.apply(TreeStructureNode.java:92)
        at org.ajax4jsf.application.TreeStructureNode.apply(TreeStructureNode.java:92)
        at org.ajax4jsf.application.TreeStructureNode.apply(TreeStructureNode.java:92)
        at org.ajax4jsf.application.TreeStructureNode.apply(TreeStructureNode.java:92)
        at org.ajax4jsf.application.TreeStructureNode.apply(TreeStructureNode.java:92)
        at org.ajax4jsf.application.TreeStructureNode.apply(TreeStructureNode.java:92)
        at org.ajax4jsf.application.TreeStructureNode.apply(TreeStructureNode.java:92)
        at org.ajax4jsf.application.TreeStructureNode.apply(TreeStructureNode.java:92)
        at org.ajax4jsf.application.TreeStructureNode.apply(TreeStructureNode.java:92)
        at org.ajax4jsf.application.AjaxStateManager.getTreeStructureToSave(AjaxStateManager.java:187)
        at org.ajax4jsf.application.AjaxStateManager.buildViewState(AjaxStateManager.java:498)
        at org.ajax4jsf.application.AjaxStateManager$SeamStateManagerWrapper.saveView(AjaxStateManager.java:105)
        at org.jboss.seam.jsf.SeamStateManager.saveView(SeamStateManager.java:89)
        at org.ajax4jsf.application.AjaxStateManager.saveSerializedView(AjaxStateManager.java:454)
        at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:615)
        at org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)
        at org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)
        at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:110)
        at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
        at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
        at org.nuxeo.ecm.platform.ui.web.lifecycle.NuxeoLifeCycleImpl.render(NuxeoLifeCycleImpl.java:98)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.nuxeo.wss.servlet.BaseWSSFilter.doFilter(BaseWSSFilter.java:135)
        at org.nuxeo.wss.servlet.FailSafeWSSFilter.doFilter(FailSafeWSSFilter.java:55)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
        at org.nuxeo.ecm.platform.ui.web.multipart.MultipartFilter.doFilter(MultipartFilter.java:73)
        at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
        at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
        at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
        at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
        at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
        at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
        at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
        at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:368)
        at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:495)
        at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
        at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
        at org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:51)
        at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
        at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.nuxeo.ecm.platform.ui.web.auth.NuxeoAuthenticationFilter.doFilterInternal(NuxeoAuthenticationFilter.java:362)
        at org.nuxeo.ecm.platform.ui.web.auth.service.NuxeoAuthFilterChain.doFilter(NuxeoAuthFilterChain.java:35)
        at org.nuxeo.ecm.platform.ui.web.auth.oauth.NuxeoOAuthFilter.doFilter(NuxeoOAuthFilter.java:167)
        at org.nuxeo.ecm.platform.ui.web.auth.service.NuxeoAuthFilterChain.doFilter(NuxeoAuthFilterChain.java:33)
        at org.nuxeo.ecm.platform.ui.web.auth.NuxeoAuthenticationFilter.doFilter(NuxeoAuthenticationFilter.java:340)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.nuxeo.ecm.platform.web.common.exceptionhandling.NuxeoExceptionFilter.doFilter(NuxeoExceptionFilter.java:79)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.nuxeo.ecm.platform.web.common.encoding.NuxeoEncodingFilter.doFilter(NuxeoEncodingFilter.java:59)
        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.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.nuxeo.ecm.platform.ui.web.rest.FancyURLFilter.doFilter(FancyURLFilter.java:123)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.nuxeo.ecm.platform.ui.web.auth.NuxeoAuthenticationFilter.doFilterInternal(NuxeoAuthenticationFilter.java:518)
        at org.nuxeo.ecm.platform.ui.web.auth.service.NuxeoAuthFilterChain.doFilter(NuxeoAuthFilterChain.java:35)
        at org.nuxeo.ecm.platform.ui.web.auth.oauth.NuxeoOAuthFilter.doFilter(NuxeoOAuthFilter.java:167)
        at org.nuxeo.ecm.platform.ui.web.auth.service.NuxeoAuthFilterChain.doFilter(NuxeoAuthFilterChain.java:33)
        at org.nuxeo.ecm.platform.ui.web.auth.NuxeoAuthenticationFilter.doFilter(NuxeoAuthenticationFilter.java:340)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.nuxeo.ecm.platform.wi.filter.WIRequestFilter.doFilter(WIRequestFilter.java:120)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.nuxeo.ecm.platform.web.common.requestcontroller.filter.NuxeoRequestControllerFilter.doFilter(NuxeoRequestControllerFilter.java:141)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.nuxeo.platform.login.web.LoginStackCleaner.doFilter(LoginStackCleaner.java:49)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.nuxeo.ecm.platform.web.common.exceptionhandling.NuxeoExceptionFilter.doFilter(NuxeoExceptionFilter.java:79)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.nuxeo.ecm.platform.web.common.encoding.NuxeoEncodingFilter.doFilter(NuxeoEncodingFilter.java:59)
        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: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:293)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)
        at java.lang.Thread.run(Thread.java:619)
12:53:06,571 ERROR [lifecycle] jsf.lifecycle.phase.exceptionMar 26, 2012 12:53:06 PM com.sun.facelets.FaceletViewHandler handleRenderException

I have done some research on internet , and so far I know that this error could be generated (I am not 100% sure if this could be the problem) because the scope (session, request , etc) of one component.

When the component is bound, there is a single instance of that component set on the bean. If the bean is in session scope, then the component is not created again the next time it is used in the same session. If the component is used in a different view of the same page, there will be two different JSF component trees with the same instance of the bound component. That's when the 'duplicate id' error arises.

In my application structure I have a deployment-fragment.xml file and I specify my beans's scope:

<managed-bean>
  <managed-bean-name>reportCreator</managed-bean-name>
  <managed-bean-class>com.tttt.nuxeo.ReportCreatorBean </managed-bean-class>
  <managed-bean-scope>request</managed-bean-scope>
</managed-bean>
<managed-bean>
  <managed-bean-name>schedulerCheck</managed-bean-name>
  <managed-bean-class>com.tttt.nuxeo.SchedulerBean</managed-bean-class>
  <managed-bean-scope>request</managed-bean-scope>
</managed-bean>
<managed-bean>
   <managed-bean-name>permissions</managed-bean-name>
   <managed-bean-class>com.tttt.nuxeo.PermissionsBean</managed-bean-class>
   <managed-bean-scope>request</managed-bean-scope>
</managed-bean>

My plug in is not linked at all with the Network feature, so I have not idea what could be generating this error. Does anyone has an idea what the problem could be? How could I do a better debug to find the root of this problem?

Thanks in advance

4 REPLIES 4

Thierry_Martins
Star Collaborator
Star Collaborator

if your plugin is not linked to this failure, please give us a use case to reproduce this error on a stock Nuxeo. Then we will investigate to fix it.

fernandogr_
Confirmed Champ
Confirmed Champ

My plug in does not use the nuxeo's network feature at all, my plug in displays a button when we are inside a domain/section/folder, when I click the button I display a custom page (it is part of my plug in) where I have to fill out some forms, based on the information that I submitted a report in pdf is generated and saved inside the folder as a file. I have used this plug in some past nuxeo versions without a ploblem. The new 5.5 version works fine without my plug in, including the network feature, but as soon as I put my plug in, the network feature doesn't work.

fernandogr_
Confirmed Champ
Confirmed Champ

at org.nuxeo.ecm.platform.web.common.encoding.NuxeoEncodingFilter.doFilter(NuxeoEncodingFilter.java

fernandogr_
Confirmed Champ
Confirmed Champ

From this point the "Home" page is unreachable , once I get this error I need to click the back button in my web browser, but I don' return to "Home" page, this time I will return to a random place, it can be the "DAM" page or the "Content Managment" page or any other, and every time I try to get to the "Home" i get the same error, I need to log out and log in to return to the normality.

Getting started

Find what you came for

We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.