zl程序教程

您现在的位置是:首页 >  其他

当前栏目

StrutsResultSupport的利用详解编程语言

编程语言 详解 利用
2023-06-13 09:20:35 时间

在有非凡情形时;假如没有异常信息,然则有错误而且有错误信息等内容;此时也需要进行友爱的错误处置惩罚的话,那么可以借助StrutsResultSupport 返回效果类型来实现特定处置惩罚。此种体式格局先需要继续StrutsResultSupport ,然后可以在子类中获取本次请求的相关信息,再凭据相关信息进行效果处置惩罚:

 

package commons.struts2; 

import a href="http://lib.csdn.net/base/java" title="Java 常识库" target=_blank Java /a .io.PrintWriter; 

import javax.servlet.http.HttpServletResponse; 

import org.apache.struts2.dispatcher.StrutsResultSupport; 

import com.opensymphony.xwork2.ActionInvocation; 

 * result type for output string in action 

 * @author songwei,yaolei b Example: /b 

 * 
 

 * !-- START SNIPPET: example -- 

 * result name="success" type="string" 

 * param name="stringName" stringName /param 

 * /result 

 * !-- END SNIPPET: example -- 

 * 

*
*/
public class StringResultType extends StrutsResultSupport {
private static final long serialVersionUID = 1L;
private String contentTypeName;
private String stringName = "";
public StringResultType() {
super();
}
public StringResultType(String location) {
super(location);
}
protected void doExecute(String finalLocation, ActionInvocation invocation)
throws Exception {
HttpServletResponse response = (HttpServletResponse) invocation
.getInvocationContext().get(HTTP_RESPONSE);
// String contentType = (String)
// invocation.getStack().findValue(conditionalParse(contentTypeName,
// invocation));
String contentType = conditionalParse(contentTypeName, invocation);
if (contentType == null) {
contentType = "text/plain; charset=UTF-8";
}
response.setContentType(contentType);
PrintWriter out = response.getWriter();
// String result = conditionalParse(stringName, invocation);
String result = (String) invocation.getStack().findValue(stringName);
out.println(result);
out.flush();
out.close();
}
public String getContentTypeName() {
return contentTypeName;
}
public void setContentTypeName(String contentTypeName) {
this.contentTypeName = contentTypeName;
}
public String getStringName() {
return stringName;
}
public void setStringName(String stringName) {
this.stringName = stringName;
}
}

 

package test; 

import com.opensymphony.xwork2.ActionSupport; 

public class MyAction extends ActionSupport{ 

 String result="abc"; 

 public String ajax() { 

 return "ajaxResponse"; 

 // getter setter 

 public String getResult() { 

 return result; 

 public void setResult(String result) { 

 this.result = result; 

} 

!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd" struts package name="test" extends="struts-default" result-types result-type name="string" /result-type /result-types action name="myAction" result name="ajaxResponse" type="string" param name="stringName" result /param /result /action /package /struts

这里界说返回Action的String result变量,即“abc”。

 

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/11694.html

cjavaxml