You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@struts.apache.org by "Henrik Brautaset Aronsen (JIRA)" <ji...@apache.org> on 2009/04/01 09:02:05 UTC
[jira] Created: (WW-3069) Migration from 2.0.x to 2.1.x: fieldError
does not use the full parameter name as id
Migration from 2.0.x to 2.1.x: fieldError does not use the full parameter name as id
------------------------------------------------------------------------------------
Key: WW-3069
URL: https://issues.apache.org/struts/browse/WW-3069
Project: Struts 2
Issue Type: Bug
Affects Versions: 2.1.6
Reporter: Henrik Brautaset Aronsen
After upgrading from Struts 2.0.11 to 2.1.6, fieldErrors weren't displayed next to form fields any more. The validation still worked, because I could still see the errors by issuing a <s:fielderror/>.
My form is a value on the action, and is addressed like this:
{code}
<s:textfield label="Your e-mail address" name="form.email" theme="mytheme" />
{code}
I noticed that to access a separate value in fieldError in 2.1.6, I had to chop off "form.":
{code}
<s:fielderror fieldName="form.email" /> <!-- doesn't show anything -->
<s:fielderror fieldName="email" /> <!-- shows the error-->
{code}
Now, to be able to show my error using my template, I had to add an ID to my textfield:
{code}
<s:textfield label="Your e-mail address" id="email" name="form.email" theme="mytheme" />
{code}
Then I had to change the default hasErrorField assignment in the controlheader.tpl template:
{code}
<#assign hasFieldErrors = parameters.name?? && fieldErrors?? && fieldErrors[parameters.name]??/> <!-- does not work -->
<#assign hasFieldErrors = parameters.id?? && fieldErrors?? && fieldErrors[parameters.id]??/> <!-- works as intended -->
{code}
And change way I fetched errors in my controlfooter.tpl:
{code}
<#list fieldErrors[parameters.name] as error> <!-- does not work -->
<#list fieldErrors[parameters.id] as error> <!-- works -->
{code}
Voila! I can see field errors again.
Just to summarize: To access a fieldError, I have to manually strip "form."from "form.email". I also have to set an additional ID on my form fields (with the stripped value) to be able to access it from my template. Is this the intended behaviour?
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (WW-3069) Migration from 2.0.x to 2.1.x: fieldError
does not use the full parameter name as id
Posted by "Henrik Brautaset Aronsen (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/struts/browse/WW-3069?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Henrik Brautaset Aronsen updated WW-3069:
-----------------------------------------
Description:
After upgrading from Struts 2.0.11 to 2.1.6, fieldErrors weren't displayed next to form fields any more. The validation still worked, because I could still see the errors by issuing a <s:fielderror/>.
My form is a value on the action, and is addressed like this:
<s:textfield label="Your e-mail address" name="form.email" theme="mytheme" />
I noticed that to access a separate value in fieldError in 2.1.6, I had to chop off "form.":
<s:fielderror fieldName="form.email" /> <!-- doesn't show anything -->
<s:fielderror fieldName="email" /> <!-- shows the error-->
Now, to be able to show my error using my template, I had to add an ID to my textfield:
<s:textfield label="Your e-mail address" id="email" name="form.email" theme="mytheme" />
Then I had to change the default hasErrorField assignment in the controlheader.tpl template:
<#assign hasFieldErrors = parameters.name?? && fieldErrors?? && fieldErrors[parameters.name]??/> <!-- does not work -->
<#assign hasFieldErrors = parameters.id?? && fieldErrors?? && fieldErrors[parameters.id]??/> <!-- works as intended -->
And change way I fetched errors in my controlfooter.tpl:
<#list fieldErrors[parameters.name] as error> <!-- does not work -->
<#list fieldErrors[parameters.id] as error> <!-- works -->
Voila! I can see field errors again.
Just to summarize: To access a fieldError, I have to manually strip "form."from "form.email". I also have to set an additional ID on my form fields (with the stripped value) to be able to access it from my template. Is this the intended behaviour?
was:
After upgrading from Struts 2.0.11 to 2.1.6, fieldErrors weren't displayed next to form fields any more. The validation still worked, because I could still see the errors by issuing a <s:fielderror/>.
My form is a value on the action, and is addressed like this:
{code}
<s:textfield label="Your e-mail address" name="form.email" theme="mytheme" />
{code}
I noticed that to access a separate value in fieldError in 2.1.6, I had to chop off "form.":
{code}
<s:fielderror fieldName="form.email" /> <!-- doesn't show anything -->
<s:fielderror fieldName="email" /> <!-- shows the error-->
{code}
Now, to be able to show my error using my template, I had to add an ID to my textfield:
{code}
<s:textfield label="Your e-mail address" id="email" name="form.email" theme="mytheme" />
{code}
Then I had to change the default hasErrorField assignment in the controlheader.tpl template:
{code}
<#assign hasFieldErrors = parameters.name?? && fieldErrors?? && fieldErrors[parameters.name]??/> <!-- does not work -->
<#assign hasFieldErrors = parameters.id?? && fieldErrors?? && fieldErrors[parameters.id]??/> <!-- works as intended -->
{code}
And change way I fetched errors in my controlfooter.tpl:
{code}
<#list fieldErrors[parameters.name] as error> <!-- does not work -->
<#list fieldErrors[parameters.id] as error> <!-- works -->
{code}
Voila! I can see field errors again.
Just to summarize: To access a fieldError, I have to manually strip "form."from "form.email". I also have to set an additional ID on my form fields (with the stripped value) to be able to access it from my template. Is this the intended behaviour?
> Migration from 2.0.x to 2.1.x: fieldError does not use the full parameter name as id
> ------------------------------------------------------------------------------------
>
> Key: WW-3069
> URL: https://issues.apache.org/struts/browse/WW-3069
> Project: Struts 2
> Issue Type: Bug
> Affects Versions: 2.1.6
> Reporter: Henrik Brautaset Aronsen
>
> After upgrading from Struts 2.0.11 to 2.1.6, fieldErrors weren't displayed next to form fields any more. The validation still worked, because I could still see the errors by issuing a <s:fielderror/>.
> My form is a value on the action, and is addressed like this:
> <s:textfield label="Your e-mail address" name="form.email" theme="mytheme" />
> I noticed that to access a separate value in fieldError in 2.1.6, I had to chop off "form.":
> <s:fielderror fieldName="form.email" /> <!-- doesn't show anything -->
> <s:fielderror fieldName="email" /> <!-- shows the error-->
> Now, to be able to show my error using my template, I had to add an ID to my textfield:
> <s:textfield label="Your e-mail address" id="email" name="form.email" theme="mytheme" />
> Then I had to change the default hasErrorField assignment in the controlheader.tpl template:
> <#assign hasFieldErrors = parameters.name?? && fieldErrors?? && fieldErrors[parameters.name]??/> <!-- does not work -->
> <#assign hasFieldErrors = parameters.id?? && fieldErrors?? && fieldErrors[parameters.id]??/> <!-- works as intended -->
> And change way I fetched errors in my controlfooter.tpl:
> <#list fieldErrors[parameters.name] as error> <!-- does not work -->
> <#list fieldErrors[parameters.id] as error> <!-- works -->
> Voila! I can see field errors again.
> Just to summarize: To access a fieldError, I have to manually strip "form."from "form.email". I also have to set an additional ID on my form fields (with the stripped value) to be able to access it from my template. Is this the intended behaviour?
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (WW-3069) Migration from 2.0.x to 2.1.x:
fieldError does not use the full parameter name as id
Posted by "Henrik Brautaset Aronsen (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/struts/browse/WW-3069?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=45811#action_45811 ]
Henrik Brautaset Aronsen commented on WW-3069:
----------------------------------------------
To elaborate further: How will the template / fieldError cope with MyAction.getForm().getEmail() vs. MyAction.getEmail() if they both are referred to as <s:fielderror fieldName="email" />?
> Migration from 2.0.x to 2.1.x: fieldError does not use the full parameter name as id
> ------------------------------------------------------------------------------------
>
> Key: WW-3069
> URL: https://issues.apache.org/struts/browse/WW-3069
> Project: Struts 2
> Issue Type: Bug
> Affects Versions: 2.1.6
> Reporter: Henrik Brautaset Aronsen
>
> After upgrading from Struts 2.0.11 to 2.1.6, fieldErrors weren't displayed next to form fields any more. The validation still worked, because I could still see the errors by issuing a <s:fielderror/>.
> My form is a value on the action, and is addressed like this:
> <s:textfield label="Your e-mail address" name="form.email" theme="mytheme" />
> I noticed that to access a separate value in fieldError in 2.1.6, I had to chop off "form.":
> <s:fielderror fieldName="form.email" /> <!-- doesn't show anything -->
> <s:fielderror fieldName="email" /> <!-- shows the error-->
> Now, to be able to show my error using my template, I had to add an ID to my textfield:
> <s:textfield label="Your e-mail address" id="email" name="form.email" theme="mytheme" />
> Then I had to change the default hasErrorField assignment in the controlheader.tpl template:
> <#assign hasFieldErrors = parameters.name?? && fieldErrors?? && fieldErrors[parameters.name]??/> <!-- does not work -->
> <#assign hasFieldErrors = parameters.id?? && fieldErrors?? && fieldErrors[parameters.id]??/> <!-- works as intended -->
> And change way I fetched errors in my controlfooter.tpl:
> <#list fieldErrors[parameters.name] as error> <!-- does not work -->
> <#list fieldErrors[parameters.id] as error> <!-- works -->
> Voila! I can see field errors again.
> Just to summarize: To access a fieldError, I have to manually strip "form."from "form.email". I also have to set an additional ID on my form fields (with the stripped value) to be able to access it from my template. Is this the intended behaviour?
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.