📄 servletconfiginterceptor.java
字号:
// Decompiled by Jad v1.5.8e2. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://kpdus.tripod.com/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi space
// Source File Name: ServletConfigInterceptor.java
package org.apache.struts2.interceptor;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.AbstractInterceptor;
import java.util.Map;
import javax.portlet.PortletRequest;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts2.StrutsStatics;
import org.apache.struts2.portlet.interceptor.PortletPrincipalProxy;
import org.apache.struts2.servlet.interceptor.ServletPrincipalProxy;
import org.apache.struts2.util.ServletContextAware;
// Referenced classes of package org.apache.struts2.interceptor:
// ServletRequestAware, ServletResponseAware, ParameterAware, RequestAware,
// SessionAware, ApplicationAware, PrincipalAware
public class ServletConfigInterceptor extends AbstractInterceptor
implements StrutsStatics
{
private static final long serialVersionUID = 0x86652615163479eL;
public ServletConfigInterceptor()
{
}
public String intercept(ActionInvocation invocation)
throws Exception
{
Object action = invocation.getAction();
ActionContext context = invocation.getInvocationContext();
if (action instanceof ServletRequestAware)
{
HttpServletRequest request = (HttpServletRequest)context.get("com.opensymphony.xwork2.dispatcher.HttpServletRequest");
((ServletRequestAware)action).setServletRequest(request);
}
if (action instanceof ServletResponseAware)
{
HttpServletResponse response = (HttpServletResponse)context.get("com.opensymphony.xwork2.dispatcher.HttpServletResponse");
((ServletResponseAware)action).setServletResponse(response);
}
if (action instanceof ParameterAware)
((ParameterAware)action).setParameters(context.getParameters());
if (action instanceof RequestAware)
((RequestAware)action).setRequest((Map)context.get("request"));
if (action instanceof SessionAware)
((SessionAware)action).setSession(context.getSession());
if (action instanceof ApplicationAware)
((ApplicationAware)action).setApplication(context.getApplication());
if (action instanceof PrincipalAware)
{
HttpServletRequest request = (HttpServletRequest)context.get("com.opensymphony.xwork2.dispatcher.HttpServletRequest");
Object portletRequest = context.get("struts.portlet.request");
if (portletRequest != null)
((PrincipalAware)action).setPrincipalProxy(new PortletPrincipalProxy((PortletRequest)portletRequest));
else
((PrincipalAware)action).setPrincipalProxy(new ServletPrincipalProxy(request));
}
if (action instanceof ServletContextAware)
{
ServletContext servletContext = (ServletContext)context.get("com.opensymphony.xwork2.dispatcher.ServletContext");
((ServletContextAware)action).setServletContext(servletContext);
}
return invocation.invoke();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -