Good, it is working.

But, how can I stop displaying the tapestry error messages. 

I didn't include t:errors tag in my form, but the errors (NOT the bubbles)
are keep on displaying. Unless I clear out the errors from the tracker, I
couldn't stop the errors to display.

Thank you,
Anteneh




Adam Zimowski wrote:
> 
> Okay,
> 
> I created new component "errorMsg" which can be used anywhere on the
> page to display individual error. Enhancements welcome.
> 
> This component takes two arguments, a literal string denoting field
> for which error should be rendered, and form to which field is bound.
> The form must be accessible via getter from the class page.
> 
> import org.apache.tapestry.Field;
> import org.apache.tapestry.MarkupWriter;
> import org.apache.tapestry.ValidationTracker;
> import org.apache.tapestry.annotations.BeginRender;
> import org.apache.tapestry.annotations.Parameter;
> import org.apache.tapestry.corelib.components.Form;
> 
> public class ErrorMsg {
>       
>       @Parameter
>       private String _fieldName;
>       
>       @Parameter
>       private Form _form;
>       
> 
>       public void setFieldName(String aFieldName) {
>               _fieldName = aFieldName;
>       }
> 
>       @BeginRender
>     void renderMessage(MarkupWriter writer)
>     {
>               Field f = new Field() {
>                       public String getElementName() { return _fieldName; }
>                       public String getLabel() { return null; }
>                       public boolean isDisabled() { return false; }
>                       public String getClientId() { return _fieldName; }
>               };
>               
>               ValidationTracker tracker = _form.getDefaultTracker();
>               String err = tracker.getError(f);
> 
>               writer.write(err);
>     }
> 
>       public void setForm(Form aForm) {
>               _form = aForm;
>       }
> }
> 
> To display individual error messages simply place <t:errorMsg ../>
> anywhere on the page. It will render the error if there is one for a
> field.
> 
> <t:layout xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd";>
> 
> <strong><t:errorMsg fieldName="literal:foo" form="form"/></strong>
>       
> <t:form t:id="myform">
> User Name:
>       <input type="text" t:type="textfield" t:id="bar" t:value="bar"
> t:validate="required,minlength=3,maxlength=8"/><br/>
> Foo:
>       <input type="text" t:type="textfield" t:id="foo" t:value="foo"
> t:validate="required"/>
>       <p/>
>       <input type="submit" t:type="submit" t:id="submitButton" 
> value="Submit"/>
>       <p/>
>       <t:errorMsg fieldName="literal:bar" form="form"/><br/>
>         <!-- you can even display same error twice :) -->
>         <t:errorMsg fieldName="literal:bar" form="form"/>
> </t:form>
> 
> </t:layout>
> 
> 
> Page Class:
> 
> public class Start {
> 
>       @Persist
>       private String _foo;
> 
>       @Persist
>       private String _bar;
>       
>       @Component(id="myform")
>       private Form _form;
> 
>       public Form getForm() {
>               return _form;
>       }
> 
>       public String getBar() {
>               return _bar;
>       }
> 
>       public String getFoo() {
>               return _foo;
>       }
> }
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Tapestry-5----Overriding-the-form-error-messages-tp15183424p15292922.html
Sent from the Tapestry - User mailing list archive at Nabble.com.


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

Reply via email to