You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by Sean Schofield <se...@gmail.com> on 2005/01/13 05:34:18 UTC

Update to forceId

I updated the forceId attribute for HtmlInputText so now it works
inside of <h:dataTable>, etc.  The JIRA entry contains the new patch
(forceId.patch).

If you have <h:inputText id=foo forceId="true"/> inside of a
<h:column> you will now get something like ...

<input id=foo[0] .../>
<input id=foo[1] .../>
<input id=foo[2] .../>
...

I haven't tried an example where I submit the values yet but there
shouldn't be any problem because the same clientId will be used on the
decode (although I will test it at some point.)

I will also continue to test more complicated scenarios with naming
containers (like tables within tables.)  Also, we should probably
update the forceId example on the web page to show one with tables as
well.

sean

Re: Update to forceId

Posted by Heath Borders <he...@gmail.com>.
That would be SOOO cool if you got that going.

There is still the nested datatable bug that needs to be ironed out. 
I'm hoping to get a few free days at work that I can use to really dig
in to the datatable.  Its the last standard component that I don't
know inside and out.


On Wed, 12 Jan 2005 23:34:18 -0500, Sean Schofield
<se...@gmail.com> wrote:
> I updated the forceId attribute for HtmlInputText so now it works
> inside of <h:dataTable>, etc.  The JIRA entry contains the new patch
> (forceId.patch).
> 
> If you have <h:inputText id=foo forceId="true"/> inside of a
> <h:column> you will now get something like ...
> 
> <input id=foo[0] .../>
> <input id=foo[1] .../>
> <input id=foo[2] .../>
> ...
> 
> I haven't tried an example where I submit the values yet but there
> shouldn't be any problem because the same clientId will be used on the
> decode (although I will test it at some point.)
> 
> I will also continue to test more complicated scenarios with naming
> containers (like tables within tables.)  Also, we should probably
> update the forceId example on the web page to show one with tables as
> well.
> 
> sean
> 


-- 
-Heath Borders-Wing
hborders@mail.win.org

Re: Update to forceId

Posted by Heath Borders <he...@gmail.com>.
lol.
Maybe we all need Simpson's aliases to seemingly increase the
popularity of our solutions.

I call Dr. Marvin Monroe! :-)


On Fri, 14 Jan 2005 09:24:57 -0500, Sean Schofield
<se...@gmail.com> wrote:
> I have a confession to make.  I wrote the last entry.  Flanderz = me.
> :-)  That's just the nickname I use on the Sun forum (I'm a Simpsons
> fan).  I remembered that thread from a long time ago and so I wanted
> to get some people to look at our solution now that we have one.
> 
> sean
> 
> On Fri, 14 Jan 2005 08:17:38 +0100, Matthias Wessendorf
> <ma...@matthias-wessendorf.de> wrote:
> > FYI:
> >
> > http://tinyurl.com/5kh9m
> >
> > last entry is about "forceId" of MyFaces :-)
> >
> > Regards,
> > Matthias
> 


-- 
-Heath Borders-Wing
hborders@mail.win.org

Re: Update to forceId

Posted by Sean Schofield <se...@gmail.com>.
I have a confession to make.  I wrote the last entry.  Flanderz = me.
:-)  That's just the nickname I use on the Sun forum (I'm a Simpsons
fan).  I remembered that thread from a long time ago and so I wanted
to get some people to look at our solution now that we have one.

sean


On Fri, 14 Jan 2005 08:17:38 +0100, Matthias Wessendorf
<ma...@matthias-wessendorf.de> wrote:
> FYI:
> 
> http://tinyurl.com/5kh9m
> 
> last entry is about "forceId" of MyFaces :-)
> 
> Regards,
> Matthias

RE: Update to forceId

Posted by Matthias Wessendorf <ma...@matthias-wessendorf.de>.
FYI:

http://tinyurl.com/5kh9m

last entry is about "forceId" of MyFaces :-)

Regards,
Matthias

> -----Original Message-----
> From: Heath Borders [mailto:heath.borders@gmail.com] 
> Sent: Friday, January 14, 2005 5:21 AM
> To: Sean Schofield; MyFaces Discussion
> Subject: Re: Update to forceId
> 
> 
> Ok.  There goes that theory on serialization then.
> 
> I guess you're right.  This type of thing can really only be 
> implemented in the renderer to be guaranteed to work.
> 
> 
> On Thu, 13 Jan 2005 23:10:23 -0500, Sean Schofield 
> <se...@gmail.com> wrote:
> > > Well, I would think that since its all just serialized in the 
> > > session, that when it was de-serialized, it would still 
> all have the 
> > > same memory address.  This might not actually be the case, but I 
> > > would think that it might be.
> > 
> > Well we can't really count on it being serialized in the 
> session.  If 
> > you choose client-side state, it will *definitely* have a 
> new address.
> > 
> > > Have you actually given it a try?
> > 
> > Yes.  I am using session serialization and the memory addresses are 
> > definitely different (I can even see them in my debugger) 
> and equals 
> > is definitely failing (that's what tipped me off in fact.)
> > 
> > > -Heath Borders-Wing
> > 
> > sean
> > 
> 
> 
> -- 
> -Heath Borders-Wing
> hborders@mail.win.org
> 


Re: Update to forceId

Posted by Heath Borders <he...@gmail.com>.
Ok.  There goes that theory on serialization then.

I guess you're right.  This type of thing can really only be
implemented in the renderer to be guaranteed to work.


On Thu, 13 Jan 2005 23:10:23 -0500, Sean Schofield
<se...@gmail.com> wrote:
> > Well, I would think that since its all just serialized in the session,
> > that when it was de-serialized, it would still all have the same
> > memory address.  This might not actually be the case, but I would
> > think that it might be.
> 
> Well we can't really count on it being serialized in the session.  If
> you choose client-side state, it will *definitely* have a new address.
> 
> > Have you actually given it a try?
> 
> Yes.  I am using session serialization and the memory addresses are
> definitely different (I can even see them in my debugger) and equals
> is definitely failing (that's what tipped me off in fact.)
> 
> > -Heath Borders-Wing
> 
> sean
> 


-- 
-Heath Borders-Wing
hborders@mail.win.org

Re: Update to forceId

Posted by Sean Schofield <se...@gmail.com>.
> Well, I would think that since its all just serialized in the session,
> that when it was de-serialized, it would still all have the same
> memory address.  This might not actually be the case, but I would
> think that it might be.

Well we can't really count on it being serialized in the session.  If
you choose client-side state, it will *definitely* have a new address.
 
> Have you actually given it a try?

Yes.  I am using session serialization and the memory addresses are
definitely different (I can even see them in my debugger) and equals
is definitely failing (that's what tipped me off in fact.)

> -Heath Borders-Wing

sean

Re: Update to forceId

Posted by Heath Borders <he...@gmail.com>.
Well, I would think that since its all just serialized in the session,
that when it was de-serialized, it would still all have the same
memory address.  This might not actually be the case, but I would
think that it might be.

Have you actually given it a try?


On Thu, 13 Jan 2005 22:36:51 -0500, Sean Schofield
<se...@gmail.com> wrote:
> Big problem here.  None of the classes implement the equals method.
> When you refresh (or post) the page, a new instance of the component
> is created (with a different memory address.)  Default implementation
> of equals method will return false in this case.
> 
> See entry for MYFACES-80 for more details about the potential solution.
> 
> sean
> 
> On Thu, 13 Jan 2005 16:08:00 -0500, Sean Schofield
> <se...@gmail.com> wrote:
> > > Again, why don't you just associate an id with the component instance
> > > and then do an equals check.  If its the same component, then it will
> > > return true and there is no problem to report.
> >
> > That's what I'm trying to do.  Although it occurs to me there is a bug
> > in my logic.  I'm throwing the exception if the component equals the
> > one in the map.  I need to throw the exception if its *not* equal.
> > DUH.  I will submit a patch tonight.
> >
> > > -Heath Borders-Wing
> >
> > sean
> >
> 


-- 
-Heath Borders-Wing
hborders@mail.win.org

Re: Update to forceId

Posted by Sean Schofield <se...@gmail.com>.
Big problem here.  None of the classes implement the equals method. 
When you refresh (or post) the page, a new instance of the component
is created (with a different memory address.)  Default implementation
of equals method will return false in this case.

See entry for MYFACES-80 for more details about the potential solution.

sean


On Thu, 13 Jan 2005 16:08:00 -0500, Sean Schofield
<se...@gmail.com> wrote:
> > Again, why don't you just associate an id with the component instance
> > and then do an equals check.  If its the same component, then it will
> > return true and there is no problem to report.
> 
> That's what I'm trying to do.  Although it occurs to me there is a bug
> in my logic.  I'm throwing the exception if the component equals the
> one in the map.  I need to throw the exception if its *not* equal.
> DUH.  I will submit a patch tonight.
> 
> > -Heath Borders-Wing
> 
> sean
>

Re: Update to forceId

Posted by Sean Schofield <se...@gmail.com>.
> Again, why don't you just associate an id with the component instance
> and then do an equals check.  If its the same component, then it will
> return true and there is no problem to report.

That's what I'm trying to do.  Although it occurs to me there is a bug
in my logic.  I'm throwing the exception if the component equals the
one in the map.  I need to throw the exception if its *not* equal. 
DUH.  I will submit a patch tonight.

> -Heath Borders-Wing

sean

Re: Update to forceId

Posted by Heath Borders <he...@gmail.com>.
Again, why don't you just associate an id with the component instance
and then do an equals check.  If its the same component, then it will
return true and there is no problem to report.

If you can only call getClientId() once per request, that will
obviously cause problems all over the place.


On Thu, 13 Jan 2005 12:53:50 -0500, Sean Schofield
<se...@gmail.com> wrote:
> OK I found out the problem with the <h:message> tag and the "for"
> attribute.  The porblem is that its calling the getClientId() method
> of HtmlTextInput *after* that method has already been callent by
> <h:inputText>.
> 
> Since the initial call marks the "forced" id as in use, subsequent
> calls fail because the id is already in use.
> 
> This is why I did not want to implement duplicate idea checking in the
> component.  I am planning on getting rid of this functionality
> alltogether until we can do it properly in the renderer.
> 
> In addition to this problem, I can imagine there are other instances
> where getClientId() is called by other compoenents that will crash
> things in the same way.
> 
> For now, I don't really care if the user is able to generate XHTML
> that violates the standard.  That is not the job of our JSF
> components.  It would be nice, but for now I plan to take out this
> check.  It will go slightly faster and more importantly, will stop
> causing problems.
> 
> sean
> 


-- 
-Heath Borders-Wing
hborders@mail.win.org

Re: Update to forceId

Posted by Sean Schofield <se...@gmail.com>.
OK I found out the problem with the <h:message> tag and the "for"
attribute.  The porblem is that its calling the getClientId() method
of HtmlTextInput *after* that method has already been callent by
<h:inputText>.

Since the initial call marks the "forced" id as in use, subsequent
calls fail because the id is already in use.

This is why I did not want to implement duplicate idea checking in the
component.  I am planning on getting rid of this functionality
alltogether until we can do it properly in the renderer.

In addition to this problem, I can imagine there are other instances
where getClientId() is called by other compoenents that will crash
things in the same way.

For now, I don't really care if the user is able to generate XHTML
that violates the standard.  That is not the job of our JSF
components.  It would be nice, but for now I plan to take out this
check.  It will go slightly faster and more importantly, will stop
causing problems.

sean

RE: Update to forceId

Posted by Matthias Wessendorf <ma...@matthias-wessendorf.de>.
> Right.  I will investigate and fix (hopefully).  I see that 
> you've commited what we have for now which is good.

sure! more live in CVS ;-)

> > Matthias
> 
> sean
> 


Re: Update to forceId

Posted by Sean Schofield <se...@gmail.com>.
> Heath,
> 
> that happens outside of dataTable
> it occurs in *simple* form sample

Right.  I will investigate and fix (hopefully).  I see that you've
commited what we have for now which is good.
 
> Matthias

sean

RE: Update to forceId

Posted by Matthias Wessendorf <ma...@matthias-wessendorf.de>.
Heath,

that happens outside of dataTable
it occurs in *simple* form sample

Matthias

> -----Original Message-----
> From: Heath Borders [mailto:heath.borders@gmail.com] 
> Sent: Thursday, January 13, 2005 2:56 PM
> To: MyFaces Development
> Subject: Re: Update to forceId
> 
> 
> This is exactly what I would expect would happen inside of a 
> datatable.
> 
> If everything works except for the datatable, I would 
> consider the feature working.
> 
> 
> On Thu, 13 Jan 2005 10:24:07 +0100, Matthias Wessendorf 
> <ma...@matthias-wessendorf.de> wrote:
> > Sean,
> > 
> > I included your patch to CVS.
> > Also I added a editable table to
> > forceId.jsp do demonstrate the rendered forceId
> > inside a table.
> > 
> > Ok, thanks that works (update of dataTable row)
> > 
> > But the forceId-feature is still experimental.
> > I run into error,
> > when I add message tag to forced <x:inputText/>
> > 
> > here is what I did:
> > <x:inputText id="forceTwo" value="#{forceIdBean.valueTwo}" 
> > forceId="true"/> <h:message id="forceTwoMessage" for="forceTwo" 
> > styleClass="error" />
> > 
> > and the error is in LOG file of Tomcat.
> > 
> > here:
> > 2005-01-13 10:07:57 ApplicationDispatcher[/myfaces-examples]
> > Servlet.service() for servlet jsp threw exception
> > java.lang.IllegalArgumentException: Duplicate cliientId not 
> allowed. 
> > View already contains the id: forceTwo
> >        at 
> > 
> org.apache.myfaces.component.html.util.HtmlComponentUtils.getClientId(
> > Ht
> > mlComponentUtils.java:109)
> >        at
> > 
> org.apache.myfaces.component.html.ext.HtmlInputText.getClientI
> d(HtmlInpu
> > tText.java:54)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlMessageRendererBase.rend
> erMessage(
> > HtmlMessageRendererBase.java:102)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlMessageRenderer.encodeEn
> d(HtmlMess
> > ageRenderer.java:53)
> >        at
> > 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBas
> e.java:332
> > )
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChild(Rendere
> rUtils.jav
> > a:446)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlGridRenderer.renderChild
> ren(HtmlGr
> > idRenderer.java:253)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlGridRenderer.encodeEnd(H
> tmlGridRen
> > derer.java:131)
> >        at
> > 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBas
> e.java:332
> > )
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChild(Rendere
> rUtils.jav
> > a:446)
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChildren(Rend
> ererUtils.
> > java:423)
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChild(Rendere
> rUtils.jav
> > a:444)
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChildren(Rend
> ererUtils.
> > java:423)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlGroupRenderer.encodeEnd(
> HtmlGroupR
> > enderer.java:73)
> >        at
> > 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBas
> e.java:332
> > )
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChild(Rendere
> rUtils.jav
> > a:446)
> >        at
> > 
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.renderTabl
> eCell(Html
> > LayoutRenderer.java:259)
> >        at
> > 
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.renderClas
> sic(HtmlLa
> > youtRenderer.java:118)
> >        at
> > 
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.encodeEnd(
> HtmlLayout
> > Renderer.java:66)
> >        at
> > 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBas
> e.java:332
> > )
> >        at
> > javax.faces.webapp.UIComponentTag.encodeEnd(UIComponentTag.java:376)
> >        at
> > javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:280)
> >        at
> > 
> org.apache.myfaces.taglib.UIComponentBodyTagBase.doEndTag(UICo
> mponentBod
> > yTagBase.java:85)
> >        at
> > 
> org.apache.jsp.forceId_jsp._jspx_meth_x_panelLayout_0(forceId_
> jsp.java:2
> > 91)
> >        at
> > org.apache.jsp.forceId_jsp._jspx_meth_f_view_0(forceId_jsp.java:196)
> >        at 
> org.apache.jsp.forceId_jsp._jspService(forceId_jsp.java:151)
> >        at
> > org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
> >        at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> >        at
> > 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServlet
> Wrapper.ja
> > va:324)
> >        at
> > 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet
> .java:292)
> >        at
> > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
> >        at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:237)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.invoke(Applicat
> ionDispatc
> > her.java:704)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.processRequest(
> Applicatio
> > nDispatcher.java:474)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.doForward(Appli
> cationDisp
> > atcher.java:409)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.forward(Applica
> tionDispat
> > cher.java:312)
> >        at
> > 
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.
> dispatch(S
> > ervletExternalContextImpl.java:404)
> >        at
> > 
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderVi
> ew(JspView
> > HandlerImpl.java:244)
> >        at
> > 
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImp
> l.java:290
> > )
> >        at
> > javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:237)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.myfaces.component.html.util.ExtensionsFilter.doFilt
> er(Extensi
> > onsFilter.java:119)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:186)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> rapperValv
> > e.java:214)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardContextValve.invokeInternal(S
> tandardCon
> > textValve.java:198)
> >        at
> > 
> org.apache.catalina.core.StandardContextValve.invoke(StandardC
> ontextValv
> > e.java:152)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> Valve.java
> > :137)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReport
> Valve.java
> > :118)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:102)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEn
> gineValve.
> > java:109)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
> >        at
> > 
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.
> java:160)
> >        at
> > 
> org.apache.coyote.http11.Http11Processor.process(Http11Process
> or.java:79
> > 9)
> >        at
> > 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandle
> r.processC
> > onnection(Http11Protocol.java:705)
> >        at
> > 
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoi
> nt.java:57
> > 7)
> >        at
> > 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
> ThreadPool
> > .java:683)
> >        at java.lang.Thread.run(Thread.java:534)
> > 
> > 2005-01-13 10:07:57 StandardContext[/myfaces-examples]Duplicate
> > cliientId not allowed.  View already contains the id: forceTwo
> > javax.faces.FacesException: Duplicate cliientId not allowed.  View 
> > already contains the id: forceTwo
> >        at 
> > 
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch
> > (S
> > ervletExternalContextImpl.java:410)
> >        at
> > 
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderVi
> ew(JspView
> > HandlerImpl.java:244)
> >        at
> > 
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImp
> l.java:290
> > )
> >        at
> > javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:237)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.myfaces.component.html.util.ExtensionsFilter.doFilt
> er(Extensi
> > onsFilter.java:119)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:186)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> rapperValv
> > e.java:214)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardContextValve.invokeInternal(S
> tandardCon
> > textValve.java:198)
> >        at
> > 
> org.apache.catalina.core.StandardContextValve.invoke(StandardC
> ontextValv
> > e.java:152)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> Valve.java
> > :137)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReport
> Valve.java
> > :118)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:102)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEn
> gineValve.
> > java:109)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
> >        at
> > 
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.
> java:160)
> >        at
> > 
> org.apache.coyote.http11.Http11Processor.process(Http11Process
> or.java:79
> > 9)
> >        at
> > 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandle
> r.processC
> > onnection(Http11Protocol.java:705)
> >        at
> > 
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoi
> nt.java:57
> > 7)
> >        at
> > 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
> ThreadPool
> > .java:683)
> >        at java.lang.Thread.run(Thread.java:534)
> > Caused by: org.apache.jasper.JasperException: Duplicate 
> cliientId not
> > allowed.  View already contains the id: forceTwo
> >        at
> > 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServlet
> Wrapper.ja
> > va:372)
> >        at
> > 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet
> .java:292)
> >        at
> > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
> >        at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:237)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.invoke(Applicat
> ionDispatc
> > her.java:704)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.processRequest(
> Applicatio
> > nDispatcher.java:474)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.doForward(Appli
> cationDisp
> > atcher.java:409)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.forward(Applica
> tionDispat
> > cher.java:312)
> >        at
> > 
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.
> dispatch(S
> > ervletExternalContextImpl.java:404)
> >        ... 30 more
> > 
> > 2005-01-13 10:07:57 StandardContext[/myfaces-examples]Root cause: 
> > Duplicate cliientId not allowed.  View already contains the id: 
> > forceTwo
> > org.apache.jasper.JasperException: Duplicate cliientId not allowed.
> > View already contains the id: forceTwo
> >        at
> > 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServlet
> Wrapper.ja
> > va:372)
> >        at
> > 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet
> .java:292)
> >        at
> > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
> >        at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:237)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.invoke(Applicat
> ionDispatc
> > her.java:704)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.processRequest(
> Applicatio
> > nDispatcher.java:474)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.doForward(Appli
> cationDisp
> > atcher.java:409)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.forward(Applica
> tionDispat
> > cher.java:312)
> >        at
> > 
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.
> dispatch(S
> > ervletExternalContextImpl.java:404)
> >        at
> > 
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderVi
> ew(JspView
> > HandlerImpl.java:244)
> >        at
> > 
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImp
> l.java:290
> > )
> >        at
> > javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:237)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.myfaces.component.html.util.ExtensionsFilter.doFilt
> er(Extensi
> > onsFilter.java:119)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:186)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> rapperValv
> > e.java:214)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardContextValve.invokeInternal(S
> tandardCon
> > textValve.java:198)
> >        at
> > 
> org.apache.catalina.core.StandardContextValve.invoke(StandardC
> ontextValv
> > e.java:152)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> Valve.java
> > :137)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReport
> Valve.java
> > :118)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:102)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEn
> gineValve.
> > java:109)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
> >        at
> > 
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.
> java:160)
> >        at
> > 
> org.apache.coyote.http11.Http11Processor.process(Http11Process
> or.java:79
> > 9)
> >        at
> > 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandle
> r.processC
> > onnection(Http11Protocol.java:705)
> >        at
> > 
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoi
> nt.java:57
> > 7)
> >        at
> > 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
> ThreadPool
> > .java:683)
> >        at java.lang.Thread.run(Thread.java:534)
> > ----- Root Cause -----
> > java.lang.IllegalArgumentException: Duplicate cliientId not allowed.
> > View already contains the id: forceTwo
> >        at
> > 
> org.apache.myfaces.component.html.util.HtmlComponentUtils.getC
> lientId(Ht
> > mlComponentUtils.java:109)
> >        at
> > 
> org.apache.myfaces.component.html.ext.HtmlInputText.getClientI
> d(HtmlInpu
> > tText.java:54)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlMessageRendererBase.rend
> erMessage(
> > HtmlMessageRendererBase.java:102)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlMessageRenderer.encodeEn
> d(HtmlMess
> > ageRenderer.java:53)
> >        at
> > 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBas
> e.java:332
> > )
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChild(Rendere
> rUtils.jav
> > a:446)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlGridRenderer.renderChild
> ren(HtmlGr
> > idRenderer.java:253)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlGridRenderer.encodeEnd(H
> tmlGridRen
> > derer.java:131)
> >        at
> > 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBas
> e.java:332
> > )
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChild(Rendere
> rUtils.jav
> > a:446)
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChildren(Rend
> ererUtils.
> > java:423)
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChild(Rendere
> rUtils.jav
> > a:444)
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChildren(Rend
> ererUtils.
> > java:423)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlGroupRenderer.encodeEnd(
> HtmlGroupR
> > enderer.java:73)
> >        at
> > 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBas
> e.java:332
> > )
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChild(Rendere
> rUtils.jav
> > a:446)
> >        at
> > 
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.renderTabl
> eCell(Html
> > LayoutRenderer.java:259)
> >        at
> > 
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.renderClas
> sic(HtmlLa
> > youtRenderer.java:118)
> >        at
> > 
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.encodeEnd(
> HtmlLayout
> > Renderer.java:66)
> >        at
> > 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBas
> e.java:332
> > )
> >        at
> > javax.faces.webapp.UIComponentTag.encodeEnd(UIComponentTag.java:376)
> >        at
> > javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:280)
> >        at
> > 
> org.apache.myfaces.taglib.UIComponentBodyTagBase.doEndTag(UICo
> mponentBod
> > yTagBase.java:85)
> >        at
> > 
> org.apache.jsp.forceId_jsp._jspx_meth_x_panelLayout_0(forceId_
> jsp.java:2
> > 91)
> >        at
> > org.apache.jsp.forceId_jsp._jspx_meth_f_view_0(forceId_jsp.java:196)
> >        at 
> org.apache.jsp.forceId_jsp._jspService(forceId_jsp.java:151)
> >        at
> > org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
> >        at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> >        at
> > 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServlet
> Wrapper.ja
> > va:324)
> >        at
> > 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet
> .java:292)
> >        at
> > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
> >        at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:237)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.invoke(Applicat
> ionDispatc
> > her.java:704)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.processRequest(
> Applicatio
> > nDispatcher.java:474)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.doForward(Appli
> cationDisp
> > atcher.java:409)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.forward(Applica
> tionDispat
> > cher.java:312)
> >        at
> > 
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.
> dispatch(S
> > ervletExternalContextImpl.java:404)
> >        at
> > 
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderVi
> ew(JspView
> > HandlerImpl.java:244)
> >        at
> > 
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImp
> l.java:290
> > )
> >        at
> > javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:237)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.myfaces.component.html.util.ExtensionsFilter.doFilt
> er(Extensi
> > onsFilter.java:119)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:186)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> rapperValv
> > e.java:214)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardContextValve.invokeInternal(S
> tandardCon
> > textValve.java:198)
> >        at
> > 
> org.apache.catalina.core.StandardContextValve.invoke(StandardC
> ontextValv
> > e.java:152)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> Valve.java
> > :137)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReport
> Valve.java
> > :118)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:102)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEn
> gineValve.
> > java:109)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
> >        at
> > 
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.
> java:160)
> >        at
> > 
> org.apache.coyote.http11.Http11Processor.process(Http11Process
> or.java:79
> > 9)
> >        at
> > 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandle
> r.processC
> > onnection(Http11Protocol.java:705)
> >        at
> > 
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoi
> nt.java:57
> > 7)
> >        at
> > 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
> ThreadPool
> > .java:683)
> >        at java.lang.Thread.run(Thread.java:534)
> > 
> > 2005-01-13 10:07:57 StandardContext[/myfaces-examples]Root cause of
> > ServletException: Duplicate cliientId not allowed.  View already 
> > contains the id: forceTwo
> > java.lang.IllegalArgumentException: Duplicate cliientId not 
> allowed. 
> > View already contains the id: forceTwo
> >        at 
> > 
> org.apache.myfaces.component.html.util.HtmlComponentUtils.getClientId(
> > Ht
> > mlComponentUtils.java:109)
> >        at
> > 
> org.apache.myfaces.component.html.ext.HtmlInputText.getClientI
> d(HtmlInpu
> > tText.java:54)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlMessageRendererBase.rend
> erMessage(
> > HtmlMessageRendererBase.java:102)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlMessageRenderer.encodeEn
> d(HtmlMess
> > ageRenderer.java:53)
> >        at
> > 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBas
> e.java:332
> > )
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChild(Rendere
> rUtils.jav
> > a:446)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlGridRenderer.renderChild
> ren(HtmlGr
> > idRenderer.java:253)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlGridRenderer.encodeEnd(H
> tmlGridRen
> > derer.java:131)
> >        at
> > 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBas
> e.java:332
> > )
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChild(Rendere
> rUtils.jav
> > a:446)
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChildren(Rend
> ererUtils.
> > java:423)
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChild(Rendere
> rUtils.jav
> > a:444)
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChildren(Rend
> ererUtils.
> > java:423)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlGroupRenderer.encodeEnd(
> HtmlGroupR
> > enderer.java:73)
> >        at
> > 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBas
> e.java:332
> > )
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChild(Rendere
> rUtils.jav
> > a:446)
> >        at
> > 
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.renderTabl
> eCell(Html
> > LayoutRenderer.java:259)
> >        at
> > 
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.renderClas
> sic(HtmlLa
> > youtRenderer.java:118)
> >        at
> > 
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.encodeEnd(
> HtmlLayout
> > Renderer.java:66)
> >        at
> > 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBas
> e.java:332
> > )
> >        at
> > javax.faces.webapp.UIComponentTag.encodeEnd(UIComponentTag.java:376)
> >        at
> > javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:280)
> >        at
> > 
> org.apache.myfaces.taglib.UIComponentBodyTagBase.doEndTag(UICo
> mponentBod
> > yTagBase.java:85)
> >        at
> > 
> org.apache.jsp.forceId_jsp._jspx_meth_x_panelLayout_0(forceId_
> jsp.java:2
> > 91)
> >        at
> > org.apache.jsp.forceId_jsp._jspx_meth_f_view_0(forceId_jsp.java:196)
> >        at 
> org.apache.jsp.forceId_jsp._jspService(forceId_jsp.java:151)
> >        at
> > org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
> >        at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> >        at
> > 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServlet
> Wrapper.ja
> > va:324)
> >        at
> > 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet
> .java:292)
> >        at
> > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
> >        at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:237)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.invoke(Applicat
> ionDispatc
> > her.java:704)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.processRequest(
> Applicatio
> > nDispatcher.java:474)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.doForward(Appli
> cationDisp
> > atcher.java:409)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.forward(Applica
> tionDispat
> > cher.java:312)
> >        at
> > 
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.
> dispatch(S
> > ervletExternalContextImpl.java:404)
> >        at
> > 
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderVi
> ew(JspView
> > HandlerImpl.java:244)
> >        at
> > 
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImp
> l.java:290
> > )
> >        at
> > javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:237)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.myfaces.component.html.util.ExtensionsFilter.doFilt
> er(Extensi
> > onsFilter.java:119)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:186)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> rapperValv
> > e.java:214)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardContextValve.invokeInternal(S
> tandardCon
> > textValve.java:198)
> >        at
> > 
> org.apache.catalina.core.StandardContextValve.invoke(StandardC
> ontextValv
> > e.java:152)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> Valve.java
> > :137)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReport
> Valve.java
> > :118)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:102)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEn
> gineValve.
> > java:109)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
> >        at
> > 
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.
> java:160)
> >        at
> > 
> org.apache.coyote.http11.Http11Processor.process(Http11Process
> or.java:79
> > 9)
> >        at
> > 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandle
> r.processC
> > onnection(Http11Protocol.java:705)
> >        at
> > 
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoi
> nt.java:57
> > 7)
> >        at
> > 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
> ThreadPool
> > .java:683)
> >        at java.lang.Thread.run(Thread.java:534)
> > 
> > 2005-01-13 10:07:57 StandardWrapperValve[Faces Servlet]:
> > Servlet.service() for servlet Faces Servlet threw exception
> > javax.faces.FacesException: Duplicate cliientId not allowed.  View 
> > already contains the id: forceTwo
> >        at 
> > 
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch
> > (S
> > ervletExternalContextImpl.java:410)
> >        at
> > 
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderVi
> ew(JspView
> > HandlerImpl.java:244)
> >        at
> > 
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImp
> l.java:290
> > )
> >        at
> > javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:237)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.myfaces.component.html.util.ExtensionsFilter.doFilt
> er(Extensi
> > onsFilter.java:119)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:186)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> rapperValv
> > e.java:214)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardContextValve.invokeInternal(S
> tandardCon
> > textValve.java:198)
> >        at
> > 
> org.apache.catalina.core.StandardContextValve.invoke(StandardC
> ontextValv
> > e.java:152)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> Valve.java
> > :137)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReport
> Valve.java
> > :118)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:102)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEn
> gineValve.
> > java:109)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
> >        at
> > 
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.
> java:160)
> >        at
> > 
> org.apache.coyote.http11.Http11Processor.process(Http11Process
> or.java:79
> > 9)
> >        at
> > 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandle
> r.processC
> > onnection(Http11Protocol.java:705)
> >        at
> > 
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoi
> nt.java:57
> > 7)
> >        at
> > 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
> ThreadPool
> > .java:683)
> >        at java.lang.Thread.run(Thread.java:534)
> > Caused by: org.apache.jasper.JasperException: Duplicate 
> cliientId not
> > allowed.  View already contains the id: forceTwo
> >        at
> > 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServlet
> Wrapper.ja
> > va:372)
> >        at
> > 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet
> .java:292)
> >        at
> > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
> >        at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:237)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.invoke(Applicat
> ionDispatc
> > her.java:704)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.processRequest(
> Applicatio
> > nDispatcher.java:474)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.doForward(Appli
> cationDisp
> > atcher.java:409)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.forward(Applica
> tionDispat
> > cher.java:312)
> >        at
> > 
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.
> dispatch(S
> > ervletExternalContextImpl.java:404)
> >        ... 30 more
> > 
> > > -----Original Message-----
> > > From: Sean Schofield [mailto:sean.schofield@gmail.com]
> > > Sent: Thursday, January 13, 2005 5:34 AM
> > > To: MyFaces Development
> > > Subject: Update to forceId
> > >
> > >
> > > I updated the forceId attribute for HtmlInputText so now it works 
> > > inside of <h:dataTable>, etc.  The JIRA entry contains 
> the new patch 
> > > (forceId.patch).
> > >
> > > If you have <h:inputText id=foo forceId="true"/> inside of a 
> > > <h:column> you will now get something like ...
> > >
> > > <input id=foo[0] .../>
> > > <input id=foo[1] .../>
> > > <input id=foo[2] .../>
> > > ...
> > >
> > > I haven't tried an example where I submit the values yet 
> but there 
> > > shouldn't be any problem because the same clientId will 
> be used on 
> > > the decode (although I will test it at some point.)
> > >
> > > I will also continue to test more complicated scenarios 
> with naming 
> > > containers (like tables within tables.)  Also, we should probably 
> > > update the forceId example on the web page to show one 
> with tables 
> > > as well.
> > >
> > > sean
> > >
> > 
> > 
> 
> 
> -- 
> -Heath Borders-Wing
> hborders@mail.win.org
> 


RE: Update to forceId

Posted by Matthias Wessendorf <ma...@matthias-wessendorf.de>.
I included new patch from Sean.

Now it works!
-in *simple* form sample
-in dataTable sample

-Matthias

> -----Original Message-----
> From: Heath Borders [mailto:heath.borders@gmail.com] 
> Sent: Thursday, January 13, 2005 2:56 PM
> To: MyFaces Development
> Subject: Re: Update to forceId
> 
> 
> This is exactly what I would expect would happen inside of a 
> datatable.
> 
> If everything works except for the datatable, I would 
> consider the feature working.
> 
> 
> On Thu, 13 Jan 2005 10:24:07 +0100, Matthias Wessendorf 
> <ma...@matthias-wessendorf.de> wrote:
> > Sean,
> > 
> > I included your patch to CVS.
> > Also I added a editable table to
> > forceId.jsp do demonstrate the rendered forceId
> > inside a table.
> > 
> > Ok, thanks that works (update of dataTable row)
> > 
> > But the forceId-feature is still experimental.
> > I run into error,
> > when I add message tag to forced <x:inputText/>
> > 
> > here is what I did:
> > <x:inputText id="forceTwo" value="#{forceIdBean.valueTwo}" 
> > forceId="true"/> <h:message id="forceTwoMessage" for="forceTwo" 
> > styleClass="error" />
> > 
> > and the error is in LOG file of Tomcat.
> > 
> > here:
> > 2005-01-13 10:07:57 ApplicationDispatcher[/myfaces-examples]
> > Servlet.service() for servlet jsp threw exception
> > java.lang.IllegalArgumentException: Duplicate cliientId not 
> allowed. 
> > View already contains the id: forceTwo
> >        at 
> > 
> org.apache.myfaces.component.html.util.HtmlComponentUtils.getClientId(
> > Ht
> > mlComponentUtils.java:109)
> >        at
> > 
> org.apache.myfaces.component.html.ext.HtmlInputText.getClientI
> d(HtmlInpu
> > tText.java:54)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlMessageRendererBase.rend
> erMessage(
> > HtmlMessageRendererBase.java:102)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlMessageRenderer.encodeEn
> d(HtmlMess
> > ageRenderer.java:53)
> >        at
> > 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBas
> e.java:332
> > )
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChild(Rendere
> rUtils.jav
> > a:446)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlGridRenderer.renderChild
> ren(HtmlGr
> > idRenderer.java:253)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlGridRenderer.encodeEnd(H
> tmlGridRen
> > derer.java:131)
> >        at
> > 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBas
> e.java:332
> > )
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChild(Rendere
> rUtils.jav
> > a:446)
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChildren(Rend
> ererUtils.
> > java:423)
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChild(Rendere
> rUtils.jav
> > a:444)
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChildren(Rend
> ererUtils.
> > java:423)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlGroupRenderer.encodeEnd(
> HtmlGroupR
> > enderer.java:73)
> >        at
> > 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBas
> e.java:332
> > )
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChild(Rendere
> rUtils.jav
> > a:446)
> >        at
> > 
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.renderTabl
> eCell(Html
> > LayoutRenderer.java:259)
> >        at
> > 
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.renderClas
> sic(HtmlLa
> > youtRenderer.java:118)
> >        at
> > 
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.encodeEnd(
> HtmlLayout
> > Renderer.java:66)
> >        at
> > 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBas
> e.java:332
> > )
> >        at
> > javax.faces.webapp.UIComponentTag.encodeEnd(UIComponentTag.java:376)
> >        at
> > javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:280)
> >        at
> > 
> org.apache.myfaces.taglib.UIComponentBodyTagBase.doEndTag(UICo
> mponentBod
> > yTagBase.java:85)
> >        at
> > 
> org.apache.jsp.forceId_jsp._jspx_meth_x_panelLayout_0(forceId_
> jsp.java:2
> > 91)
> >        at
> > org.apache.jsp.forceId_jsp._jspx_meth_f_view_0(forceId_jsp.java:196)
> >        at 
> org.apache.jsp.forceId_jsp._jspService(forceId_jsp.java:151)
> >        at
> > org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
> >        at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> >        at
> > 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServlet
> Wrapper.ja
> > va:324)
> >        at
> > 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet
> .java:292)
> >        at
> > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
> >        at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:237)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.invoke(Applicat
> ionDispatc
> > her.java:704)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.processRequest(
> Applicatio
> > nDispatcher.java:474)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.doForward(Appli
> cationDisp
> > atcher.java:409)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.forward(Applica
> tionDispat
> > cher.java:312)
> >        at
> > 
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.
> dispatch(S
> > ervletExternalContextImpl.java:404)
> >        at
> > 
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderVi
> ew(JspView
> > HandlerImpl.java:244)
> >        at
> > 
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImp
> l.java:290
> > )
> >        at
> > javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:237)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.myfaces.component.html.util.ExtensionsFilter.doFilt
> er(Extensi
> > onsFilter.java:119)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:186)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> rapperValv
> > e.java:214)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardContextValve.invokeInternal(S
> tandardCon
> > textValve.java:198)
> >        at
> > 
> org.apache.catalina.core.StandardContextValve.invoke(StandardC
> ontextValv
> > e.java:152)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> Valve.java
> > :137)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReport
> Valve.java
> > :118)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:102)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEn
> gineValve.
> > java:109)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
> >        at
> > 
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.
> java:160)
> >        at
> > 
> org.apache.coyote.http11.Http11Processor.process(Http11Process
> or.java:79
> > 9)
> >        at
> > 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandle
> r.processC
> > onnection(Http11Protocol.java:705)
> >        at
> > 
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoi
> nt.java:57
> > 7)
> >        at
> > 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
> ThreadPool
> > .java:683)
> >        at java.lang.Thread.run(Thread.java:534)
> > 
> > 2005-01-13 10:07:57 StandardContext[/myfaces-examples]Duplicate
> > cliientId not allowed.  View already contains the id: forceTwo
> > javax.faces.FacesException: Duplicate cliientId not allowed.  View 
> > already contains the id: forceTwo
> >        at 
> > 
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch
> > (S
> > ervletExternalContextImpl.java:410)
> >        at
> > 
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderVi
> ew(JspView
> > HandlerImpl.java:244)
> >        at
> > 
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImp
> l.java:290
> > )
> >        at
> > javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:237)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.myfaces.component.html.util.ExtensionsFilter.doFilt
> er(Extensi
> > onsFilter.java:119)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:186)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> rapperValv
> > e.java:214)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardContextValve.invokeInternal(S
> tandardCon
> > textValve.java:198)
> >        at
> > 
> org.apache.catalina.core.StandardContextValve.invoke(StandardC
> ontextValv
> > e.java:152)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> Valve.java
> > :137)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReport
> Valve.java
> > :118)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:102)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEn
> gineValve.
> > java:109)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
> >        at
> > 
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.
> java:160)
> >        at
> > 
> org.apache.coyote.http11.Http11Processor.process(Http11Process
> or.java:79
> > 9)
> >        at
> > 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandle
> r.processC
> > onnection(Http11Protocol.java:705)
> >        at
> > 
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoi
> nt.java:57
> > 7)
> >        at
> > 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
> ThreadPool
> > .java:683)
> >        at java.lang.Thread.run(Thread.java:534)
> > Caused by: org.apache.jasper.JasperException: Duplicate 
> cliientId not
> > allowed.  View already contains the id: forceTwo
> >        at
> > 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServlet
> Wrapper.ja
> > va:372)
> >        at
> > 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet
> .java:292)
> >        at
> > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
> >        at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:237)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.invoke(Applicat
> ionDispatc
> > her.java:704)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.processRequest(
> Applicatio
> > nDispatcher.java:474)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.doForward(Appli
> cationDisp
> > atcher.java:409)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.forward(Applica
> tionDispat
> > cher.java:312)
> >        at
> > 
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.
> dispatch(S
> > ervletExternalContextImpl.java:404)
> >        ... 30 more
> > 
> > 2005-01-13 10:07:57 StandardContext[/myfaces-examples]Root cause: 
> > Duplicate cliientId not allowed.  View already contains the id: 
> > forceTwo
> > org.apache.jasper.JasperException: Duplicate cliientId not allowed.
> > View already contains the id: forceTwo
> >        at
> > 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServlet
> Wrapper.ja
> > va:372)
> >        at
> > 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet
> .java:292)
> >        at
> > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
> >        at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:237)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.invoke(Applicat
> ionDispatc
> > her.java:704)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.processRequest(
> Applicatio
> > nDispatcher.java:474)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.doForward(Appli
> cationDisp
> > atcher.java:409)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.forward(Applica
> tionDispat
> > cher.java:312)
> >        at
> > 
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.
> dispatch(S
> > ervletExternalContextImpl.java:404)
> >        at
> > 
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderVi
> ew(JspView
> > HandlerImpl.java:244)
> >        at
> > 
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImp
> l.java:290
> > )
> >        at
> > javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:237)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.myfaces.component.html.util.ExtensionsFilter.doFilt
> er(Extensi
> > onsFilter.java:119)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:186)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> rapperValv
> > e.java:214)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardContextValve.invokeInternal(S
> tandardCon
> > textValve.java:198)
> >        at
> > 
> org.apache.catalina.core.StandardContextValve.invoke(StandardC
> ontextValv
> > e.java:152)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> Valve.java
> > :137)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReport
> Valve.java
> > :118)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:102)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEn
> gineValve.
> > java:109)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
> >        at
> > 
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.
> java:160)
> >        at
> > 
> org.apache.coyote.http11.Http11Processor.process(Http11Process
> or.java:79
> > 9)
> >        at
> > 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandle
> r.processC
> > onnection(Http11Protocol.java:705)
> >        at
> > 
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoi
> nt.java:57
> > 7)
> >        at
> > 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
> ThreadPool
> > .java:683)
> >        at java.lang.Thread.run(Thread.java:534)
> > ----- Root Cause -----
> > java.lang.IllegalArgumentException: Duplicate cliientId not allowed.
> > View already contains the id: forceTwo
> >        at
> > 
> org.apache.myfaces.component.html.util.HtmlComponentUtils.getC
> lientId(Ht
> > mlComponentUtils.java:109)
> >        at
> > 
> org.apache.myfaces.component.html.ext.HtmlInputText.getClientI
> d(HtmlInpu
> > tText.java:54)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlMessageRendererBase.rend
> erMessage(
> > HtmlMessageRendererBase.java:102)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlMessageRenderer.encodeEn
> d(HtmlMess
> > ageRenderer.java:53)
> >        at
> > 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBas
> e.java:332
> > )
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChild(Rendere
> rUtils.jav
> > a:446)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlGridRenderer.renderChild
> ren(HtmlGr
> > idRenderer.java:253)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlGridRenderer.encodeEnd(H
> tmlGridRen
> > derer.java:131)
> >        at
> > 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBas
> e.java:332
> > )
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChild(Rendere
> rUtils.jav
> > a:446)
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChildren(Rend
> ererUtils.
> > java:423)
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChild(Rendere
> rUtils.jav
> > a:444)
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChildren(Rend
> ererUtils.
> > java:423)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlGroupRenderer.encodeEnd(
> HtmlGroupR
> > enderer.java:73)
> >        at
> > 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBas
> e.java:332
> > )
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChild(Rendere
> rUtils.jav
> > a:446)
> >        at
> > 
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.renderTabl
> eCell(Html
> > LayoutRenderer.java:259)
> >        at
> > 
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.renderClas
> sic(HtmlLa
> > youtRenderer.java:118)
> >        at
> > 
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.encodeEnd(
> HtmlLayout
> > Renderer.java:66)
> >        at
> > 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBas
> e.java:332
> > )
> >        at
> > javax.faces.webapp.UIComponentTag.encodeEnd(UIComponentTag.java:376)
> >        at
> > javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:280)
> >        at
> > 
> org.apache.myfaces.taglib.UIComponentBodyTagBase.doEndTag(UICo
> mponentBod
> > yTagBase.java:85)
> >        at
> > 
> org.apache.jsp.forceId_jsp._jspx_meth_x_panelLayout_0(forceId_
> jsp.java:2
> > 91)
> >        at
> > org.apache.jsp.forceId_jsp._jspx_meth_f_view_0(forceId_jsp.java:196)
> >        at 
> org.apache.jsp.forceId_jsp._jspService(forceId_jsp.java:151)
> >        at
> > org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
> >        at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> >        at
> > 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServlet
> Wrapper.ja
> > va:324)
> >        at
> > 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet
> .java:292)
> >        at
> > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
> >        at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:237)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.invoke(Applicat
> ionDispatc
> > her.java:704)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.processRequest(
> Applicatio
> > nDispatcher.java:474)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.doForward(Appli
> cationDisp
> > atcher.java:409)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.forward(Applica
> tionDispat
> > cher.java:312)
> >        at
> > 
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.
> dispatch(S
> > ervletExternalContextImpl.java:404)
> >        at
> > 
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderVi
> ew(JspView
> > HandlerImpl.java:244)
> >        at
> > 
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImp
> l.java:290
> > )
> >        at
> > javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:237)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.myfaces.component.html.util.ExtensionsFilter.doFilt
> er(Extensi
> > onsFilter.java:119)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:186)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> rapperValv
> > e.java:214)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardContextValve.invokeInternal(S
> tandardCon
> > textValve.java:198)
> >        at
> > 
> org.apache.catalina.core.StandardContextValve.invoke(StandardC
> ontextValv
> > e.java:152)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> Valve.java
> > :137)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReport
> Valve.java
> > :118)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:102)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEn
> gineValve.
> > java:109)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
> >        at
> > 
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.
> java:160)
> >        at
> > 
> org.apache.coyote.http11.Http11Processor.process(Http11Process
> or.java:79
> > 9)
> >        at
> > 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandle
> r.processC
> > onnection(Http11Protocol.java:705)
> >        at
> > 
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoi
> nt.java:57
> > 7)
> >        at
> > 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
> ThreadPool
> > .java:683)
> >        at java.lang.Thread.run(Thread.java:534)
> > 
> > 2005-01-13 10:07:57 StandardContext[/myfaces-examples]Root cause of
> > ServletException: Duplicate cliientId not allowed.  View already 
> > contains the id: forceTwo
> > java.lang.IllegalArgumentException: Duplicate cliientId not 
> allowed. 
> > View already contains the id: forceTwo
> >        at 
> > 
> org.apache.myfaces.component.html.util.HtmlComponentUtils.getClientId(
> > Ht
> > mlComponentUtils.java:109)
> >        at
> > 
> org.apache.myfaces.component.html.ext.HtmlInputText.getClientI
> d(HtmlInpu
> > tText.java:54)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlMessageRendererBase.rend
> erMessage(
> > HtmlMessageRendererBase.java:102)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlMessageRenderer.encodeEn
> d(HtmlMess
> > ageRenderer.java:53)
> >        at
> > 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBas
> e.java:332
> > )
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChild(Rendere
> rUtils.jav
> > a:446)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlGridRenderer.renderChild
> ren(HtmlGr
> > idRenderer.java:253)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlGridRenderer.encodeEnd(H
> tmlGridRen
> > derer.java:131)
> >        at
> > 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBas
> e.java:332
> > )
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChild(Rendere
> rUtils.jav
> > a:446)
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChildren(Rend
> ererUtils.
> > java:423)
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChild(Rendere
> rUtils.jav
> > a:444)
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChildren(Rend
> ererUtils.
> > java:423)
> >        at
> > 
> org.apache.myfaces.renderkit.html.HtmlGroupRenderer.encodeEnd(
> HtmlGroupR
> > enderer.java:73)
> >        at
> > 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBas
> e.java:332
> > )
> >        at
> > 
> org.apache.myfaces.renderkit.RendererUtils.renderChild(Rendere
> rUtils.jav
> > a:446)
> >        at
> > 
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.renderTabl
> eCell(Html
> > LayoutRenderer.java:259)
> >        at
> > 
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.renderClas
> sic(HtmlLa
> > youtRenderer.java:118)
> >        at
> > 
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.encodeEnd(
> HtmlLayout
> > Renderer.java:66)
> >        at
> > 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBas
> e.java:332
> > )
> >        at
> > javax.faces.webapp.UIComponentTag.encodeEnd(UIComponentTag.java:376)
> >        at
> > javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:280)
> >        at
> > 
> org.apache.myfaces.taglib.UIComponentBodyTagBase.doEndTag(UICo
> mponentBod
> > yTagBase.java:85)
> >        at
> > 
> org.apache.jsp.forceId_jsp._jspx_meth_x_panelLayout_0(forceId_
> jsp.java:2
> > 91)
> >        at
> > org.apache.jsp.forceId_jsp._jspx_meth_f_view_0(forceId_jsp.java:196)
> >        at 
> org.apache.jsp.forceId_jsp._jspService(forceId_jsp.java:151)
> >        at
> > org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
> >        at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> >        at
> > 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServlet
> Wrapper.ja
> > va:324)
> >        at
> > 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet
> .java:292)
> >        at
> > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
> >        at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:237)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.invoke(Applicat
> ionDispatc
> > her.java:704)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.processRequest(
> Applicatio
> > nDispatcher.java:474)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.doForward(Appli
> cationDisp
> > atcher.java:409)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.forward(Applica
> tionDispat
> > cher.java:312)
> >        at
> > 
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.
> dispatch(S
> > ervletExternalContextImpl.java:404)
> >        at
> > 
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderVi
> ew(JspView
> > HandlerImpl.java:244)
> >        at
> > 
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImp
> l.java:290
> > )
> >        at
> > javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:237)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.myfaces.component.html.util.ExtensionsFilter.doFilt
> er(Extensi
> > onsFilter.java:119)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:186)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> rapperValv
> > e.java:214)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardContextValve.invokeInternal(S
> tandardCon
> > textValve.java:198)
> >        at
> > 
> org.apache.catalina.core.StandardContextValve.invoke(StandardC
> ontextValv
> > e.java:152)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> Valve.java
> > :137)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReport
> Valve.java
> > :118)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:102)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEn
> gineValve.
> > java:109)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
> >        at
> > 
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.
> java:160)
> >        at
> > 
> org.apache.coyote.http11.Http11Processor.process(Http11Process
> or.java:79
> > 9)
> >        at
> > 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandle
> r.processC
> > onnection(Http11Protocol.java:705)
> >        at
> > 
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoi
> nt.java:57
> > 7)
> >        at
> > 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
> ThreadPool
> > .java:683)
> >        at java.lang.Thread.run(Thread.java:534)
> > 
> > 2005-01-13 10:07:57 StandardWrapperValve[Faces Servlet]:
> > Servlet.service() for servlet Faces Servlet threw exception
> > javax.faces.FacesException: Duplicate cliientId not allowed.  View 
> > already contains the id: forceTwo
> >        at 
> > 
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch
> > (S
> > ervletExternalContextImpl.java:410)
> >        at
> > 
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderVi
> ew(JspView
> > HandlerImpl.java:244)
> >        at
> > 
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImp
> l.java:290
> > )
> >        at
> > javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:237)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.myfaces.component.html.util.ExtensionsFilter.doFilt
> er(Extensi
> > onsFilter.java:119)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:186)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> rapperValv
> > e.java:214)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardContextValve.invokeInternal(S
> tandardCon
> > textValve.java:198)
> >        at
> > 
> org.apache.catalina.core.StandardContextValve.invoke(StandardC
> ontextValv
> > e.java:152)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> Valve.java
> > :137)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReport
> Valve.java
> > :118)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:102)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEn
> gineValve.
> > java:109)
> >        at
> > 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveCo
> > ntext.java:104)
> >        at
> > 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:5
> > 20)
> >        at
> > 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
> >        at
> > 
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.
> java:160)
> >        at
> > 
> org.apache.coyote.http11.Http11Processor.process(Http11Process
> or.java:79
> > 9)
> >        at
> > 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandle
> r.processC
> > onnection(Http11Protocol.java:705)
> >        at
> > 
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoi
> nt.java:57
> > 7)
> >        at
> > 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
> ThreadPool
> > .java:683)
> >        at java.lang.Thread.run(Thread.java:534)
> > Caused by: org.apache.jasper.JasperException: Duplicate 
> cliientId not
> > allowed.  View already contains the id: forceTwo
> >        at
> > 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServlet
> Wrapper.ja
> > va:372)
> >        at
> > 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet
> .java:292)
> >        at
> > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
> >        at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Applica
> > tionFilterChain.java:237)
> >        at
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilt
> > erChain.java:157)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.invoke(Applicat
> ionDispatc
> > her.java:704)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.processRequest(
> Applicatio
> > nDispatcher.java:474)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.doForward(Appli
> cationDisp
> > atcher.java:409)
> >        at
> > 
> org.apache.catalina.core.ApplicationDispatcher.forward(Applica
> tionDispat
> > cher.java:312)
> >        at
> > 
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.
> dispatch(S
> > ervletExternalContextImpl.java:404)
> >        ... 30 more
> > 
> > > -----Original Message-----
> > > From: Sean Schofield [mailto:sean.schofield@gmail.com]
> > > Sent: Thursday, January 13, 2005 5:34 AM
> > > To: MyFaces Development
> > > Subject: Update to forceId
> > >
> > >
> > > I updated the forceId attribute for HtmlInputText so now it works 
> > > inside of <h:dataTable>, etc.  The JIRA entry contains 
> the new patch 
> > > (forceId.patch).
> > >
> > > If you have <h:inputText id=foo forceId="true"/> inside of a 
> > > <h:column> you will now get something like ...
> > >
> > > <input id=foo[0] .../>
> > > <input id=foo[1] .../>
> > > <input id=foo[2] .../>
> > > ...
> > >
> > > I haven't tried an example where I submit the values yet 
> but there 
> > > shouldn't be any problem because the same clientId will 
> be used on 
> > > the decode (although I will test it at some point.)
> > >
> > > I will also continue to test more complicated scenarios 
> with naming 
> > > containers (like tables within tables.)  Also, we should probably 
> > > update the forceId example on the web page to show one 
> with tables 
> > > as well.
> > >
> > > sean
> > >
> > 
> > 
> 
> 
> -- 
> -Heath Borders-Wing
> hborders@mail.win.org
> 


Re: Update to forceId

Posted by Heath Borders <he...@gmail.com>.
This is exactly what I would expect would happen inside of a datatable.

If everything works except for the datatable, I would consider the
feature working.


On Thu, 13 Jan 2005 10:24:07 +0100, Matthias Wessendorf
<ma...@matthias-wessendorf.de> wrote:
> Sean,
> 
> I included your patch to CVS.
> Also I added a editable table to
> forceId.jsp do demonstrate the rendered forceId
> inside a table.
> 
> Ok, thanks that works (update of dataTable row)
> 
> But the forceId-feature is still experimental.
> I run into error,
> when I add message tag to forced <x:inputText/>
> 
> here is what I did:
> <x:inputText id="forceTwo" value="#{forceIdBean.valueTwo}"
> forceId="true"/>
> <h:message id="forceTwoMessage" for="forceTwo" styleClass="error" />
> 
> and the error is in LOG file of Tomcat.
> 
> here:
> 2005-01-13 10:07:57 ApplicationDispatcher[/myfaces-examples]
> Servlet.service() for servlet jsp threw exception
> java.lang.IllegalArgumentException: Duplicate cliientId not allowed.
> View already contains the id: forceTwo
>        at
> org.apache.myfaces.component.html.util.HtmlComponentUtils.getClientId(Ht
> mlComponentUtils.java:109)
>        at
> org.apache.myfaces.component.html.ext.HtmlInputText.getClientId(HtmlInpu
> tText.java:54)
>        at
> org.apache.myfaces.renderkit.html.HtmlMessageRendererBase.renderMessage(
> HtmlMessageRendererBase.java:102)
>        at
> org.apache.myfaces.renderkit.html.HtmlMessageRenderer.encodeEnd(HtmlMess
> ageRenderer.java:53)
>        at
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:332
> )
>        at
> org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.jav
> a:446)
>        at
> org.apache.myfaces.renderkit.html.HtmlGridRenderer.renderChildren(HtmlGr
> idRenderer.java:253)
>        at
> org.apache.myfaces.renderkit.html.HtmlGridRenderer.encodeEnd(HtmlGridRen
> derer.java:131)
>        at
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:332
> )
>        at
> org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.jav
> a:446)
>        at
> org.apache.myfaces.renderkit.RendererUtils.renderChildren(RendererUtils.
> java:423)
>        at
> org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.jav
> a:444)
>        at
> org.apache.myfaces.renderkit.RendererUtils.renderChildren(RendererUtils.
> java:423)
>        at
> org.apache.myfaces.renderkit.html.HtmlGroupRenderer.encodeEnd(HtmlGroupR
> enderer.java:73)
>        at
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:332
> )
>        at
> org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.jav
> a:446)
>        at
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.renderTableCell(Html
> LayoutRenderer.java:259)
>        at
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.renderClassic(HtmlLa
> youtRenderer.java:118)
>        at
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.encodeEnd(HtmlLayout
> Renderer.java:66)
>        at
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:332
> )
>        at
> javax.faces.webapp.UIComponentTag.encodeEnd(UIComponentTag.java:376)
>        at
> javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:280)
>        at
> org.apache.myfaces.taglib.UIComponentBodyTagBase.doEndTag(UIComponentBod
> yTagBase.java:85)
>        at
> org.apache.jsp.forceId_jsp._jspx_meth_x_panelLayout_0(forceId_jsp.java:2
> 91)
>        at
> org.apache.jsp.forceId_jsp._jspx_meth_f_view_0(forceId_jsp.java:196)
>        at org.apache.jsp.forceId_jsp._jspService(forceId_jsp.java:151)
>        at
> org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
>        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>        at
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.ja
> va:324)
>        at
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
>        at
> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
>        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>        at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
> tionFilterChain.java:237)
>        at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
> erChain.java:157)
>        at
> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatc
> her.java:704)
>        at
> org.apache.catalina.core.ApplicationDispatcher.processRequest(Applicatio
> nDispatcher.java:474)
>        at
> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDisp
> atcher.java:409)
>        at
> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispat
> cher.java:312)
>        at
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(S
> ervletExternalContextImpl.java:404)
>        at
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspView
> HandlerImpl.java:244)
>        at
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:290
> )
>        at
> javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
>        at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
> tionFilterChain.java:237)
>        at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
> erChain.java:157)
>        at
> org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(Extensi
> onsFilter.java:119)
>        at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
> tionFilterChain.java:186)
>        at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
> erChain.java:157)
>        at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
> e.java:214)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:104)
>        at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
> 20)
>        at
> org.apache.catalina.core.StandardContextValve.invokeInternal(StandardCon
> textValve.java:198)
>        at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
> e.java:152)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:104)
>        at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
> 20)
>        at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
> :137)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:104)
>        at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
> :118)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:102)
>        at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
> 20)
>        at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
> java:109)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:104)
>        at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
> 20)
>        at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
>        at
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
>        at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:79
> 9)
>        at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processC
> onnection(Http11Protocol.java:705)
>        at
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:57
> 7)
>        at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool
> .java:683)
>        at java.lang.Thread.run(Thread.java:534)
> 
> 2005-01-13 10:07:57 StandardContext[/myfaces-examples]Duplicate
> cliientId not allowed.  View already contains the id: forceTwo
> javax.faces.FacesException: Duplicate cliientId not allowed.  View
> already contains the id: forceTwo
>        at
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(S
> ervletExternalContextImpl.java:410)
>        at
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspView
> HandlerImpl.java:244)
>        at
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:290
> )
>        at
> javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
>        at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
> tionFilterChain.java:237)
>        at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
> erChain.java:157)
>        at
> org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(Extensi
> onsFilter.java:119)
>        at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
> tionFilterChain.java:186)
>        at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
> erChain.java:157)
>        at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
> e.java:214)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:104)
>        at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
> 20)
>        at
> org.apache.catalina.core.StandardContextValve.invokeInternal(StandardCon
> textValve.java:198)
>        at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
> e.java:152)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:104)
>        at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
> 20)
>        at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
> :137)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:104)
>        at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
> :118)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:102)
>        at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
> 20)
>        at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
> java:109)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:104)
>        at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
> 20)
>        at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
>        at
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
>        at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:79
> 9)
>        at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processC
> onnection(Http11Protocol.java:705)
>        at
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:57
> 7)
>        at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool
> .java:683)
>        at java.lang.Thread.run(Thread.java:534)
> Caused by: org.apache.jasper.JasperException: Duplicate cliientId not
> allowed.  View already contains the id: forceTwo
>        at
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.ja
> va:372)
>        at
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
>        at
> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
>        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>        at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
> tionFilterChain.java:237)
>        at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
> erChain.java:157)
>        at
> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatc
> her.java:704)
>        at
> org.apache.catalina.core.ApplicationDispatcher.processRequest(Applicatio
> nDispatcher.java:474)
>        at
> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDisp
> atcher.java:409)
>        at
> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispat
> cher.java:312)
>        at
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(S
> ervletExternalContextImpl.java:404)
>        ... 30 more
> 
> 2005-01-13 10:07:57 StandardContext[/myfaces-examples]Root cause:
> Duplicate cliientId not allowed.  View already contains the id: forceTwo
> org.apache.jasper.JasperException: Duplicate cliientId not allowed.
> View already contains the id: forceTwo
>        at
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.ja
> va:372)
>        at
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
>        at
> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
>        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>        at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
> tionFilterChain.java:237)
>        at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
> erChain.java:157)
>        at
> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatc
> her.java:704)
>        at
> org.apache.catalina.core.ApplicationDispatcher.processRequest(Applicatio
> nDispatcher.java:474)
>        at
> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDisp
> atcher.java:409)
>        at
> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispat
> cher.java:312)
>        at
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(S
> ervletExternalContextImpl.java:404)
>        at
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspView
> HandlerImpl.java:244)
>        at
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:290
> )
>        at
> javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
>        at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
> tionFilterChain.java:237)
>        at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
> erChain.java:157)
>        at
> org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(Extensi
> onsFilter.java:119)
>        at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
> tionFilterChain.java:186)
>        at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
> erChain.java:157)
>        at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
> e.java:214)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:104)
>        at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
> 20)
>        at
> org.apache.catalina.core.StandardContextValve.invokeInternal(StandardCon
> textValve.java:198)
>        at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
> e.java:152)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:104)
>        at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
> 20)
>        at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
> :137)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:104)
>        at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
> :118)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:102)
>        at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
> 20)
>        at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
> java:109)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:104)
>        at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
> 20)
>        at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
>        at
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
>        at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:79
> 9)
>        at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processC
> onnection(Http11Protocol.java:705)
>        at
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:57
> 7)
>        at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool
> .java:683)
>        at java.lang.Thread.run(Thread.java:534)
> ----- Root Cause -----
> java.lang.IllegalArgumentException: Duplicate cliientId not allowed.
> View already contains the id: forceTwo
>        at
> org.apache.myfaces.component.html.util.HtmlComponentUtils.getClientId(Ht
> mlComponentUtils.java:109)
>        at
> org.apache.myfaces.component.html.ext.HtmlInputText.getClientId(HtmlInpu
> tText.java:54)
>        at
> org.apache.myfaces.renderkit.html.HtmlMessageRendererBase.renderMessage(
> HtmlMessageRendererBase.java:102)
>        at
> org.apache.myfaces.renderkit.html.HtmlMessageRenderer.encodeEnd(HtmlMess
> ageRenderer.java:53)
>        at
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:332
> )
>        at
> org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.jav
> a:446)
>        at
> org.apache.myfaces.renderkit.html.HtmlGridRenderer.renderChildren(HtmlGr
> idRenderer.java:253)
>        at
> org.apache.myfaces.renderkit.html.HtmlGridRenderer.encodeEnd(HtmlGridRen
> derer.java:131)
>        at
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:332
> )
>        at
> org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.jav
> a:446)
>        at
> org.apache.myfaces.renderkit.RendererUtils.renderChildren(RendererUtils.
> java:423)
>        at
> org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.jav
> a:444)
>        at
> org.apache.myfaces.renderkit.RendererUtils.renderChildren(RendererUtils.
> java:423)
>        at
> org.apache.myfaces.renderkit.html.HtmlGroupRenderer.encodeEnd(HtmlGroupR
> enderer.java:73)
>        at
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:332
> )
>        at
> org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.jav
> a:446)
>        at
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.renderTableCell(Html
> LayoutRenderer.java:259)
>        at
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.renderClassic(HtmlLa
> youtRenderer.java:118)
>        at
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.encodeEnd(HtmlLayout
> Renderer.java:66)
>        at
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:332
> )
>        at
> javax.faces.webapp.UIComponentTag.encodeEnd(UIComponentTag.java:376)
>        at
> javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:280)
>        at
> org.apache.myfaces.taglib.UIComponentBodyTagBase.doEndTag(UIComponentBod
> yTagBase.java:85)
>        at
> org.apache.jsp.forceId_jsp._jspx_meth_x_panelLayout_0(forceId_jsp.java:2
> 91)
>        at
> org.apache.jsp.forceId_jsp._jspx_meth_f_view_0(forceId_jsp.java:196)
>        at org.apache.jsp.forceId_jsp._jspService(forceId_jsp.java:151)
>        at
> org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
>        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>        at
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.ja
> va:324)
>        at
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
>        at
> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
>        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>        at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
> tionFilterChain.java:237)
>        at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
> erChain.java:157)
>        at
> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatc
> her.java:704)
>        at
> org.apache.catalina.core.ApplicationDispatcher.processRequest(Applicatio
> nDispatcher.java:474)
>        at
> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDisp
> atcher.java:409)
>        at
> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispat
> cher.java:312)
>        at
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(S
> ervletExternalContextImpl.java:404)
>        at
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspView
> HandlerImpl.java:244)
>        at
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:290
> )
>        at
> javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
>        at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
> tionFilterChain.java:237)
>        at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
> erChain.java:157)
>        at
> org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(Extensi
> onsFilter.java:119)
>        at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
> tionFilterChain.java:186)
>        at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
> erChain.java:157)
>        at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
> e.java:214)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:104)
>        at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
> 20)
>        at
> org.apache.catalina.core.StandardContextValve.invokeInternal(StandardCon
> textValve.java:198)
>        at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
> e.java:152)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:104)
>        at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
> 20)
>        at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
> :137)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:104)
>        at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
> :118)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:102)
>        at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
> 20)
>        at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
> java:109)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:104)
>        at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
> 20)
>        at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
>        at
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
>        at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:79
> 9)
>        at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processC
> onnection(Http11Protocol.java:705)
>        at
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:57
> 7)
>        at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool
> .java:683)
>        at java.lang.Thread.run(Thread.java:534)
> 
> 2005-01-13 10:07:57 StandardContext[/myfaces-examples]Root cause of
> ServletException: Duplicate cliientId not allowed.  View already
> contains the id: forceTwo
> java.lang.IllegalArgumentException: Duplicate cliientId not allowed.
> View already contains the id: forceTwo
>        at
> org.apache.myfaces.component.html.util.HtmlComponentUtils.getClientId(Ht
> mlComponentUtils.java:109)
>        at
> org.apache.myfaces.component.html.ext.HtmlInputText.getClientId(HtmlInpu
> tText.java:54)
>        at
> org.apache.myfaces.renderkit.html.HtmlMessageRendererBase.renderMessage(
> HtmlMessageRendererBase.java:102)
>        at
> org.apache.myfaces.renderkit.html.HtmlMessageRenderer.encodeEnd(HtmlMess
> ageRenderer.java:53)
>        at
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:332
> )
>        at
> org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.jav
> a:446)
>        at
> org.apache.myfaces.renderkit.html.HtmlGridRenderer.renderChildren(HtmlGr
> idRenderer.java:253)
>        at
> org.apache.myfaces.renderkit.html.HtmlGridRenderer.encodeEnd(HtmlGridRen
> derer.java:131)
>        at
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:332
> )
>        at
> org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.jav
> a:446)
>        at
> org.apache.myfaces.renderkit.RendererUtils.renderChildren(RendererUtils.
> java:423)
>        at
> org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.jav
> a:444)
>        at
> org.apache.myfaces.renderkit.RendererUtils.renderChildren(RendererUtils.
> java:423)
>        at
> org.apache.myfaces.renderkit.html.HtmlGroupRenderer.encodeEnd(HtmlGroupR
> enderer.java:73)
>        at
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:332
> )
>        at
> org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.jav
> a:446)
>        at
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.renderTableCell(Html
> LayoutRenderer.java:259)
>        at
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.renderClassic(HtmlLa
> youtRenderer.java:118)
>        at
> org.apache.myfaces.custom.layout.HtmlLayoutRenderer.encodeEnd(HtmlLayout
> Renderer.java:66)
>        at
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:332
> )
>        at
> javax.faces.webapp.UIComponentTag.encodeEnd(UIComponentTag.java:376)
>        at
> javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:280)
>        at
> org.apache.myfaces.taglib.UIComponentBodyTagBase.doEndTag(UIComponentBod
> yTagBase.java:85)
>        at
> org.apache.jsp.forceId_jsp._jspx_meth_x_panelLayout_0(forceId_jsp.java:2
> 91)
>        at
> org.apache.jsp.forceId_jsp._jspx_meth_f_view_0(forceId_jsp.java:196)
>        at org.apache.jsp.forceId_jsp._jspService(forceId_jsp.java:151)
>        at
> org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
>        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>        at
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.ja
> va:324)
>        at
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
>        at
> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
>        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>        at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
> tionFilterChain.java:237)
>        at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
> erChain.java:157)
>        at
> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatc
> her.java:704)
>        at
> org.apache.catalina.core.ApplicationDispatcher.processRequest(Applicatio
> nDispatcher.java:474)
>        at
> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDisp
> atcher.java:409)
>        at
> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispat
> cher.java:312)
>        at
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(S
> ervletExternalContextImpl.java:404)
>        at
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspView
> HandlerImpl.java:244)
>        at
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:290
> )
>        at
> javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
>        at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
> tionFilterChain.java:237)
>        at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
> erChain.java:157)
>        at
> org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(Extensi
> onsFilter.java:119)
>        at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
> tionFilterChain.java:186)
>        at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
> erChain.java:157)
>        at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
> e.java:214)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:104)
>        at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
> 20)
>        at
> org.apache.catalina.core.StandardContextValve.invokeInternal(StandardCon
> textValve.java:198)
>        at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
> e.java:152)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:104)
>        at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
> 20)
>        at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
> :137)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:104)
>        at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
> :118)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:102)
>        at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
> 20)
>        at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
> java:109)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:104)
>        at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
> 20)
>        at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
>        at
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
>        at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:79
> 9)
>        at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processC
> onnection(Http11Protocol.java:705)
>        at
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:57
> 7)
>        at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool
> .java:683)
>        at java.lang.Thread.run(Thread.java:534)
> 
> 2005-01-13 10:07:57 StandardWrapperValve[Faces Servlet]:
> Servlet.service() for servlet Faces Servlet threw exception
> javax.faces.FacesException: Duplicate cliientId not allowed.  View
> already contains the id: forceTwo
>        at
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(S
> ervletExternalContextImpl.java:410)
>        at
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspView
> HandlerImpl.java:244)
>        at
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:290
> )
>        at
> javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
>        at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
> tionFilterChain.java:237)
>        at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
> erChain.java:157)
>        at
> org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(Extensi
> onsFilter.java:119)
>        at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
> tionFilterChain.java:186)
>        at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
> erChain.java:157)
>        at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
> e.java:214)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:104)
>        at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
> 20)
>        at
> org.apache.catalina.core.StandardContextValve.invokeInternal(StandardCon
> textValve.java:198)
>        at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
> e.java:152)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:104)
>        at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
> 20)
>        at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
> :137)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:104)
>        at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
> :118)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:102)
>        at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
> 20)
>        at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
> java:109)
>        at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
> ntext.java:104)
>        at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
> 20)
>        at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
>        at
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
>        at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:79
> 9)
>        at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processC
> onnection(Http11Protocol.java:705)
>        at
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:57
> 7)
>        at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool
> .java:683)
>        at java.lang.Thread.run(Thread.java:534)
> Caused by: org.apache.jasper.JasperException: Duplicate cliientId not
> allowed.  View already contains the id: forceTwo
>        at
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.ja
> va:372)
>        at
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
>        at
> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
>        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>        at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
> tionFilterChain.java:237)
>        at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
> erChain.java:157)
>        at
> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatc
> her.java:704)
>        at
> org.apache.catalina.core.ApplicationDispatcher.processRequest(Applicatio
> nDispatcher.java:474)
>        at
> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDisp
> atcher.java:409)
>        at
> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispat
> cher.java:312)
>        at
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(S
> ervletExternalContextImpl.java:404)
>        ... 30 more
> 
> > -----Original Message-----
> > From: Sean Schofield [mailto:sean.schofield@gmail.com]
> > Sent: Thursday, January 13, 2005 5:34 AM
> > To: MyFaces Development
> > Subject: Update to forceId
> >
> >
> > I updated the forceId attribute for HtmlInputText so now it
> > works inside of <h:dataTable>, etc.  The JIRA entry contains
> > the new patch (forceId.patch).
> >
> > If you have <h:inputText id=foo forceId="true"/> inside of a
> > <h:column> you will now get something like ...
> >
> > <input id=foo[0] .../>
> > <input id=foo[1] .../>
> > <input id=foo[2] .../>
> > ...
> >
> > I haven't tried an example where I submit the values yet but
> > there shouldn't be any problem because the same clientId will
> > be used on the decode (although I will test it at some point.)
> >
> > I will also continue to test more complicated scenarios with
> > naming containers (like tables within tables.)  Also, we
> > should probably update the forceId example on the web page to
> > show one with tables as well.
> >
> > sean
> >
> 
> 


-- 
-Heath Borders-Wing
hborders@mail.win.org

Re: Update to forceId

Posted by Sean Schofield <se...@gmail.com>.
> But the forceId-feature is still experimental.

Definitely.

> I run into error,
> when I add message tag to forced <x:inputText/>
> 
> here is what I did:
> <x:inputText id="forceTwo" value="#{forceIdBean.valueTwo}"
> forceId="true"/>
> <h:message id="forceTwoMessage" for="forceTwo" styleClass="error" />

Since I'm still new to faces I will need to familiarize myself with
what you are trying to do.  This is turning about to be a good way to
dive in and learn stuff!

sean

RE: Update to forceId

Posted by Matthias Wessendorf <ma...@matthias-wessendorf.de>.
Sean,

I included your patch to CVS.
Also I added a editable table to
forceId.jsp do demonstrate the rendered forceId
inside a table.

Ok, thanks that works (update of dataTable row)

But the forceId-feature is still experimental.
I run into error,
when I add message tag to forced <x:inputText/>

here is what I did:
<x:inputText id="forceTwo" value="#{forceIdBean.valueTwo}"
forceId="true"/>
<h:message id="forceTwoMessage" for="forceTwo" styleClass="error" />

and the error is in LOG file of Tomcat.

here:
2005-01-13 10:07:57 ApplicationDispatcher[/myfaces-examples]
Servlet.service() for servlet jsp threw exception
java.lang.IllegalArgumentException: Duplicate cliientId not allowed.
View already contains the id: forceTwo
	at
org.apache.myfaces.component.html.util.HtmlComponentUtils.getClientId(Ht
mlComponentUtils.java:109)
	at
org.apache.myfaces.component.html.ext.HtmlInputText.getClientId(HtmlInpu
tText.java:54)
	at
org.apache.myfaces.renderkit.html.HtmlMessageRendererBase.renderMessage(
HtmlMessageRendererBase.java:102)
	at
org.apache.myfaces.renderkit.html.HtmlMessageRenderer.encodeEnd(HtmlMess
ageRenderer.java:53)
	at
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:332
)
	at
org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.jav
a:446)
	at
org.apache.myfaces.renderkit.html.HtmlGridRenderer.renderChildren(HtmlGr
idRenderer.java:253)
	at
org.apache.myfaces.renderkit.html.HtmlGridRenderer.encodeEnd(HtmlGridRen
derer.java:131)
	at
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:332
)
	at
org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.jav
a:446)
	at
org.apache.myfaces.renderkit.RendererUtils.renderChildren(RendererUtils.
java:423)
	at
org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.jav
a:444)
	at
org.apache.myfaces.renderkit.RendererUtils.renderChildren(RendererUtils.
java:423)
	at
org.apache.myfaces.renderkit.html.HtmlGroupRenderer.encodeEnd(HtmlGroupR
enderer.java:73)
	at
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:332
)
	at
org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.jav
a:446)
	at
org.apache.myfaces.custom.layout.HtmlLayoutRenderer.renderTableCell(Html
LayoutRenderer.java:259)
	at
org.apache.myfaces.custom.layout.HtmlLayoutRenderer.renderClassic(HtmlLa
youtRenderer.java:118)
	at
org.apache.myfaces.custom.layout.HtmlLayoutRenderer.encodeEnd(HtmlLayout
Renderer.java:66)
	at
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:332
)
	at
javax.faces.webapp.UIComponentTag.encodeEnd(UIComponentTag.java:376)
	at
javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:280)
	at
org.apache.myfaces.taglib.UIComponentBodyTagBase.doEndTag(UIComponentBod
yTagBase.java:85)
	at
org.apache.jsp.forceId_jsp._jspx_meth_x_panelLayout_0(forceId_jsp.java:2
91)
	at
org.apache.jsp.forceId_jsp._jspx_meth_f_view_0(forceId_jsp.java:196)
	at org.apache.jsp.forceId_jsp._jspService(forceId_jsp.java:151)
	at
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.ja
va:324)
	at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
	at
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:237)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:157)
	at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatc
her.java:704)
	at
org.apache.catalina.core.ApplicationDispatcher.processRequest(Applicatio
nDispatcher.java:474)
	at
org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDisp
atcher.java:409)
	at
org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispat
cher.java:312)
	at
org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(S
ervletExternalContextImpl.java:404)
	at
org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspView
HandlerImpl.java:244)
	at
org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:290
)
	at
javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:237)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:157)
	at
org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(Extensi
onsFilter.java:119)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:186)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:157)
	at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:214)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)
	at
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardCon
textValve.java:198)
	at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:152)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)
	at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:137)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)
	at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
:118)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:102)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)
	at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
java:109)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
	at
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
	at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:79
9)
	at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processC
onnection(Http11Protocol.java:705)
	at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:57
7)
	at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool
.java:683)
	at java.lang.Thread.run(Thread.java:534)

2005-01-13 10:07:57 StandardContext[/myfaces-examples]Duplicate
cliientId not allowed.  View already contains the id: forceTwo
javax.faces.FacesException: Duplicate cliientId not allowed.  View
already contains the id: forceTwo
	at
org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(S
ervletExternalContextImpl.java:410)
	at
org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspView
HandlerImpl.java:244)
	at
org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:290
)
	at
javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:237)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:157)
	at
org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(Extensi
onsFilter.java:119)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:186)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:157)
	at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:214)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)
	at
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardCon
textValve.java:198)
	at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:152)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)
	at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:137)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)
	at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
:118)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:102)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)
	at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
java:109)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
	at
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
	at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:79
9)
	at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processC
onnection(Http11Protocol.java:705)
	at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:57
7)
	at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool
.java:683)
	at java.lang.Thread.run(Thread.java:534)
Caused by: org.apache.jasper.JasperException: Duplicate cliientId not
allowed.  View already contains the id: forceTwo
	at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.ja
va:372)
	at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
	at
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:237)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:157)
	at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatc
her.java:704)
	at
org.apache.catalina.core.ApplicationDispatcher.processRequest(Applicatio
nDispatcher.java:474)
	at
org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDisp
atcher.java:409)
	at
org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispat
cher.java:312)
	at
org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(S
ervletExternalContextImpl.java:404)
	... 30 more

2005-01-13 10:07:57 StandardContext[/myfaces-examples]Root cause:
Duplicate cliientId not allowed.  View already contains the id: forceTwo
org.apache.jasper.JasperException: Duplicate cliientId not allowed.
View already contains the id: forceTwo
	at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.ja
va:372)
	at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
	at
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:237)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:157)
	at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatc
her.java:704)
	at
org.apache.catalina.core.ApplicationDispatcher.processRequest(Applicatio
nDispatcher.java:474)
	at
org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDisp
atcher.java:409)
	at
org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispat
cher.java:312)
	at
org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(S
ervletExternalContextImpl.java:404)
	at
org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspView
HandlerImpl.java:244)
	at
org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:290
)
	at
javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:237)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:157)
	at
org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(Extensi
onsFilter.java:119)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:186)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:157)
	at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:214)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)
	at
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardCon
textValve.java:198)
	at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:152)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)
	at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:137)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)
	at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
:118)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:102)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)
	at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
java:109)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
	at
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
	at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:79
9)
	at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processC
onnection(Http11Protocol.java:705)
	at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:57
7)
	at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool
.java:683)
	at java.lang.Thread.run(Thread.java:534)
----- Root Cause -----
java.lang.IllegalArgumentException: Duplicate cliientId not allowed.
View already contains the id: forceTwo
	at
org.apache.myfaces.component.html.util.HtmlComponentUtils.getClientId(Ht
mlComponentUtils.java:109)
	at
org.apache.myfaces.component.html.ext.HtmlInputText.getClientId(HtmlInpu
tText.java:54)
	at
org.apache.myfaces.renderkit.html.HtmlMessageRendererBase.renderMessage(
HtmlMessageRendererBase.java:102)
	at
org.apache.myfaces.renderkit.html.HtmlMessageRenderer.encodeEnd(HtmlMess
ageRenderer.java:53)
	at
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:332
)
	at
org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.jav
a:446)
	at
org.apache.myfaces.renderkit.html.HtmlGridRenderer.renderChildren(HtmlGr
idRenderer.java:253)
	at
org.apache.myfaces.renderkit.html.HtmlGridRenderer.encodeEnd(HtmlGridRen
derer.java:131)
	at
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:332
)
	at
org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.jav
a:446)
	at
org.apache.myfaces.renderkit.RendererUtils.renderChildren(RendererUtils.
java:423)
	at
org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.jav
a:444)
	at
org.apache.myfaces.renderkit.RendererUtils.renderChildren(RendererUtils.
java:423)
	at
org.apache.myfaces.renderkit.html.HtmlGroupRenderer.encodeEnd(HtmlGroupR
enderer.java:73)
	at
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:332
)
	at
org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.jav
a:446)
	at
org.apache.myfaces.custom.layout.HtmlLayoutRenderer.renderTableCell(Html
LayoutRenderer.java:259)
	at
org.apache.myfaces.custom.layout.HtmlLayoutRenderer.renderClassic(HtmlLa
youtRenderer.java:118)
	at
org.apache.myfaces.custom.layout.HtmlLayoutRenderer.encodeEnd(HtmlLayout
Renderer.java:66)
	at
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:332
)
	at
javax.faces.webapp.UIComponentTag.encodeEnd(UIComponentTag.java:376)
	at
javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:280)
	at
org.apache.myfaces.taglib.UIComponentBodyTagBase.doEndTag(UIComponentBod
yTagBase.java:85)
	at
org.apache.jsp.forceId_jsp._jspx_meth_x_panelLayout_0(forceId_jsp.java:2
91)
	at
org.apache.jsp.forceId_jsp._jspx_meth_f_view_0(forceId_jsp.java:196)
	at org.apache.jsp.forceId_jsp._jspService(forceId_jsp.java:151)
	at
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.ja
va:324)
	at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
	at
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:237)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:157)
	at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatc
her.java:704)
	at
org.apache.catalina.core.ApplicationDispatcher.processRequest(Applicatio
nDispatcher.java:474)
	at
org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDisp
atcher.java:409)
	at
org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispat
cher.java:312)
	at
org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(S
ervletExternalContextImpl.java:404)
	at
org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspView
HandlerImpl.java:244)
	at
org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:290
)
	at
javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:237)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:157)
	at
org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(Extensi
onsFilter.java:119)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:186)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:157)
	at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:214)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)
	at
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardCon
textValve.java:198)
	at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:152)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)
	at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:137)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)
	at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
:118)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:102)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)
	at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
java:109)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
	at
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
	at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:79
9)
	at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processC
onnection(Http11Protocol.java:705)
	at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:57
7)
	at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool
.java:683)
	at java.lang.Thread.run(Thread.java:534)

2005-01-13 10:07:57 StandardContext[/myfaces-examples]Root cause of
ServletException: Duplicate cliientId not allowed.  View already
contains the id: forceTwo
java.lang.IllegalArgumentException: Duplicate cliientId not allowed.
View already contains the id: forceTwo
	at
org.apache.myfaces.component.html.util.HtmlComponentUtils.getClientId(Ht
mlComponentUtils.java:109)
	at
org.apache.myfaces.component.html.ext.HtmlInputText.getClientId(HtmlInpu
tText.java:54)
	at
org.apache.myfaces.renderkit.html.HtmlMessageRendererBase.renderMessage(
HtmlMessageRendererBase.java:102)
	at
org.apache.myfaces.renderkit.html.HtmlMessageRenderer.encodeEnd(HtmlMess
ageRenderer.java:53)
	at
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:332
)
	at
org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.jav
a:446)
	at
org.apache.myfaces.renderkit.html.HtmlGridRenderer.renderChildren(HtmlGr
idRenderer.java:253)
	at
org.apache.myfaces.renderkit.html.HtmlGridRenderer.encodeEnd(HtmlGridRen
derer.java:131)
	at
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:332
)
	at
org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.jav
a:446)
	at
org.apache.myfaces.renderkit.RendererUtils.renderChildren(RendererUtils.
java:423)
	at
org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.jav
a:444)
	at
org.apache.myfaces.renderkit.RendererUtils.renderChildren(RendererUtils.
java:423)
	at
org.apache.myfaces.renderkit.html.HtmlGroupRenderer.encodeEnd(HtmlGroupR
enderer.java:73)
	at
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:332
)
	at
org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.jav
a:446)
	at
org.apache.myfaces.custom.layout.HtmlLayoutRenderer.renderTableCell(Html
LayoutRenderer.java:259)
	at
org.apache.myfaces.custom.layout.HtmlLayoutRenderer.renderClassic(HtmlLa
youtRenderer.java:118)
	at
org.apache.myfaces.custom.layout.HtmlLayoutRenderer.encodeEnd(HtmlLayout
Renderer.java:66)
	at
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:332
)
	at
javax.faces.webapp.UIComponentTag.encodeEnd(UIComponentTag.java:376)
	at
javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:280)
	at
org.apache.myfaces.taglib.UIComponentBodyTagBase.doEndTag(UIComponentBod
yTagBase.java:85)
	at
org.apache.jsp.forceId_jsp._jspx_meth_x_panelLayout_0(forceId_jsp.java:2
91)
	at
org.apache.jsp.forceId_jsp._jspx_meth_f_view_0(forceId_jsp.java:196)
	at org.apache.jsp.forceId_jsp._jspService(forceId_jsp.java:151)
	at
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.ja
va:324)
	at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
	at
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:237)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:157)
	at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatc
her.java:704)
	at
org.apache.catalina.core.ApplicationDispatcher.processRequest(Applicatio
nDispatcher.java:474)
	at
org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDisp
atcher.java:409)
	at
org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispat
cher.java:312)
	at
org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(S
ervletExternalContextImpl.java:404)
	at
org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspView
HandlerImpl.java:244)
	at
org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:290
)
	at
javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:237)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:157)
	at
org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(Extensi
onsFilter.java:119)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:186)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:157)
	at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:214)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)
	at
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardCon
textValve.java:198)
	at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:152)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)
	at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:137)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)
	at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
:118)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:102)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)
	at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
java:109)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
	at
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
	at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:79
9)
	at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processC
onnection(Http11Protocol.java:705)
	at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:57
7)
	at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool
.java:683)
	at java.lang.Thread.run(Thread.java:534)

2005-01-13 10:07:57 StandardWrapperValve[Faces Servlet]:
Servlet.service() for servlet Faces Servlet threw exception
javax.faces.FacesException: Duplicate cliientId not allowed.  View
already contains the id: forceTwo
	at
org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(S
ervletExternalContextImpl.java:410)
	at
org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspView
HandlerImpl.java:244)
	at
org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:290
)
	at
javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:237)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:157)
	at
org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(Extensi
onsFilter.java:119)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:186)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:157)
	at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:214)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)
	at
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardCon
textValve.java:198)
	at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:152)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)
	at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:137)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)
	at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
:118)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:102)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)
	at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
java:109)
	at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:104)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
20)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
	at
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
	at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:79
9)
	at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processC
onnection(Http11Protocol.java:705)
	at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:57
7)
	at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool
.java:683)
	at java.lang.Thread.run(Thread.java:534)
Caused by: org.apache.jasper.JasperException: Duplicate cliientId not
allowed.  View already contains the id: forceTwo
	at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.ja
va:372)
	at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
	at
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:237)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:157)
	at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatc
her.java:704)
	at
org.apache.catalina.core.ApplicationDispatcher.processRequest(Applicatio
nDispatcher.java:474)
	at
org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDisp
atcher.java:409)
	at
org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispat
cher.java:312)
	at
org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(S
ervletExternalContextImpl.java:404)
	... 30 more

> -----Original Message-----
> From: Sean Schofield [mailto:sean.schofield@gmail.com] 
> Sent: Thursday, January 13, 2005 5:34 AM
> To: MyFaces Development
> Subject: Update to forceId
> 
> 
> I updated the forceId attribute for HtmlInputText so now it 
> works inside of <h:dataTable>, etc.  The JIRA entry contains 
> the new patch (forceId.patch).
> 
> If you have <h:inputText id=foo forceId="true"/> inside of a 
> <h:column> you will now get something like ...
> 
> <input id=foo[0] .../>
> <input id=foo[1] .../>
> <input id=foo[2] .../>
> ...
> 
> I haven't tried an example where I submit the values yet but 
> there shouldn't be any problem because the same clientId will 
> be used on the decode (although I will test it at some point.)
> 
> I will also continue to test more complicated scenarios with 
> naming containers (like tables within tables.)  Also, we 
> should probably update the forceId example on the web page to 
> show one with tables as well.
> 
> sean
>