Gary VanMatre wrote:
Gary VanMatre wrote:
From: Richard Wallace <[EMAIL PROTECTED]> I'm trying to use the token component on a form to ensure that a user doesn't submit the form more than once. Whenever I try and submit the form a second time, I get a NPE. I'm using it in Clay, if that makes any difference. The code is simply:
<form>
   <span jsfid="token" id="token" />
   <span jsfid="message" for="token" class="validation-msg" />
   ...
</form>


I'm using the 1.0.3-SNAPSHOT jars from the maven-snapshot-repository, last updated on April 19th. Any ideas why I'm getting the below NPE?
It's working with myfaces 1.1.1. The exception points at the findComponent
but I would have guessed that we are not populating one of the message component attributes.
Try adding the showSummary attribute to the message component.
          <span jsfid="message" for="token" showSummary="true"  />
Gary

Sorry it's taken a while to get back to this, but it was suddenly decided to change the whole flow of the app I'm working on. I tried adding the showSummary="true" attribute and am getting the same exception. Any other ideas?

It looks as if this HtmlMessageRenderer class is in the tomahawk archive. It seems to be trying to find matching components for labels. Are you sure you don't have a HtmlOutputLabel that has a null "for" attribute?
If you create a ticket and attach an example I'll try working throught it.

Gary

Yup, that was it exactly. The page in question is actually a "confirm your input before continuing" type of page, so it doesn't have any actual input components. But, it still uses a bunch of lines like

<label>Name</label>
<span class="t">[EMAIL PROTECTED]</span>

The only reason there is a label there is for getting the correct styling (or so the web designer tells me). Clay turns these into outputLabel components without a for attribute. So I changed the t:messages component to just the plain old messages and it started working perfectly. I don't particularly need it to be a t:messages component, so that's not a big deal. I am noticing a bunch of warnings about there being no for attribute in the logs. Should I add an id to the <span> and set the for attribute to that, even though it's not an input component? Or is that going to cause other problems you think?

Thanks for the help,
Rich
Thanks,
Rich
Thanks, Rich java.lang.NullPointerException: expr at javax.faces.component.UIComponentBase.findComponent(UIComponentBase.java:210) at
org.apache.myfaces.renderkit.html.ext.HtmlMessageRenderer.createOutputLabelMap(H
tmlMessageRenderer.java:200) at org.apache.myfaces.renderkit.html.ext.HtmlMessageRenderer.createOutputLabelMap(H tmlMessageRenderer.java:214) at
org.apache.myfaces.renderkit.html.ext.HtmlMessageRenderer.createOutputLabelMap(H
tmlMessageRenderer.java:214) at org.apache.myfaces.renderkit.html.ext.HtmlMessageRenderer.createOutputLabelMap(H tmlMessageRenderer.java:214) at org.apache.myfaces.renderkit.html.ext.HtmlMessageRenderer.createOutputLabelMap(H tmlMessageRenderer.java:214) at org.apache.myfaces.renderkit.html.ext.HtmlMessageRenderer.createOutputLabelMap(H tmlMessageRenderer.java:214) at org.apache.myfaces.renderkit.html.ext.HtmlMessageRenderer.createOutputLabelMap(H tmlMessageRenderer.java:214) at org.apache.myfaces.renderkit.html.ext.HtmlMessageRenderer.createOutputLabelMap(H tmlMessageRenderer.java:214) at org.apache.myfaces.renderkit.html.ext.HtmlMessageRenderer.getOutputLabelMap(Html MessageRenderer.java:184) at org.apache.myfaces.renderkit.html.ext.HtmlMessageRenderer.findInputLabel(HtmlMes sageRenderer.java:128) at org.apache.myfaces.renderkit.html.ext.HtmlMessagesRenderer.getSummary(HtmlMessag esRenderer.java:54) at org.apache.myfaces.renderkit.html.HtmlMessageRendererBase.renderSingleFacesMessa ge(HtmlMessageRendererBase.java:101) at org.apache.myfaces.renderkit.html.HtmlMessagesRendererBase.renderList(HtmlMessag esRendererBase.java:94) at org.apache.myfaces.renderkit.html.HtmlMessagesRendererBase.renderMessages(HtmlMe ssagesRendererBase.java:75) at org.apache.myfaces.renderkit.html.ext.HtmlMessagesRenderer.encodeEnd(HtmlMessage sRenderer.java:42) at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:331) at org.apache.shale.clay.component.Clay.recursiveRenderChildren(Clay.java:379)

--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to