繁体中文
设为首页
加入收藏
当前位置:JSP技术首页 >> 资料/其它 >> 半翻译半整理的一点struts的东东,很浅显的,欢迎指正(三)

半翻译半整理的一点struts的东东,很浅显的,欢迎指正(三)

2004-10-01 08:26:10  作者:  来源:互联网  浏览次数:8  文字大小:【】【】【
简介:4.    RequestProcessor: 有关的ActionServlet的实际处理都是在RequestProcessor类中完成的。我们也可以创建我们自己的RequestProcessor类,这需要继承RequestProcessor类。并且要有一个缺...
关键字:东东 浅显 struts 一点

4. RequestProcessor:

有关的ActionServlet的实际处理都是在RequestProcessor类中完成的。我们也可以创建我们自己的RequestProcessor类,这需要继承RequestProcessor类。并且要有一个缺省的空的构造器。在这个自定义的RequestProcessor类中重写相关的方法,一般都是重写processXXX()方法。

◆ 扩展RequestProcessor类

扩展Processor类按下面的步骤完成:

① 创建一个继承于org.apache.struts.action.RequestProcessor的类

② 添加一个缺省的空的构造器

③ 实现想要重写的方法

例子:

package wiley;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javax.servlet.http.HttpServlet;

import javax.servlet.ServletException;

import javax.servlet.http.Cookie;

import java.io.IOException;

import java.util.Enumeration;

import org.apache.struts.action.RequestProcessor;

public class WileyRequestProcessor extends RequestProcessor {

public WileyRequestProcessor() {

}

public boolean processPreprocess(HttpServletRequest request, HttpServletResponse response) {

log("----------processPreprocess Logging--------------");

log("Request URI = " + request.getRequestURI());

log("Context Path = " + request.getContextPath());

Cookie cookies[] = request.getCookies();

if (cookies != null) {

for (int i = 0; i < cookies.length; i++) {

log("Cookie = " + cookies[i].getName() + " = " +

cookies[i].getValue());

}

}

Enumeration headerNames = request.getHeaderNames();

while (headerNames.hasMoreElements()) {

String headerName =(String) headerNames.nextElement();

Enumeration headerValues =request.getHeaders(headerName);

while (headerValues.hasMoreElements()) {

String headerValue =(String) headerValues.nextElement();

log("Header = " + headerName + " = " + headerValue);

}

}

log("Locale = " + request.getLocale());

log("Method = " + request.getMethod());

log("Path Info = " + request.getPathInfo());

log("Protocol = " + request.getProtocol());

log("Remote Address = " + request.getRemoteAddr());

log("Remote Host = " + request.getRemoteHost());

log("Remote User = " + request.getRemoteUser());

log("Requested Session Id = " + request.getRequestedSessionId());

log("Scheme = " + request.getScheme());

log("Server Name = " + request.getServerName());

log("Server Port = " + request.getServerPort());

log("Servlet Path = " + request.getServletPath());

log("Secure = " + request.isSecure());

log("-------------------------------------------------");

return true;

}

}

◆ 配置RequestProcessor:

在struts-config.xml文件中配置元素。如下:

详细配置信息见”struts-config.xml配置文件讲解”。

责任编辑:admin
相关文章