我有一个结果类型为json的Struts2操作。该操作从Ajax调用,并在客户端接收响应(ArrayList)。这工作正常。 现在,我需要将操作重定向到某个错误页面,以防出现任何登录错误。因此,我尝试包含一个结果类型,以便可以调用JSP页面。但是,它不起作用。请帮忙。
我在Struts.xml中的操作
<action name="stocktransferorder" class="com.app.action.StockTransferOrderAction"
method="createSTO">
<result name="jsonStockTransferOrderSuccess" type="json" />
<result name="error" type="dispatcher">/jsp/loginError.jsp</result>
</action>
我的Java代码
String s = (String) session.getAttribute("SAPUSERID");
if (s != null && s.length() > 0) {
// My code goes here
return "jsonStockTransferOrderSuccess";
else
{
return "error";
}
}
在控制台中获取以下内容并且屏幕上没有任何内容
11:38:49,573 DEBUG ServletDispatcherResult:72 - Forwarding to location /jsp/loginError.jsp
11:38:49,573 DEBUG InstantiatingNullHandler:72 - Entering nullPropertyValue [target=[com.app.action.StockTransferOrderAction@19ae493, com.opensymphony.xwork2.DefaultTextProvider@1dedb45], property=struts]
11:38:49,574 DEBUG InstantiatingNullHandler:72 - Entering nullPropertyValue [target=[com.app.action.StockTransferOrderAction@19ae493, com.opensymphony.xwork2.DefaultTextProvider@1dedb45], property=org]
11:38:49,607 DEBUG InstantiatingNullHandler:72 - Entering nullPropertyValue [target=[com.app.action.StockTransferOrderAction@19ae493, com.opensymphony.xwork2.DefaultTextProvider@1dedb45], property=locale]
答案 0 :(得分:0)
而不是结果type =“dispatcher”尝试type =“redirect”,因为你只想重定向到loginerror页面