Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/439.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 操作错误未显示_Java_Javascript_Jquery_Jsp_Struts2 - Fatal编程技术网

Java 操作错误未显示

Java 操作错误未显示,java,javascript,jquery,jsp,struts2,Java,Javascript,Jquery,Jsp,Struts2,如果Action类返回错误,我想在ErrorDiv中加载Error.jsp。我正在做一个AJAX调用 JS: success: function(result){ if(result === 'success') alert('Database Updated Successfully!'); else{ $('#ErrorDiv').load('/gma/pages/Error.jsp'); } }

如果
Action
类返回错误,我想在
ErrorDiv
中加载
Error.jsp
。我正在做一个AJAX调用

JS:

success: function(result){    
    if(result === 'success')
        alert('Database Updated Successfully!');
    else{
         $('#ErrorDiv').load('/gma/pages/Error.jsp');
    }
}

                
<action name="updateThresholdParameters"
class="cdot.oss.cmsat.gma.struts.ConfigureTspThresholdAction" method="updateThresholdParameters">

<result name="success" type="json">
    <param name="root">result</param>
</result> 

<result name="error">pages/Error.jsp</result>
Error.jsp

success: function(result){    
    if(result === 'success')
        alert('Database Updated Successfully!');
    else{
         $('#ErrorDiv').load('/gma/pages/Error.jsp');
    }
}

                
<action name="updateThresholdParameters"
class="cdot.oss.cmsat.gma.struts.ConfigureTspThresholdAction" method="updateThresholdParameters">

<result name="success" type="json">
    <param name="root">result</param>
</result> 

<result name="error">pages/Error.jsp</result>

但是,不会显示操作错误。在我选中的firebug中,响应
GET
Error.jsp
,因为
部分为空

为什么没有显示
actionError

编辑:

success: function(result){    
    if(result === 'success')
        alert('Database Updated Successfully!');
    else{
         $('#ErrorDiv').load('/gma/pages/Error.jsp');
    }
}

                
<action name="updateThresholdParameters"
class="cdot.oss.cmsat.gma.struts.ConfigureTspThresholdAction" method="updateThresholdParameters">

<result name="success" type="json">
    <param name="root">result</param>
</result> 

<result name="error">pages/Error.jsp</result>
动作类

try{
slsConfigureTspThresholdRemote.setThresholdParameters(circleId, tspId, thresholdTypeFlag, thresholdParametersList);

}
catch (Exception e){    
    addActionError(e.getMessage());
    e.printStackTrace();
    
    result = "error";
    return ERROR;
}
struts.xml:

success: function(result){    
    if(result === 'success')
        alert('Database Updated Successfully!');
    else{
         $('#ErrorDiv').load('/gma/pages/Error.jsp');
    }
}

                
<action name="updateThresholdParameters"
class="cdot.oss.cmsat.gma.struts.ConfigureTspThresholdAction" method="updateThresholdParameters">

<result name="success" type="json">
    <param name="root">result</param>
</result> 

<result name="error">pages/Error.jsp</result>

验证错误仅适用于同一请求。此外,对JSP的直接访问可能由web容器处理,而Struts标记将不起作用

如果希望保留前一个请求中的验证错误,则应使用操作呈现JSP,并且该操作应运行

如果要使用相同的响应返回不同的结果,可以为每个结果设置不同的状态代码

在客户机上,您可以检查Ajax响应返回的状态代码并执行相应的操作

success: function(data, textStatus, jqXHR){
    if(jqXHR.status == 200) {                      
      alert('Database Updated Successfully!'); 
    }
}
error: function(data, textStatus, jqXHR){
    if(jqXHR.status == 400) {
      $('#ErrorDiv').html(data);        
    }     
}
要在JSP中显示错误,请将以下内容添加到scriptlet代码中

response.setStatus(400);

你能添加你的动作部分和struts.xml动作吗?@VinothKrishnan:Have addedIt不是一个验证错误。我更新了我的问题并发布了ACtion类。请参见.If而不是response.setStatus(201);我用201,它会是一样的吗??我使用的是struts2 JSON pluginNo,它将不一样。有什么区别?类型不同。