struts-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "COMBEAU (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (WW-3954) Ajax Validation is broken (json)
Date Sun, 30 Dec 2012 18:54:12 GMT

    [ https://issues.apache.org/jira/browse/WW-3954?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13541133#comment-13541133
] 

COMBEAU edited comment on WW-3954 at 12/30/12 6:52 PM:
-------------------------------------------------------

Here is my application to test.

To see the initial issue, please change the version of struts 2 core et Struts 2 json to "2.1.8"
and change in the index.jsp the jquery to load to 1.3.1.

When you click on the button without fill the form you sould see "error".

When you change the version of struts 2 to 2.3.4.1 and the jquery to 1.8.3 you will see "success"
evenif there are some errors in the form
                
      was (Author: walkn):
    Here is my application to test
                  
> Ajax Validation is broken (json)
> --------------------------------
>
>                 Key: WW-3954
>                 URL: https://issues.apache.org/jira/browse/WW-3954
>             Project: Struts 2
>          Issue Type: Bug
>          Components: Plugin - JSON
>    Affects Versions: 2.3.1, 2.3.1.1, 2.3.1.2, 2.3.3, 2.3.4, 2.3.4.1
>         Environment: Struts 2.3.4.1, Jquery 1.3.1, Struts json plugin 2.3.4.1
>            Reporter: COMBEAU
>            Assignee: Lukasz Lenart
>            Priority: Minor
>             Fix For: 2.3.9
>
>         Attachments: testAjaxValidation.zip
>
>
> Hello,
> I have find an issue on Struts 2.3.4.1. I have made a migration from Struts 2.1.8 to
Struts 2.3.4.1 and I have seen that the Ajax Validation doesn't work anymore.
> Moreover, when I would like to make the validation of my form in Ajax I seen that response
was already "success" even if one or more fields are in errors. I think it's not normal. In
Struts 2.1.8 when fields are in errors the response of an Ajax call is "error" not "success"
> To correct this issue I have made a workaround. In the JSONValidationInterceptor, if
the buildResponse method have "/*" in the first append and "*/" in the last it correct the
problem...
> why this :
> {code:java}
> protected String buildResponse(ValidationAware validationAware) {
>         //should we use FreeMarker here?
>         StringBuilder sb = new StringBuilder();
>         sb.append("/* { ");
>         ...
>         sb.append("} */");
>         /*response should be something like:
>          * {
>          *      "errors": ["this", "that"],
>          *      "fieldErrors": {
>          *            field1: "this",
>          *            field2: "that"
>          *      }
>          * }
>          */
>         return sb.toString();
>     }
> {code}
> as been replaced by this :
> {code:java}
> protected String buildResponse(ValidationAware validationAware) {
>         //should we use FreeMarker here?
>         StringBuilder sb = new StringBuilder();
>         sb.append("{ ");
>         ***
>         sb.append("}");
>         /*response should be something like:
>          * {
>          *      "errors": ["this", "that"],
>          *      "fieldErrors": {
>          *            field1: "this",
>          *            field2: "that"
>          *      }
>          * }
>          */
>         return sb.toString();
>     }
> {code}
> Is this a real issue ? 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message