Re: Tapestry 5.2.5: Tapestry Exception "MarkupWriter.element() and not followed up with MarkupWriter.end()"

2013-09-09 Thread rukmini n
Hi all,

I just removed this label tag from LoginComponent.tml, which was causing an
exception, just to see if the page comes up.
  ${msg:common.formElement.EnterValidEmail}


Now I get blank page, and no exceptions in the log. Can some one tell me
whats going on here?.. Please help..


Thanks,
Rukmini



On Thu, Sep 5, 2013 at 11:43 AM, rukmini n  wrote:

> Hi All,
>
> Please help. I'm stuck with same exception
>
> Caused by: org.apache.tapestry5.ioc.internal.util.TapestryException:
> Component Signin:logincomponent_0.fieldvalidationerrormsg has rendered
> unbalanced elements; either it has started an element with
> MarkupWriter.element() and not followed up with MarkupWriter.end(), or it
> has invoked MarkupWriter.end() without first invoking
> MarkupWriter.element(). [at
> classpath:com/stubhub/ui/components/sh/common/LoginComponent.tml, line 44]
> at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$PostRenderCleanupPhase.render(ComponentPageElementImpl.java:475)
>
> Thanks,
> Rukmini
>
>
> On Sat, Aug 31, 2013 at 2:57 PM, rukmini n  wrote:
>
>> Hi Thiago,
>> I did follow what, you have suggested, but dint help. I'm still getting
>> the same exception. Any other suggestions, will be really appreciated.
>>
>> Thanks,
>>  Rukmini
>>
>>
>> On Fri, Aug 30, 2013 at 4:54 PM, Thiago H de Paula Figueiredo <
>> thiag...@gmail.com> wrote:
>>
>>> On Fri, 30 Aug 2013 19:49:38 -0300, rukmini n 
>>> wrote:
>>>
>>>  msgEle.removeChildren();
 msgEle.pop();

>>>
>>> I had already suggested you to replace the code above, both lines, to
>>> msgEle.remove(), but you left the call to pop(), which is quite probably
>>> the source of your problem. Please pay more attention to the suggestions
>>> the list gives you. ;)
>>>
>>>
>>> --
>>> Thiago H. de Paula Figueiredo
>>>
>>> --**--**
>>> -
>>> To unsubscribe, e-mail: 
>>> users-unsubscribe@tapestry.**apache.org
>>> For additional commands, e-mail: users-h...@tapestry.apache.org
>>>
>>>
>>
>


Re: Tapestry 5.2.5: Tapestry Exception "MarkupWriter.element() and not followed up with MarkupWriter.end()"

2013-09-05 Thread rukmini n
Hi All,

Please help. I'm stuck with same exception

Caused by: org.apache.tapestry5.ioc.internal.util.TapestryException:
Component Signin:logincomponent_0.fieldvalidationerrormsg has rendered
unbalanced elements; either it has started an element with
MarkupWriter.element() and not followed up with MarkupWriter.end(), or it
has invoked MarkupWriter.end() without first invoking
MarkupWriter.element(). [at
classpath:com/stubhub/ui/components/sh/common/LoginComponent.tml, line 44]
at
org.apache.tapestry5.internal.structure.ComponentPageElementImpl$PostRenderCleanupPhase.render(ComponentPageElementImpl.java:475)

Thanks,
Rukmini


On Sat, Aug 31, 2013 at 2:57 PM, rukmini n  wrote:

> Hi Thiago,
> I did follow what, you have suggested, but dint help. I'm still getting
> the same exception. Any other suggestions, will be really appreciated.
>
> Thanks,
> Rukmini
>
>
> On Fri, Aug 30, 2013 at 4:54 PM, Thiago H de Paula Figueiredo <
> thiag...@gmail.com> wrote:
>
>> On Fri, 30 Aug 2013 19:49:38 -0300, rukmini n 
>> wrote:
>>
>>  msgEle.removeChildren();
>>> msgEle.pop();
>>>
>>
>> I had already suggested you to replace the code above, both lines, to
>> msgEle.remove(), but you left the call to pop(), which is quite probably
>> the source of your problem. Please pay more attention to the suggestions
>> the list gives you. ;)
>>
>>
>> --
>> Thiago H. de Paula Figueiredo
>>
>> --**--**-
>> To unsubscribe, e-mail: 
>> users-unsubscribe@tapestry.**apache.org
>> For additional commands, e-mail: users-h...@tapestry.apache.org
>>
>>
>


Re: Tapestry 5.2.5: Tapestry Exception "MarkupWriter.element() and not followed up with MarkupWriter.end()"

2013-08-31 Thread rukmini n
Hi Thiago,
I did follow what, you have suggested, but dint help. I'm still getting the
same exception. Any other suggestions, will be really appreciated.

Thanks,
Rukmini


On Fri, Aug 30, 2013 at 4:54 PM, Thiago H de Paula Figueiredo <
thiag...@gmail.com> wrote:

> On Fri, 30 Aug 2013 19:49:38 -0300, rukmini n 
> wrote:
>
>  msgEle.removeChildren();
>> msgEle.pop();
>>
>
> I had already suggested you to replace the code above, both lines, to
> msgEle.remove(), but you left the call to pop(), which is quite probably
> the source of your problem. Please pay more attention to the suggestions
> the list gives you. ;)
>
>
> --
> Thiago H. de Paula Figueiredo
>
> --**--**-
> To unsubscribe, e-mail: 
> users-unsubscribe@tapestry.**apache.org
> For additional commands, e-mail: users-h...@tapestry.apache.org
>
>


Re: Tapestry 5.2.5: Tapestry Exception "MarkupWriter.element() and not followed up with MarkupWriter.end()"

2013-08-30 Thread Thiago H de Paula Figueiredo

On Fri, 30 Aug 2013 19:49:38 -0300, rukmini n  wrote:


msgEle.removeChildren();
msgEle.pop();


I had already suggested you to replace the code above, both lines, to  
msgEle.remove(), but you left the call to pop(), which is quite probably  
the source of your problem. Please pay more attention to the suggestions  
the list gives you. ;)


--
Thiago H. de Paula Figueiredo

-
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org



Re: Tapestry 5.2.5: Tapestry Exception "MarkupWriter.element() and not followed up with MarkupWriter.end()"

2013-08-30 Thread rukmini n
Thiago thanks for reponding. Here is the java code


  public class FieldValidationErrorMsg {

@Parameter(required = true, defaultPrefix="literal")
private String fieldId;

@Parameter
private Form form;

@Parameter
private Boolean leaveMessage;

@Parameter (defaultPrefix="literal")
private String errorId;

@Parameter (defaultPrefix="literal")
private String labelId;

@Environmental(false)
private ValidationTracker tracker;

public void setFieldId(String fieldId) {
this.fieldId = fieldId;
}
public String getFieldId() {
return this.fieldId;
}
public String getLabelId() {
return this.labelId;
}
public void setForm(Form form) {
this.form = form;
}

public void afterRenderBody(MarkupWriter writer) {
final String _fieldId = this.fieldId;
Field f = new Field() {
public String getLabel() { return null; }
public boolean isDisabled() { return false; }
public String getClientId() { return _fieldId; }
public String getControlName() { return _fieldId; }
public boolean isRequired() { return false; }
};

// grab the FieldValidationErrorMsg component
Element msgEle = writer.getElement();

ValidationTracker tracker;
if ( this.form != null ) {
tracker = this.form.getDefaultTracker();
} else {
tracker = this.tracker;
}

if ( (this.errorId != null && tracker.getError(f) != null &&
tracker.getError(f).contains(this.errorId))
 || (this.errorId == null && tracker.inError(f)) ) {
// we need to display the error message, so do nothing, leave
it as is
} else {
// remove the error message, unless there's an instruction to
leave it in place
if (this.leaveMessage==null || !this.leaveMessage) {
msgEle.removeChildren();
msgEle.pop();
} else {
// we're leaving it in place, but will hide it on page load
by adding a class "hidden"
String curClassValue = msgEle.getAttribute("class");
String[] classValues = {"class","hidden "+curClassValue};
msgEle.forceAttributes(classValues);
}
}
}

}

and FieldValidationErrorMsg tml is


http://tapestry.apache.org/schema/tapestry_5_0_0.xsd";>







>From whers its being called is Login.tml


${msg:common.formElement.Email}

${msg:common.formElement.EnterValidEmail}



Thanks,
Rukmini


On Fri, Aug 30, 2013 at 2:28 PM, Thiago H de Paula Figueiredo <
thiag...@gmail.com> wrote:

> On Fri, 30 Aug 2013 18:05:33 -0300, rukmini n 
> wrote:
>
>  Hi All,
>>
>
> Hi!
>
>
>  Any one knows, what might be issue here. I'm still stuck. Please help..
>>
>
> The error itself happens at com.test.ui.components.sh.**common.**
> FieldValidationErrorMsg.**afterRenderBody, so we need its source to help
> you.
>
>
> --
> Thiago H. de Paula Figueiredo
>
> --**--**-
> To unsubscribe, e-mail: 
> users-unsubscribe@tapestry.**apache.org
> For additional commands, e-mail: users-h...@tapestry.apache.org
>
>


Re: Tapestry 5.2.5: Tapestry Exception "MarkupWriter.element() and not followed up with MarkupWriter.end()"

2013-08-30 Thread Thiago H de Paula Figueiredo

On Fri, 30 Aug 2013 18:05:33 -0300, rukmini n  wrote:


Hi All,


Hi!


Any one knows, what might be issue here. I'm still stuck. Please help..


The error itself happens at  
com.test.ui.components.sh.common.FieldValidationErrorMsg.afterRenderBody,  
so we need its source to help you.


--
Thiago H. de Paula Figueiredo

-
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org



Re: Tapestry 5.2.5: Tapestry Exception "MarkupWriter.element() and not followed up with MarkupWriter.end()"

2013-08-30 Thread rukmini n
Hi All,

Any one knows, what might be issue here. I'm still stuck. Please help..


On Tue, Aug 13, 2013 at 2:08 PM, Lenny Primak wrote:

> Yup. Things change. Bugs get exposed etc.  that's just the way it is
> unfortunately.
>
>
>
> On Aug 13, 2013, at 5:02 PM, rukmini n  wrote:
>
> > OK.. But this was working fine, earlier.. We upgraded tapestry from
> 5.0.15
> > to 5.2.5. Since then we are seeing this issue.
> >
> >
> > Thanks,
> > Rukmini
> >
> > On Tue, Aug 13, 2013 at 12:48 PM, Lenny Primak  >wrote:
> >
> >> I would suggest you crack open the debugger, and debug the code that
> >> throws NPE.
> >> Even if it's inside Tapestry, it'll shine the light on what's causing it
> >> in your code.
> >> You will learn the mistake immediately, and learn something new in the
> >> process.
> >>
> >> On Aug 13, 2013, at 3:45 PM, rukmini n wrote:
> >>
> >>> Hi Thiago..
> >>>
> >>> I tried, what you suggested.. But I got the exception. Please help..
> >>>
> >>>
> >>> Caused by: org.apache.tapestry5.ioc.internal.util.TapestryException [at
> >>> classpath:com/test/ui/components/sh/common/LoginComponent.tml, line 44]
> >>>   at
> >>
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AbstractPhase.invoke(ComponentPageElementImpl.java:194)
> >>>   at
> >>
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AfterRenderBodyPhase.render(ComponentPageElementImpl.java:371)
> >>>   at
> >>
> org.apache.tapestry5.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:72)
> >>>   ... 110 more
> >>> Caused by: java.lang.NullPointerException
> >>>   at org.apache.tapestry5.dom.Node.moveBefore(Node.java:106)
> >>>   at org.apache.tapestry5.dom.Element.pop(Element.java:657)
> >>>   at
> >>
> com.test.ui.components.sh.common.FieldValidationErrorMsg.afterRenderBody(FieldValidationErrorMsg.java:104)
> >>>   at
> >>
> com.test.ui.components.sh.common.FieldValidationErrorMsg$MethodAccess_afterRenderBody_1407932bda2.invoke(FieldValidationErrorMsg$MethodAccess_afterRenderBody_1407932bda2.java)
> >>>   at
> >>
> org.apache.tapestry5.internal.transform.RenderPhaseMethodWorker$Invoker.invoke(RenderPhaseMethodWorker.java:117)
> >>>   at
> >>
> org.apache.tapestry5.internal.transform.RenderPhaseMethodWorker$RenderPhaseMethodAdvice.advise(RenderPhaseMethodWorker.java:86)
> >>>   at
> >>
> org.apache.tapestry5.internal.services.AbstractComponentMethodInvocation.proceed(AbstractComponentMethodInvocation.java:86)
> >>>   at
> >>
> com.test.ui.components.sh.common.FieldValidationErrorMsg.afterRenderBody(FieldValidationErrorMsg.java)
> >>>   at
> >>
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AfterRenderBodyPhase.invokeComponent(ComponentPageElementImpl.java:364)
> >>>   at
> >>
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AbstractPhase.invoke(ComponentPageElementImpl.java:176)
> >>>   ... 112 more
> >>>
> >>>
> >>> Thanks,
> >>> Rukmini
> >>>
> >>> On Tue, Aug 13, 2013 at 12:18 PM, Thiago H de Paula Figueiredo <
> >>> thiag...@gmail.com> wrote:
> >>>
>  On Tue, 13 Aug 2013 15:04:54 -0300, rukmini n 
>  wrote:
> 
>  Hi Thiago,
> 
>  Hi!
> 
>  I think the problem is here:
> 
> msgEle.removeChildren();
> >   msgEle.pop();
> 
>  Have you tried just using msgEle.remove(), as you seem to want to
> remove
>  the element completely?
> 
> 
>  --
>  Thiago H. de Paula Figueiredo
> >>
> --**--**-
>  To unsubscribe, e-mail: users-unsubscribe@tapestry.**apache.org<
> >> users-unsubscr...@tapestry.apache.org>
>  For additional commands, e-mail: users-h...@tapestry.apache.org
> >>
> >>
> >> -
> >> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> >> For additional commands, e-mail: users-h...@tapestry.apache.org
> >>
> >>
>
> -
> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> For additional commands, e-mail: users-h...@tapestry.apache.org
>
>


Re: Tapestry 5.2.5: Tapestry Exception "MarkupWriter.element() and not followed up with MarkupWriter.end()"

2013-08-13 Thread Lenny Primak
Yup. Things change. Bugs get exposed etc.  that's just the way it is 
unfortunately. 



On Aug 13, 2013, at 5:02 PM, rukmini n  wrote:

> OK.. But this was working fine, earlier.. We upgraded tapestry from 5.0.15
> to 5.2.5. Since then we are seeing this issue.
> 
> 
> Thanks,
> Rukmini
> 
> On Tue, Aug 13, 2013 at 12:48 PM, Lenny Primak wrote:
> 
>> I would suggest you crack open the debugger, and debug the code that
>> throws NPE.
>> Even if it's inside Tapestry, it'll shine the light on what's causing it
>> in your code.
>> You will learn the mistake immediately, and learn something new in the
>> process.
>> 
>> On Aug 13, 2013, at 3:45 PM, rukmini n wrote:
>> 
>>> Hi Thiago..
>>> 
>>> I tried, what you suggested.. But I got the exception. Please help..
>>> 
>>> 
>>> Caused by: org.apache.tapestry5.ioc.internal.util.TapestryException [at
>>> classpath:com/test/ui/components/sh/common/LoginComponent.tml, line 44]
>>>   at
>> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AbstractPhase.invoke(ComponentPageElementImpl.java:194)
>>>   at
>> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AfterRenderBodyPhase.render(ComponentPageElementImpl.java:371)
>>>   at
>> org.apache.tapestry5.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:72)
>>>   ... 110 more
>>> Caused by: java.lang.NullPointerException
>>>   at org.apache.tapestry5.dom.Node.moveBefore(Node.java:106)
>>>   at org.apache.tapestry5.dom.Element.pop(Element.java:657)
>>>   at
>> com.test.ui.components.sh.common.FieldValidationErrorMsg.afterRenderBody(FieldValidationErrorMsg.java:104)
>>>   at
>> com.test.ui.components.sh.common.FieldValidationErrorMsg$MethodAccess_afterRenderBody_1407932bda2.invoke(FieldValidationErrorMsg$MethodAccess_afterRenderBody_1407932bda2.java)
>>>   at
>> org.apache.tapestry5.internal.transform.RenderPhaseMethodWorker$Invoker.invoke(RenderPhaseMethodWorker.java:117)
>>>   at
>> org.apache.tapestry5.internal.transform.RenderPhaseMethodWorker$RenderPhaseMethodAdvice.advise(RenderPhaseMethodWorker.java:86)
>>>   at
>> org.apache.tapestry5.internal.services.AbstractComponentMethodInvocation.proceed(AbstractComponentMethodInvocation.java:86)
>>>   at
>> com.test.ui.components.sh.common.FieldValidationErrorMsg.afterRenderBody(FieldValidationErrorMsg.java)
>>>   at
>> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AfterRenderBodyPhase.invokeComponent(ComponentPageElementImpl.java:364)
>>>   at
>> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AbstractPhase.invoke(ComponentPageElementImpl.java:176)
>>>   ... 112 more
>>> 
>>> 
>>> Thanks,
>>> Rukmini
>>> 
>>> On Tue, Aug 13, 2013 at 12:18 PM, Thiago H de Paula Figueiredo <
>>> thiag...@gmail.com> wrote:
>>> 
 On Tue, 13 Aug 2013 15:04:54 -0300, rukmini n 
 wrote:
 
 Hi Thiago,
 
 Hi!
 
 I think the problem is here:
 
msgEle.removeChildren();
>   msgEle.pop();
 
 Have you tried just using msgEle.remove(), as you seem to want to remove
 the element completely?
 
 
 --
 Thiago H. de Paula Figueiredo
>> --**--**-
 To unsubscribe, e-mail: users-unsubscribe@tapestry.**apache.org<
>> users-unsubscr...@tapestry.apache.org>
 For additional commands, e-mail: users-h...@tapestry.apache.org
>> 
>> 
>> -
>> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
>> For additional commands, e-mail: users-h...@tapestry.apache.org
>> 
>> 

-
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org



Re: Tapestry 5.2.5: Tapestry Exception "MarkupWriter.element() and not followed up with MarkupWriter.end()"

2013-08-13 Thread rukmini n
OK.. But this was working fine, earlier.. We upgraded tapestry from 5.0.15
to 5.2.5. Since then we are seeing this issue.


Thanks,
Rukmini

On Tue, Aug 13, 2013 at 12:48 PM, Lenny Primak wrote:

> I would suggest you crack open the debugger, and debug the code that
> throws NPE.
> Even if it's inside Tapestry, it'll shine the light on what's causing it
> in your code.
> You will learn the mistake immediately, and learn something new in the
> process.
>
> On Aug 13, 2013, at 3:45 PM, rukmini n wrote:
>
> > Hi Thiago..
> >
> > I tried, what you suggested.. But I got the exception. Please help..
> >
> >
> > Caused by: org.apache.tapestry5.ioc.internal.util.TapestryException [at
> > classpath:com/test/ui/components/sh/common/LoginComponent.tml, line 44]
> >at
> >
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AbstractPhase.invoke(ComponentPageElementImpl.java:194)
> >at
> >
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AfterRenderBodyPhase.render(ComponentPageElementImpl.java:371)
> >at
> >
> org.apache.tapestry5.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:72)
> >... 110 more
> > Caused by: java.lang.NullPointerException
> >at org.apache.tapestry5.dom.Node.moveBefore(Node.java:106)
> >at org.apache.tapestry5.dom.Element.pop(Element.java:657)
> >at
> >
> com.test.ui.components.sh.common.FieldValidationErrorMsg.afterRenderBody(FieldValidationErrorMsg.java:104)
> >at
> >
> com.test.ui.components.sh.common.FieldValidationErrorMsg$MethodAccess_afterRenderBody_1407932bda2.invoke(FieldValidationErrorMsg$MethodAccess_afterRenderBody_1407932bda2.java)
> >at
> >
> org.apache.tapestry5.internal.transform.RenderPhaseMethodWorker$Invoker.invoke(RenderPhaseMethodWorker.java:117)
> >at
> >
> org.apache.tapestry5.internal.transform.RenderPhaseMethodWorker$RenderPhaseMethodAdvice.advise(RenderPhaseMethodWorker.java:86)
> >at
> >
> org.apache.tapestry5.internal.services.AbstractComponentMethodInvocation.proceed(AbstractComponentMethodInvocation.java:86)
> >at
> >
> com.test.ui.components.sh.common.FieldValidationErrorMsg.afterRenderBody(FieldValidationErrorMsg.java)
> >at
> >
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AfterRenderBodyPhase.invokeComponent(ComponentPageElementImpl.java:364)
> >at
> >
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AbstractPhase.invoke(ComponentPageElementImpl.java:176)
> >... 112 more
> >
> >
> > Thanks,
> > Rukmini
> >
> > On Tue, Aug 13, 2013 at 12:18 PM, Thiago H de Paula Figueiredo <
> > thiag...@gmail.com> wrote:
> >
> >> On Tue, 13 Aug 2013 15:04:54 -0300, rukmini n 
> >> wrote:
> >>
> >> Hi Thiago,
> >>>
> >>
> >> Hi!
> >>
> >> I think the problem is here:
> >>
> >> msgEle.removeChildren();
> >>>msgEle.pop();
> >>>
> >>
> >> Have you tried just using msgEle.remove(), as you seem to want to remove
> >> the element completely?
> >>
> >>
> >> --
> >> Thiago H. de Paula Figueiredo
> >>
> >>
> --**--**-
> >> To unsubscribe, e-mail: users-unsubscribe@tapestry.**apache.org<
> users-unsubscr...@tapestry.apache.org>
> >> For additional commands, e-mail: users-h...@tapestry.apache.org
> >>
> >>
>
>
> -
> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> For additional commands, e-mail: users-h...@tapestry.apache.org
>
>


Re: Tapestry 5.2.5: Tapestry Exception "MarkupWriter.element() and not followed up with MarkupWriter.end()"

2013-08-13 Thread Lenny Primak
I would suggest you crack open the debugger, and debug the code that throws NPE.
Even if it's inside Tapestry, it'll shine the light on what's causing it in 
your code.
You will learn the mistake immediately, and learn something new in the process.

On Aug 13, 2013, at 3:45 PM, rukmini n wrote:

> Hi Thiago..
> 
> I tried, what you suggested.. But I got the exception. Please help..
> 
> 
> Caused by: org.apache.tapestry5.ioc.internal.util.TapestryException [at
> classpath:com/test/ui/components/sh/common/LoginComponent.tml, line 44]
>at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AbstractPhase.invoke(ComponentPageElementImpl.java:194)
>at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AfterRenderBodyPhase.render(ComponentPageElementImpl.java:371)
>at
> org.apache.tapestry5.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:72)
>... 110 more
> Caused by: java.lang.NullPointerException
>at org.apache.tapestry5.dom.Node.moveBefore(Node.java:106)
>at org.apache.tapestry5.dom.Element.pop(Element.java:657)
>at
> com.test.ui.components.sh.common.FieldValidationErrorMsg.afterRenderBody(FieldValidationErrorMsg.java:104)
>at
> com.test.ui.components.sh.common.FieldValidationErrorMsg$MethodAccess_afterRenderBody_1407932bda2.invoke(FieldValidationErrorMsg$MethodAccess_afterRenderBody_1407932bda2.java)
>at
> org.apache.tapestry5.internal.transform.RenderPhaseMethodWorker$Invoker.invoke(RenderPhaseMethodWorker.java:117)
>at
> org.apache.tapestry5.internal.transform.RenderPhaseMethodWorker$RenderPhaseMethodAdvice.advise(RenderPhaseMethodWorker.java:86)
>at
> org.apache.tapestry5.internal.services.AbstractComponentMethodInvocation.proceed(AbstractComponentMethodInvocation.java:86)
>at
> com.test.ui.components.sh.common.FieldValidationErrorMsg.afterRenderBody(FieldValidationErrorMsg.java)
>at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AfterRenderBodyPhase.invokeComponent(ComponentPageElementImpl.java:364)
>at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AbstractPhase.invoke(ComponentPageElementImpl.java:176)
>... 112 more
> 
> 
> Thanks,
> Rukmini
> 
> On Tue, Aug 13, 2013 at 12:18 PM, Thiago H de Paula Figueiredo <
> thiag...@gmail.com> wrote:
> 
>> On Tue, 13 Aug 2013 15:04:54 -0300, rukmini n 
>> wrote:
>> 
>> Hi Thiago,
>>> 
>> 
>> Hi!
>> 
>> I think the problem is here:
>> 
>> msgEle.removeChildren();
>>>msgEle.pop();
>>> 
>> 
>> Have you tried just using msgEle.remove(), as you seem to want to remove
>> the element completely?
>> 
>> 
>> --
>> Thiago H. de Paula Figueiredo
>> 
>> --**--**-
>> To unsubscribe, e-mail: 
>> users-unsubscribe@tapestry.**apache.org
>> For additional commands, e-mail: users-h...@tapestry.apache.org
>> 
>> 


-
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org



Re: Tapestry 5.2.5: Tapestry Exception "MarkupWriter.element() and not followed up with MarkupWriter.end()"

2013-08-13 Thread rukmini n
Hi Thiago..

 I tried, what you suggested.. But I got the exception. Please help..


Caused by: org.apache.tapestry5.ioc.internal.util.TapestryException [at
classpath:com/test/ui/components/sh/common/LoginComponent.tml, line 44]
at
org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AbstractPhase.invoke(ComponentPageElementImpl.java:194)
at
org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AfterRenderBodyPhase.render(ComponentPageElementImpl.java:371)
at
org.apache.tapestry5.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:72)
... 110 more
Caused by: java.lang.NullPointerException
at org.apache.tapestry5.dom.Node.moveBefore(Node.java:106)
at org.apache.tapestry5.dom.Element.pop(Element.java:657)
at
com.test.ui.components.sh.common.FieldValidationErrorMsg.afterRenderBody(FieldValidationErrorMsg.java:104)
at
com.test.ui.components.sh.common.FieldValidationErrorMsg$MethodAccess_afterRenderBody_1407932bda2.invoke(FieldValidationErrorMsg$MethodAccess_afterRenderBody_1407932bda2.java)
at
org.apache.tapestry5.internal.transform.RenderPhaseMethodWorker$Invoker.invoke(RenderPhaseMethodWorker.java:117)
at
org.apache.tapestry5.internal.transform.RenderPhaseMethodWorker$RenderPhaseMethodAdvice.advise(RenderPhaseMethodWorker.java:86)
at
org.apache.tapestry5.internal.services.AbstractComponentMethodInvocation.proceed(AbstractComponentMethodInvocation.java:86)
at
com.test.ui.components.sh.common.FieldValidationErrorMsg.afterRenderBody(FieldValidationErrorMsg.java)
at
org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AfterRenderBodyPhase.invokeComponent(ComponentPageElementImpl.java:364)
at
org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AbstractPhase.invoke(ComponentPageElementImpl.java:176)
... 112 more


Thanks,
Rukmini

On Tue, Aug 13, 2013 at 12:18 PM, Thiago H de Paula Figueiredo <
thiag...@gmail.com> wrote:

> On Tue, 13 Aug 2013 15:04:54 -0300, rukmini n 
> wrote:
>
>  Hi Thiago,
>>
>
> Hi!
>
> I think the problem is here:
>
>  msgEle.removeChildren();
>> msgEle.pop();
>>
>
> Have you tried just using msgEle.remove(), as you seem to want to remove
> the element completely?
>
>
> --
> Thiago H. de Paula Figueiredo
>
> --**--**-
> To unsubscribe, e-mail: 
> users-unsubscribe@tapestry.**apache.org
> For additional commands, e-mail: users-h...@tapestry.apache.org
>
>


Re: Tapestry 5.2.5: Tapestry Exception "MarkupWriter.element() and not followed up with MarkupWriter.end()"

2013-08-13 Thread Thiago H de Paula Figueiredo

On Tue, 13 Aug 2013 15:04:54 -0300, rukmini n  wrote:


Hi Thiago,


Hi!

I think the problem is here:


msgEle.removeChildren();
msgEle.pop();


Have you tried just using msgEle.remove(), as you seem to want to remove  
the element completely?


--
Thiago H. de Paula Figueiredo

-
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org



Re: Tapestry 5.2.5: Tapestry Exception "MarkupWriter.element() and not followed up with MarkupWriter.end()"

2013-08-13 Thread rukmini n
Hi Thiago,

Did you find any problem with the code? Please respond, thanks in advance..

Thanks,
Rukmini

On Tue, Aug 13, 2013 at 11:04 AM, rukmini n  wrote:

> Hi Thiago,
>
> Thanks for the response: Here is the code;
>
> import org.apache.tapestry5.Field;
> import org.apache.tapestry5.MarkupWriter;
> import org.apache.tapestry5.ValidationTracker;
> import org.apache.tapestry5.annotations.BeginRender;
> import org.apache.tapestry5.annotations.Environmental;
> import org.apache.tapestry5.annotations.Parameter;
> import org.apache.tapestry5.corelib.components.Form;
> import org.apache.tapestry5.dom.Element;
>
> /**
>  * test implementation to allow for custom validation error messages below
> an input field.
>  *
>  * Within a tml file, place something like:
>  *   
>  * Please enter a valid date
>  *   
>  * in the vicinity of an input element with matching field id:
>  *t:value="inHandDate"
>  *  t:translate="string"/>
>  *
>  * The component will add attributes for="[fieldId]" and class="error"
> (defined
>  * in the corresponding tml file), and (in case the field had an error)
> style="display:block"
>  * to this label (CSS class error will by default hide the div).
>  *
>  * If parameter leaveMessage is omitted or false, the whole error div will
> be removed
>  * from the rendered page if the corresponding input field had no
> validation error.
>  * Otherwise it will be left in place (hidden through CSS) so that
> client-side validation
>  * may use these messages to show if so desired.
>  *
>  * If parameter errorId is present, the error message will only show if
> the field's
>  * tracker errorId matches the value of parameter errorId (so you can
> define multiple
>  * messages for the same field: each targeted at a specific validation
> error).
>  *
>  * If parameter form is present, it will be used as the identifier of the
> form that
>  * contained the input element (so it's only relevant if there are
> multiple forms
>  * on a page). Otherwise, the form will be derived from the environmental
> information.
>  * If parameter form is used, the page's java class will need to have the
> proper get
>  * method for the form: public Form getMyForm() {return this.myForm;}
>  *
>  * If parameter labelId is present, the value will be used as id on the
> label element.
>  */
> public class FieldValidationErrorMsg {
>
> @Parameter(required = true, defaultPrefix="literal")
> private String fieldId;
>
> @Parameter
> private Form form;
>
> @Parameter
> private Boolean leaveMessage; //TODO: this should ideally be a
> page/flow configuration in stead of a parameter so that we can choose to
> leave all error messages in place (but hidden) if those could be used for
> client-side validation purposes.
>
> @Parameter (defaultPrefix="literal")
> private String errorId;
>
> @Parameter (defaultPrefix="literal")
> private String labelId;
>
> @Environmental(false)
> private ValidationTracker tracker;
>
> public void setFieldId(String fieldId) {
> this.fieldId = fieldId;
> }
> public String getFieldId() {
> return this.fieldId;
> }
> public String getLabelId() {
> return this.labelId;
> }
> public void setForm(Form form) {
> this.form = form;
> }
>
> public void afterRenderBody(MarkupWriter writer) {
> final String _fieldId = this.fieldId;
> Field f = new Field() {
> public String getLabel() { return null; }
> public boolean isDisabled() { return false; }
> public String getClientId() { return _fieldId; }
> public String getControlName() { return _fieldId; }
> public boolean isRequired() { return false; }
> };
>
> // grab the FieldValidationErrorMsg component
> Element msgEle = writer.getElement();
>
> ValidationTracker tracker;
> if ( this.form != null ) {
> tracker = this.form.getDefaultTracker();
> } else {
> tracker = this.tracker;
> }
>
> if ( (this.errorId != null && tracker.getError(f) != null &&
> tracker.getError(f).contains(this.errorId))
>  || (this.errorId == null && tracker.inError(f)) ) {
> // we need to display the error message, so do nothing, leave
> it as is
> } else {
> // remove the error message, unless there's an instruction to
> leave it in place
> if (this.leaveMessage==null || !this.leaveMessage) {
> msgEle.removeChildren();
> msgEle.pop();
> } else {
> // we're leaving it in place, but will hide it on page
> load by adding a class "hidden"
> String curClassValue = msgEle.getAttribute("class");
> String[] classValues = {"class","hidden "+curClassValue};
> msgEle.forceAttributes(classValues);
> }
> }
> }
>
> }
>
>
> and 

Re: Tapestry 5.2.5: Tapestry Exception "MarkupWriter.element() and not followed up with MarkupWriter.end()"

2013-08-13 Thread rukmini n
Hi Thiago,

Thanks for the response: Here is the code;

import org.apache.tapestry5.Field;
import org.apache.tapestry5.MarkupWriter;
import org.apache.tapestry5.ValidationTracker;
import org.apache.tapestry5.annotations.BeginRender;
import org.apache.tapestry5.annotations.Environmental;
import org.apache.tapestry5.annotations.Parameter;
import org.apache.tapestry5.corelib.components.Form;
import org.apache.tapestry5.dom.Element;

/**
 * test implementation to allow for custom validation error messages below
an input field.
 *
 * Within a tml file, place something like:
 *   
 * Please enter a valid date
 *   
 * in the vicinity of an input element with matching field id:
 *   
 *
 * The component will add attributes for="[fieldId]" and class="error"
(defined
 * in the corresponding tml file), and (in case the field had an error)
style="display:block"
 * to this label (CSS class error will by default hide the div).
 *
 * If parameter leaveMessage is omitted or false, the whole error div will
be removed
 * from the rendered page if the corresponding input field had no
validation error.
 * Otherwise it will be left in place (hidden through CSS) so that
client-side validation
 * may use these messages to show if so desired.
 *
 * If parameter errorId is present, the error message will only show if the
field's
 * tracker errorId matches the value of parameter errorId (so you can
define multiple
 * messages for the same field: each targeted at a specific validation
error).
 *
 * If parameter form is present, it will be used as the identifier of the
form that
 * contained the input element (so it's only relevant if there are multiple
forms
 * on a page). Otherwise, the form will be derived from the environmental
information.
 * If parameter form is used, the page's java class will need to have the
proper get
 * method for the form: public Form getMyForm() {return this.myForm;}
 *
 * If parameter labelId is present, the value will be used as id on the
label element.
 */
public class FieldValidationErrorMsg {

@Parameter(required = true, defaultPrefix="literal")
private String fieldId;

@Parameter
private Form form;

@Parameter
private Boolean leaveMessage; //TODO: this should ideally be a
page/flow configuration in stead of a parameter so that we can choose to
leave all error messages in place (but hidden) if those could be used for
client-side validation purposes.

@Parameter (defaultPrefix="literal")
private String errorId;

@Parameter (defaultPrefix="literal")
private String labelId;

@Environmental(false)
private ValidationTracker tracker;

public void setFieldId(String fieldId) {
this.fieldId = fieldId;
}
public String getFieldId() {
return this.fieldId;
}
public String getLabelId() {
return this.labelId;
}
public void setForm(Form form) {
this.form = form;
}

public void afterRenderBody(MarkupWriter writer) {
final String _fieldId = this.fieldId;
Field f = new Field() {
public String getLabel() { return null; }
public boolean isDisabled() { return false; }
public String getClientId() { return _fieldId; }
public String getControlName() { return _fieldId; }
public boolean isRequired() { return false; }
};

// grab the FieldValidationErrorMsg component
Element msgEle = writer.getElement();

ValidationTracker tracker;
if ( this.form != null ) {
tracker = this.form.getDefaultTracker();
} else {
tracker = this.tracker;
}

if ( (this.errorId != null && tracker.getError(f) != null &&
tracker.getError(f).contains(this.errorId))
 || (this.errorId == null && tracker.inError(f)) ) {
// we need to display the error message, so do nothing, leave
it as is
} else {
// remove the error message, unless there's an instruction to
leave it in place
if (this.leaveMessage==null || !this.leaveMessage) {
msgEle.removeChildren();
msgEle.pop();
} else {
// we're leaving it in place, but will hide it on page load
by adding a class "hidden"
String curClassValue = msgEle.getAttribute("class");
String[] classValues = {"class","hidden "+curClassValue};
msgEle.forceAttributes(classValues);
}
}
}

}


and FieldValidationErrorMsg.tml for the same:


http://tapestry.apache.org/schema/tapestry_5_1_0.xsd";>







Thanks,
Rukmini

On Tue, Aug 13, 2013 at 9:55 AM, Thiago H de Paula Figueiredo <
thiag...@gmail.com> wrote:

> On Tue, 13 Aug 2013 13:48:29 -0300, rukmini n 
> wrote:
>
>  Hi all,
>>
>
> Hi!
>
>
>  I get the below exception while rendering tml file.
>>
>
> What's the Java source code for FieldValidationErrorMsg?
>
> --
> Thiago H. de Paula Figueired

Re: Tapestry 5.2.5: Tapestry Exception "MarkupWriter.element() and not followed up with MarkupWriter.end()"

2013-08-13 Thread Thiago H de Paula Figueiredo

On Tue, 13 Aug 2013 13:48:29 -0300, rukmini n  wrote:


Hi all,


Hi!


I get the below exception while rendering tml file.


What's the Java source code for FieldValidationErrorMsg?

--
Thiago H. de Paula Figueiredo

-
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org



Tapestry 5.2.5: Tapestry Exception "MarkupWriter.element() and not followed up with MarkupWriter.end()"

2013-08-13 Thread rukmini n
Hi all,

I get the below exception while rendering tml file.

2013-08-12 17:22:12,525 [d701#8/https://myaccount.srwd00.com/login/Signin]
priority=ERROR app_name=testapps thread=ajp-127.0.0.3-8009-1
location=RequestExceptionHandler line=40 Unexpected exception: Render queue
error in
PostRenderCleanup[Signin:logincomponent_0.fieldvalidationerrormsg]:
Component Signin:logincomponent_0.fieldvalidationerrormsg has rendered
unbalanced elements; either it has started an element with
MarkupWriter.element() and not followed up with MarkupWriter.end(), or it
has invoked MarkupWriter.end() without first invoking
MarkupWriter.element().:
org.apache.tapestry5.internal.services.RenderQueueException: Render queue
error in
PostRenderCleanup[Signin:logincomponent_0.fieldvalidationerrormsg]:
Component Signin:logincomponent_0.fieldvalidationerrormsg has rendered
unbalanced elements; either it has started an element with
MarkupWriter.element() and not followed up with MarkupWriter.end(), or it
has invoked MarkupWriter.end() without first invoking
MarkupWriter.element(). [at
classpath:com/test/ui/components/sh/common/LoginComponent.tml, line 44]
at
org.apache.tapestry5.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:84)
at
org.apache.tapestry5.internal.services.PageRenderQueueImpl.render(PageRenderQueueImpl.java:127)
at
$PageRenderQueue_140750a7709.render($PageRenderQueue_140750a7709.java)
at
$PageRenderQueue_140750a7700.render($PageRenderQueue_140750a7700.java)
at
org.apache.tapestry5.internal.services.MarkupRendererTerminator.renderMarkup(MarkupRendererTerminator.java:37)
at com.test.ui.services.testModule$4.renderMarkup(testModule.java:267)
at
$MarkupRenderer_140750a770c.renderMarkup($MarkupRenderer_140750a770c.java)
at com.test.ui.services.testModule$5.renderMarkup(testModule.java:281)
at
$MarkupRenderer_140750a770c.renderMarkup($MarkupRenderer_140750a770c.java)
at
org.apache.tapestry5.services.TapestryModule$29.renderMarkup(TapestryModule.java:2089)
at
$MarkupRenderer_140750a770c.renderMarkup($MarkupRenderer_140750a770c.java)
at
org.apache.tapestry5.services.TapestryModule$28.renderMarkup(TapestryModule.java:2073)
at
$MarkupRenderer_140750a770c.renderMarkup($MarkupRenderer_140750a770c.java)
at
org.apache.tapestry5.services.TapestryModule$27.renderMarkup(TapestryModule.java:2055)
at
$MarkupRenderer_140750a770c.renderMarkup($MarkupRenderer_140750a770c.java)
at
org.apache.tapestry5.services.TapestryModule$26.renderMarkup(TapestryModule.java:2040)
at
$MarkupRenderer_140750a770c.renderMarkup($MarkupRenderer_140750a770c.java)
at
org.apache.tapestry5.services.TapestryModule$25.renderMarkup(TapestryModule.java:2026)
at
$MarkupRenderer_140750a770c.renderMarkup($MarkupRenderer_140750a770c.java)
at
org.apache.tapestry5.services.TapestryModule$24.renderMarkup(TapestryModule.java:2008)
at
$MarkupRenderer_140750a770c.renderMarkup($MarkupRenderer_140750a770c.java)
at
org.apache.tapestry5.services.TapestryModule$23.renderMarkup(TapestryModule.java:1989)
at
$MarkupRenderer_140750a770c.renderMarkup($MarkupRenderer_140750a770c.java)
at
$MarkupRenderer_140750a7708.renderMarkup($MarkupRenderer_140750a7708.java)
at
org.apache.tapestry5.internal.services.PageMarkupRendererImpl.renderPageMarkup(PageMarkupRendererImpl.java:47)
at
$PageMarkupRenderer_140750a7706.renderPageMarkup($PageMarkupRenderer_140750a7706.java)
at
com.test.ui.services.common.impl.PageJSonResponseRendererDecorator.renderPageResponse(PageJSonResponseRendererDecorator.java:57)
at
$PageResponseRenderer_140750a75c8.renderPageResponse($PageResponseRenderer_140750a75c8.java)
at
org.apache.tapestry5.internal.services.PageRenderRequestHandlerImpl.handle(PageRenderRequestHandlerImpl.java:64)
at
org.apache.tapestry5.services.TapestryModule$36.handle(TapestryModule.java:2326)
at
$PageRenderRequestHandler_140750a75ca.handle($PageRenderRequestHandler_140750a75ca.java)
at
com.test.ui.services.impl.ClientCacheHandler.handle(ClientCacheHandler.java:60)
at
$PageRenderRequestHandler_140750a75ca.handle($PageRenderRequestHandler_140750a75ca.java)
at
com.test.ui.services.impl.testAccessControlHandler.handle(testAccessControlHandler.java:134)
at
$PageRenderRequestHandler_140750a75ca.handle($PageRenderRequestHandler_140750a75ca.java)
at
$PageRenderRequestHandler_140750a75c0.handle($PageRenderRequestHandler_140750a75c0.java)
at
org.apache.tapestry5.internal.services.ComponentRequestHandlerTerminator.handlePageRender(ComponentRequestHandlerTerminator.java:48)
at
org.apache.tapestry5.services.InitializeActivePageName.handlePageRender(InitializeActivePageName.java:47)
at
$ComponentRequestHandler_140750a75c1.handlePageRender($ComponentRequestHandler_140750a75c1.java)
at
$ComponentRequestHandler_140750a75a6.handlePageRender($ComponentRequestHandler_140750a75a6.java)
at
org.apache.tapestry5.internal.services.PageRenderDispatcher.dispa