Uploaded image for project: 'Struts 2'
  1. Struts 2
  2. WW-4684

Parameters not set to action when posting JSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 2.5.2
    • Fix Version/s: 2.5.5
    • Component/s: Core Actions
    • Labels:
      None
    • Environment:

      Windows

    • Flags:
      Important

      Description

      I have an issue on my webapp since I have update Struts 2 to version 2.5.2 from 2.3.28.

      When I post a form with parameters via ajax call, on the action class setters are not called. All the time the setter and getter return "null" value

      I used Struts2-core and struts2-json-plugin

      1. struts.xml
        4 kB
        COMBEAU
      2. ActionSample.java
        0.9 kB
        COMBEAU
      3. struts.properties
        6 kB
        COMBEAU
      4. login.jsp
        1 kB
        COMBEAU
      5. screenshot-1.png
        104 kB
        COMBEAU
      6. struts-2.3.28.xml
        4 kB
        COMBEAU

        Issue Links

          Activity

          Hide
          vijays2017 Vijay Srivastava added a comment -

          hi,

          I see the same issue. JSON inpur params are not converted to Java object in action. Is this fix available in 2.5.12 ? Please advise.

          Like you have a JSON object in the request and which is required to be converted to object as a part of request. request below is not converted to FujiLoginRequest . Can you please check ?

          For example vzCloud/fuji/fujiLogin.action?request.repositoryPath[0]=VZWEB:/VZMOBILE/1.jpg

          --------------------------------------------------

          public class FujiLoginAction extends BaseAction implements InitializingBean

          { private String redirectURL ; private FujiIntegrationDelegate delegate; private FujiLoginResponse fujiLoginResponse ; private FujiLoginRequest request ; public void setRequest(FujiLoginRequest request) { this.request = request; }

          Show
          vijays2017 Vijay Srivastava added a comment - hi, I see the same issue. JSON inpur params are not converted to Java object in action. Is this fix available in 2.5.12 ? Please advise. Like you have a JSON object in the request and which is required to be converted to object as a part of request. request below is not converted to FujiLoginRequest . Can you please check ? For example vzCloud/fuji/fujiLogin.action?request.repositoryPath [0] =VZWEB:/VZMOBILE/1.jpg -------------------------------------------------- public class FujiLoginAction extends BaseAction implements InitializingBean { private String redirectURL ; private FujiIntegrationDelegate delegate; private FujiLoginResponse fujiLoginResponse ; private FujiLoginRequest request ; public void setRequest(FujiLoginRequest request) { this.request = request; }
          Hide
          walkn COMBEAU added a comment -

          When Struts 2.5.3 should be released and available ? Exists an URL to see the planned release date for Struts 2 ?
          Thank you very much

          Show
          walkn COMBEAU added a comment - When Struts 2.5.3 should be released and available ? Exists an URL to see the planned release date for Struts 2 ? Thank you very much
          Hide
          hudson Hudson added a comment -

          SUCCESS: Integrated in Jenkins build Struts-JDK7-master #516 (See https://builds.apache.org/job/Struts-JDK7-master/516/)
          WW-4684 Uses Content-Type to perform action based on defined type (lukaszlenart: rev 547718fcc6e1d694cfd6ef5a65a5c42edb49a3dc)

          • (edit) plugins/json/src/test/java/org/apache/struts2/json/JSONInterceptorTest.java
          • (edit) plugins/json/src/main/java/org/apache/struts2/json/JSONInterceptor.java
            WW-4684 Uses charset and adds some logging (lukaszlenart: rev 175c852eefbd1353991db6f691264af072ab058c)
          • (edit) plugins/json/src/main/java/org/apache/struts2/json/JSONInterceptor.java
          • (edit) plugins/json/src/test/java/org/apache/struts2/json/JSONInterceptorTest.java
          Show
          hudson Hudson added a comment - SUCCESS: Integrated in Jenkins build Struts-JDK7-master #516 (See https://builds.apache.org/job/Struts-JDK7-master/516/ ) WW-4684 Uses Content-Type to perform action based on defined type (lukaszlenart: rev 547718fcc6e1d694cfd6ef5a65a5c42edb49a3dc) (edit) plugins/json/src/test/java/org/apache/struts2/json/JSONInterceptorTest.java (edit) plugins/json/src/main/java/org/apache/struts2/json/JSONInterceptor.java WW-4684 Uses charset and adds some logging (lukaszlenart: rev 175c852eefbd1353991db6f691264af072ab058c) (edit) plugins/json/src/main/java/org/apache/struts2/json/JSONInterceptor.java (edit) plugins/json/src/test/java/org/apache/struts2/json/JSONInterceptorTest.java
          Hide
          lukaszlenart Lukasz Lenart added a comment -

          Yes, this will be part of incoming 2.5.3 version and you can test this change using Maven Snapshot repository https://repository.apache.org/content/groups/snapshots/ and seeting version of Struts to 2.5.3-SNAPSHOT

          Show
          lukaszlenart Lukasz Lenart added a comment - Yes, this will be part of incoming 2.5.3 version and you can test this change using Maven Snapshot repository https://repository.apache.org/content/groups/snapshots/ and seeting version of Struts to 2.5.3-SNAPSHOT
          Hide
          walkn COMBEAU added a comment - - edited

          Oh thank you very much

          In which version of Struts this fix will be available to make some tests in my webapp ? version 2.5.3 ?

          Is it possible to test it in advance ?

          Show
          walkn COMBEAU added a comment - - edited Oh thank you very much In which version of Struts this fix will be available to make some tests in my webapp ? version 2.5.3 ? Is it possible to test it in advance ?
          Hide
          lukaszlenart Lukasz Lenart added a comment -

          Done, I have reverted to the previous behaviour with Content-Type and basically you don't have to override Content-Type definition in the interceptor.

          Here is small example how to use JSON plugin in both directiorns:
          https://github.com/apache/struts-examples/tree/master/json

          And added some notes to docs
          https://cwiki.apache.org/confluence/display/WW/JSON+Plugin#JSONPlugin-AcceptingJSON

          Show
          lukaszlenart Lukasz Lenart added a comment - Done, I have reverted to the previous behaviour with Content-Type and basically you don't have to override Content-Type definition in the interceptor. Here is small example how to use JSON plugin in both directiorns: https://github.com/apache/struts-examples/tree/master/json And added some notes to docs https://cwiki.apache.org/confluence/display/WW/JSON+Plugin#JSONPlugin-AcceptingJSON
          Hide
          jira-bot ASF subversion and git services added a comment -

          Commit 175c852eefbd1353991db6f691264af072ab058c in struts's branch refs/heads/master from Lukasz Lenart
          [ https://git-wip-us.apache.org/repos/asf?p=struts.git;h=175c852 ]

          WW-4684 Uses charset and adds some logging

          Show
          jira-bot ASF subversion and git services added a comment - Commit 175c852eefbd1353991db6f691264af072ab058c in struts's branch refs/heads/master from Lukasz Lenart [ https://git-wip-us.apache.org/repos/asf?p=struts.git;h=175c852 ] WW-4684 Uses charset and adds some logging
          Hide
          jira-bot ASF subversion and git services added a comment -

          Commit 547718fcc6e1d694cfd6ef5a65a5c42edb49a3dc in struts's branch refs/heads/master from Lukasz Lenart
          [ https://git-wip-us.apache.org/repos/asf?p=struts.git;h=547718f ]

          WW-4684 Uses Content-Type to perform action based on defined type

          Show
          jira-bot ASF subversion and git services added a comment - Commit 547718fcc6e1d694cfd6ef5a65a5c42edb49a3dc in struts's branch refs/heads/master from Lukasz Lenart [ https://git-wip-us.apache.org/repos/asf?p=struts.git;h=547718f ] WW-4684 Uses Content-Type to perform action based on defined type
          Hide
          walkn COMBEAU added a comment - - edited

          I have attached the version of my struts.xml when I am using Struts 2.3.28.

          In the file you can see that I have defined in my "defaultStack" :
          <interceptor-ref name="json">
          <param name="contentType">application/json</param>
          </interceptor-ref>

          All the request of my web app use the "defaultStack" I have defined in the struts.xml. (URL, $.ajax, $.getJSON, $.post, and etc....)

          And another point is that JsonInterceptor has all the time the same value for the "accept" parameter. If I set the accept header in the ajax call it doesn't change in the interceptor. I think it's a regression from 2.3.x because now we can't only one interceptor-stack with interceptor-ref to json with contentType equals application/json. Now with accept = application/json all requests are read as they are json when you have only one interceptor-stack and it's the problem.

          I don"t understand why the replacement of contentType in accept cause some troubles in my App... Why now it doesn't work ?

          I must remove the interceptor-ref json to have my app working ... but if I do that all ajax request to get data from server and ajax request to post data to the server doesn't work anymore.

          Another solution must be to implement two custom interceptor-stack but it cost to me to refactor all my struts action to use the new custom json stack to set accept param in the interceptor-ref json....

          But I dont think that is the best way and I think other persons could have the same issue than me.

          There is no way to have only one interceptor-stack to catch all request with various accept and contentType like in the 2.3.x Struts version ?

          Please could you have a look about this very important issue it would be great.

          Thank you very much

          Show
          walkn COMBEAU added a comment - - edited I have attached the version of my struts.xml when I am using Struts 2.3.28. In the file you can see that I have defined in my "defaultStack" : <interceptor-ref name="json"> <param name="contentType">application/json</param> </interceptor-ref> All the request of my web app use the "defaultStack" I have defined in the struts.xml. (URL, $.ajax, $.getJSON, $.post, and etc....) And another point is that JsonInterceptor has all the time the same value for the "accept" parameter. If I set the accept header in the ajax call it doesn't change in the interceptor. I think it's a regression from 2.3.x because now we can't only one interceptor-stack with interceptor-ref to json with contentType equals application/json. Now with accept = application/json all requests are read as they are json when you have only one interceptor-stack and it's the problem. I don"t understand why the replacement of contentType in accept cause some troubles in my App... Why now it doesn't work ? I must remove the interceptor-ref json to have my app working ... but if I do that all ajax request to get data from server and ajax request to post data to the server doesn't work anymore. Another solution must be to implement two custom interceptor-stack but it cost to me to refactor all my struts action to use the new custom json stack to set accept param in the interceptor-ref json.... But I dont think that is the best way and I think other persons could have the same issue than me. There is no way to have only one interceptor-stack to catch all request with various accept and contentType like in the 2.3.x Struts version ? Please could you have a look about this very important issue it would be great. Thank you very much
          Hide
          walkn COMBEAU added a comment - - edited

          Yes ko.mapping.toJSON(..) produces a proper JSON string.

          If I create two differents interceptor-stack one for JSON action request (POST) and another one for all other ajax get request to read datas it seems to be working. But I have to refactor all my web app

          Before with struts 2.3.28 i have only one interceptor-stack and the web app works perfectly
          Before struts 2.5.2 all my request pass through the same interceptor stack (ajax get or post etc...) with an interceptor-ref to json

          Show
          walkn COMBEAU added a comment - - edited Yes ko.mapping.toJSON(..) produces a proper JSON string. If I create two differents interceptor-stack one for JSON action request (POST) and another one for all other ajax get request to read datas it seems to be working. But I have to refactor all my web app Before with struts 2.3.28 i have only one interceptor-stack and the web app works perfectly Before struts 2.5.2 all my request pass through the same interceptor stack (ajax get or post etc...) with an interceptor-ref to json
          Hide
          lukaszlenart Lukasz Lenart added a comment -

          Are you sure that ko.mapping.toJSON(...) produces a proper JSON string? What do you see in browser's dev console?

          Show
          lukaszlenart Lukasz Lenart added a comment - Are you sure that ko.mapping.toJSON(...) produces a proper JSON string? What do you see in browser's dev console?
          Hide
          walkn COMBEAU added a comment -

          Should I define a custom interceptor-stack for all my JSON call/action and another interceptor-stack for all others requests ?

          Show
          walkn COMBEAU added a comment - Should I define a custom interceptor-stack for all my JSON call/action and another interceptor-stack for all others requests ?
          Hide
          walkn COMBEAU added a comment - - edited

          If I replace this :
          <interceptor-ref name="json">
          <param name="contentType">application/json</param>
          </interceptor-ref>

          by only this:
          <interceptor-ref name="json"/>

          It works but Ajax call doesn't! It against the same issue

          I have try with :
          $.ajax(

          { url:'jsondeserial.action', type:"POST", data: {userLogin:'toto'}

          ,headers:

          { Accept: "application/json; charset=utf-8", "Content-Type": "application/json; charset=utf-8" }

          ,
          contentType:"application/json; charset=utf-8",
          dataType:"json",
          success: function(data){
          }
          });

          In the JSONInterceptor I doesn't see accept equals to application/json

          Show
          walkn COMBEAU added a comment - - edited If I replace this : <interceptor-ref name="json"> <param name="contentType">application/json</param> </interceptor-ref> by only this: <interceptor-ref name="json"/> It works but Ajax call doesn't! It against the same issue I have try with : $.ajax( { url:'jsondeserial.action', type:"POST", data: {userLogin:'toto'} ,headers: { Accept: "application/json; charset=utf-8", "Content-Type": "application/json; charset=utf-8" } , contentType:"application/json; charset=utf-8", dataType:"json", success: function(data){ } }); In the JSONInterceptor I doesn't see accept equals to application/json
          Hide
          walkn COMBEAU added a comment - - edited

          I don't understand what I have to do to solve the issue in my webapp ? I have read the link but I don't understand.

          I think it's an issue my web app doesn't work in Struts 2.5.2 now with this changes...

          Show
          walkn COMBEAU added a comment - - edited I don't understand what I have to do to solve the issue in my webapp ? I have read the link but I don't understand. I think it's an issue my web app doesn't work in Struts 2.5.2 now with this changes...
          Hide
          walkn COMBEAU added a comment -

          Why in JSONInterceptor contentType have been replaced by accept ?

          Show
          walkn COMBEAU added a comment - Why in JSONInterceptor contentType have been replaced by accept ?
          Hide
          walkn COMBEAU added a comment - - edited

          I think the issue is due to the stack because in Struts 2.3.28 I have this one :
          <interceptor-stack name="defaultStack">
          <interceptor-ref name="session"/>
          <interceptor-ref name="exception">
          <param name="logEnabled">true</param>
          <param name="logCategory">com.myapp.unhandled</param>
          <param name="logLevel">ERROR</param>
          </interceptor-ref>
          <interceptor-ref name="alias" />
          <interceptor-ref name="servletConfig" />
          <interceptor-ref name="i18n" />
          <interceptor-ref name="prepare">
          <param name="excludeMethods">submit,login,logout</param>
          </interceptor-ref>
          <interceptor-ref name="chain" />
          <interceptor-ref name="scopedModelDriven" />
          <interceptor-ref name="modelDriven" />
          <interceptor-ref name="checkbox" />
          <interceptor-ref name="staticParams" />
          <interceptor-ref name="actionMappingParams" />
          <interceptor-ref name="params"/>
          <interceptor-ref name="conversionError" />
          <interceptor-ref name="validation">
          <param name="validateAnnotatedMethodOnly">true</param>
          <param name="excludeMethods">input,back,cancel,browse,build</param>
          </interceptor-ref>
          <interceptor-ref name="workflow">
          <!--
          we exclude build so that we can chain to build without failing if
          original validation failed
          -->
          <param name="excludeMethods">input,back,cancel,browse,build</param>
          </interceptor-ref>
          <interceptor-ref name="json">
          <param name="contentType">application/json</param>
          </interceptor-ref>
          </interceptor-stack>

          And all is OK

          And know I have replaced <param name="contentType">application/json</param> by <param name="accept">application/json</param> and all fails all pages of my Webapp

          it's because I have only one stack for all my request and the accept cause some trouble

          And I Struts 2.3.28 when I called this : http://localhost:8080/myapp/index.action the contentType is null and now for all request I have accept set to application/json

          Show
          walkn COMBEAU added a comment - - edited I think the issue is due to the stack because in Struts 2.3.28 I have this one : <interceptor-stack name="defaultStack"> <interceptor-ref name="session"/> <interceptor-ref name="exception"> <param name="logEnabled">true</param> <param name="logCategory">com.myapp.unhandled</param> <param name="logLevel">ERROR</param> </interceptor-ref> <interceptor-ref name="alias" /> <interceptor-ref name="servletConfig" /> <interceptor-ref name="i18n" /> <interceptor-ref name="prepare"> <param name="excludeMethods">submit,login,logout</param> </interceptor-ref> <interceptor-ref name="chain" /> <interceptor-ref name="scopedModelDriven" /> <interceptor-ref name="modelDriven" /> <interceptor-ref name="checkbox" /> <interceptor-ref name="staticParams" /> <interceptor-ref name="actionMappingParams" /> <interceptor-ref name="params"/> <interceptor-ref name="conversionError" /> <interceptor-ref name="validation"> <param name="validateAnnotatedMethodOnly">true</param> <param name="excludeMethods">input,back,cancel,browse,build</param> </interceptor-ref> <interceptor-ref name="workflow"> <!-- we exclude build so that we can chain to build without failing if original validation failed --> <param name="excludeMethods">input,back,cancel,browse,build</param> </interceptor-ref> <interceptor-ref name="json"> <param name="contentType">application/json</param> </interceptor-ref> </interceptor-stack> And all is OK And know I have replaced <param name="contentType">application/json</param> by <param name="accept">application/json</param> and all fails all pages of my Webapp it's because I have only one stack for all my request and the accept cause some trouble And I Struts 2.3.28 when I called this : http://localhost:8080/myapp/index.action the contentType is null and now for all request I have accept set to application/json
          Hide
          walkn COMBEAU added a comment - - edited

          This error occured when I called my app : http://localhost:8080/myapp/index.action

          See error in attachment

          Show
          walkn COMBEAU added a comment - - edited This error occured when I called my app : http://localhost:8080/myapp/index.action See error in attachment
          Hide
          walkn COMBEAU added a comment -

          I my JSP I have the correct Header :
          <%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
          <!DOCTYPE html>

          <%@taglib prefix="s" uri="/struts-tags" %>

          Show
          walkn COMBEAU added a comment - I my JSP I have the correct Header : <%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> <!DOCTYPE html> <%@taglib prefix="s" uri="/struts-tags" %>
          Hide
          lukaszlenart Lukasz Lenart added a comment -

          It isn't about struts.properties but JSP itself, you must add the mentioned headers.

          Show
          lukaszlenart Lukasz Lenart added a comment - It isn't about struts.properties but JSP itself, you must add the mentioned headers.
          Hide
          walkn COMBEAU added a comment - - edited

          Yes I used JSP's and sitemesh. And I have a struts.properties file in my webapp I have attached it.

          And I have attached an example of my JSP page

          Show
          walkn COMBEAU added a comment - - edited Yes I used JSP's and sitemesh. And I have a struts.properties file in my webapp I have attached it. And I have attached an example of my JSP page
          Hide
          lukaszlenart Lukasz Lenart added a comment -

          Do you use JSPs? Do you have proper headers set?
          http://struts.apache.org/docs/security.html#Security-UseUTF-8encoding

          Show
          lukaszlenart Lukasz Lenart added a comment - Do you use JSPs? Do you have proper headers set? http://struts.apache.org/docs/security.html#Security-UseUTF-8encoding
          Hide
          walkn COMBEAU added a comment -

          Yes I am using the latest JARs from 2.5.2.

          I used maven dependencies.

          I think the problem is in my stack because I have this :
          <interceptor-ref name="json">
          <param name="contentType">application/json</param>
          </interceptor-ref>

          and it should be :
          <interceptor-ref name="json">
          <param name="accept">application/json</param>
          </interceptor-ref>

          But If I used "accept" I got this error :
          11:01:40 ERROR [com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.doLog] - Input string is not well formed JSON (invalid char ï¿¿)
          org.apache.struts2.json.JSONException: Input string is not well formed JSON (invalid char ï¿¿)

          Show
          walkn COMBEAU added a comment - Yes I am using the latest JARs from 2.5.2. I used maven dependencies. I think the problem is in my stack because I have this : <interceptor-ref name="json"> <param name="contentType">application/json</param> </interceptor-ref> and it should be : <interceptor-ref name="json"> <param name="accept">application/json</param> </interceptor-ref> But If I used "accept" I got this error : 11:01:40 ERROR [com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.doLog] - Input string is not well formed JSON (invalid char ï¿¿) org.apache.struts2.json.JSONException: Input string is not well formed JSON (invalid char ï¿¿)
          Hide
          lukaszlenart Lukasz Lenart added a comment -

          Looks like this issue is related to WW-4650, are you sure you are using the latest JARs from 2.5.2?

          Show
          lukaszlenart Lukasz Lenart added a comment - Looks like this issue is related to WW-4650 , are you sure you are using the latest JARs from 2.5.2?
          Hide
          walkn COMBEAU added a comment - - edited

          I have attach a java class for example.

          I used this ajax code to call the action struts :
          $.ajax({
          url:'jsondeserial.action',
          type:"POST",
          data:

          {userLogin:'toto'}

          ,
          contentType:"application/json; charset=utf-8",
          dataType:"json",
          success: function(data){

          }
          });

          With ajax call userLogin always have null value. In the URL like this : http://localhost:8080/myapp/jsondeserial.action?userLogin=test it's OK

          I debugged JSONInterceptor and "accept" attribute doesn't contains "application/json"

          Show
          walkn COMBEAU added a comment - - edited I have attach a java class for example. I used this ajax code to call the action struts : $.ajax({ url:'jsondeserial.action', type:"POST", data: {userLogin:'toto'} , contentType:"application/json; charset=utf-8", dataType:"json", success: function(data){ } }); With ajax call userLogin always have null value. In the URL like this : http://localhost:8080/myapp/jsondeserial.action?userLogin=test it's OK I debugged JSONInterceptor and "accept" attribute doesn't contains "application/json"
          Hide
          walkn COMBEAU added a comment - - edited

          My JavaScript is like this :

          var Segment = function(sgmt) {
                      var _this = this;
                      
                      this.id = sgmt.id;
                      this.name = sgmt.name;
                      this.comment = sgmt.comment;
                      this.display = sgmt.display;
                      this.type = ko.observable(sgmt.type);
                  };
          
          
          var params = ko.mapping.toJSON({segments: _this.segments(), sendMail: _this.sendMail()});
          
                          $.ajax({
                                url:'segmentsName/save.action',
                                type:"POST",
                                data:params,
                                contentType:"application/json; charset=utf-8",
                                dataType:"json",
                                success: function(data){
                                       utils.loadingWidget.hide();
                                       utils.notify(data.status, data.message, _this.load);
                                }
                          });
          

          And my Action contains :

          private List<SegmentDTO> segments;
          public List<SegmentDTO> getSegments() {
          	return segments;
          }
          
          public void setSegments(List<SegmentDTO> segments) {
          	this.segments = segments;
          }
          

          And my struts config file is in attachement

          And the request header contains :
          Accept:application/json, text/javascript, /; q=0.01
          Accept-Encoding:gzip, deflate, br
          Accept-Language:fr-FR,fr;q=0.8,en-US;q=0.6,en;q=0.4
          Connection:keep-alive
          Content-Length:1609
          Content-Type:application/json; charset=UTF-8

          Show
          walkn COMBEAU added a comment - - edited My JavaScript is like this : var Segment = function (sgmt) { var _this = this ; this .id = sgmt.id; this .name = sgmt.name; this .comment = sgmt.comment; this .display = sgmt.display; this .type = ko.observable(sgmt.type); }; var params = ko.mapping.toJSON({segments: _this.segments(), sendMail: _this.sendMail()}); $.ajax({ url:'segmentsName/save.action', type:"POST", data:params, contentType:"application/json; charset=utf-8", dataType:"json", success: function (data){ utils.loadingWidget.hide(); utils.notify(data.status, data.message, _this.load); } }); And my Action contains : private List<SegmentDTO> segments; public List<SegmentDTO> getSegments() { return segments; } public void setSegments(List<SegmentDTO> segments) { this .segments = segments; } And my struts config file is in attachement And the request header contains : Accept:application/json, text/javascript, / ; q=0.01 Accept-Encoding:gzip, deflate, br Accept-Language:fr-FR,fr;q=0.8,en-US;q=0.6,en;q=0.4 Connection:keep-alive Content-Length:1609 Content-Type:application/json; charset=UTF-8
          Hide
          lukaszlenart Lukasz Lenart added a comment -

          It's hard to guess what's wrong, can you post source of your action and example AJAX request?

          Show
          lukaszlenart Lukasz Lenart added a comment - It's hard to guess what's wrong, can you post source of your action and example AJAX request?

            People

            • Assignee:
              lukaszlenart Lukasz Lenart
              Reporter:
              walkn COMBEAU
            • Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development