java - ExtJS 成功操作未被调用

标签 java ajax json extjs struts2

我使用 struts2 作为服务器端,使用 ExtJS4 作为 UI。我有一个简单的表单,我将其提交到服务器。尽管我只是返回 ActionSupport.SUCCESS,但响应始终针对请求的失败情况。我正在使用 struts 的 json 插件以 json 格式返回响应。如何查看退回的商品?有人可以帮我解决这个问题吗?

 validateForm: function(button){
            var form=button.up('form').getForm();
            form.url='addData';
            form.submit({
                success: function(form, action) {
                    Ext.Msg.alert('Success', 'Submit success');
                },

                failure: function(form, action) {
                    Ext.Msg.alert('Failed', 'Error returned from the server');
                }
            });
    }

struts.xml

<package name="ELM29" extends="struts-default,json-default">
        <action name="addData" class="com.test.elm.action.Data"
            method="processData">
            <result type="json"></result>
        </action>
    </package>

Action 类别: 我有所有变量的 getter setter 和 Action 类扩展了 ActionSupport

public String processData(){

        System.out.println("Clip: "+getClipName());
        System.out.println("AS val: "+ActionSupport.SUCCESS);
        return ActionSupport.SUCCESS;

    }

另外,我想在网格中显示数据。我有一个返回 List 对象的方法。但我遇到了异常(exception)

Exception occurred during processing request: java.util.ArrayList cannot be cast to java.lang.String: java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.lang.String.

我无法找到这里出了什么问题。请帮助我纠正其中的错误。

最佳答案

我通过执行以下操作解决了该问题:

-创建了一个 boolean 变量成功 私有(private) boolean 成功

-添加了变量success的getter和setter方法

-在方法中将 success 的值设置为 true。在我的例子中,它是 processData()

通过这样做,在 json 响应中将有一个名为 success 的属性,其值设置为 true

希望它能帮助别人。!

关于java - ExtJS 成功操作未被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26881923/

相关文章:

java - 模拟匿名函数

php - 通知系统无法正常工作 JSON/PHP

c# - 如何使用转义为\u1234 的 unicode 字符返回 json 结果

Java控制IP TTL?

javascript - org.json - 尝试解析包含 html 字符串的 JSONArray 时出现 StackOverflowError

javascript - jQuery Ajax 等待每个函数

javascript - 单击监听器以 ajax 加载内容。纯javascript

java - jackson 解析复杂对象

javascript - 使用 JavaScript 从 JSON 文件获取图像并在 HTML img 标签中显示

java - EJB2 中的时间延迟