为什么我在使用 Ajax 发送数据时在 Struts 2 中收到 500(内部服务器错误)?

Why I am getting 500 (Internal Server Error) in Struts 2 while sending data using Ajax?

我正在尝试开发 struts 2 网络应用程序并通过 Ajax 发送数据,但控制台显示 500(内部服务器错误)。我尝试了一个日志,但没有找到解决方案。 但是在后端成功执行的操作意味着我的数据已更新但输出是Internal Server Error 这是我的代码..

ajax 函数

   function revertIbcData(mydata) {
            var paNo = $(mydata).attr("rollNo");
            var viNo = $(mydata).attr("idNo");
            alert(paNo + " " + viNo);

            $.ajax({
                type: 'GET',
                contentType: 'application/json;  charset=utf-8',
                dataType: "json",
                url: "revert.do",
                data: {rollNo: paNo, idNo: viNo},
                success: function (data) {
                    alert(data.msg);
                },
                error: function (abc, cba, errorThrown) {
                    alert('Error: ' + errorThrown);
                }
            });
        }

操作代码

    public String revertData() {
    try {
        conn = connect.getConnection();
        ibcDAO.revertIbcProcessDetail(conn, rollNo, idNo);
        msg = "Detail of " + rollNo + " and " + idNo + " reverted successfully.";
        System.out.println(msg);
        return "success";
    } catch (Exception e) {
        e.printStackTrace();
        return "success";
    } 
}

并且 struts.xml 是

    <action name="revert"  class="pac.ProcessAction" method="revertData">
        <result name="success" type="json"></result>                   
    </action>      

在revertData里面设置log,判断哪里出错了,查看这篇文章:http://tech.learnerandtutor.com/read-json-object-from-struts-2-action-by-jquery-ajax/

试试这个:

<action name="revert"  class="pac.ProcessAction" method="revertData">
       <result name="success" type="json">
         <param name="root">jsonString</param>
       </result>                   
    </action>   

这里"jsonString"应该是class级变量