org.apache.struts2.interceptor
类 CookieInterceptor

java.lang.Object
  继承者 com.opensymphony.xwork2.interceptor.AbstractInterceptor
      继承者 org.apache.struts2.interceptor.CookieInterceptor
所有已实现的接口:
com.opensymphony.xwork2.interceptor.Interceptor, Serializable

public class CookieInterceptor
extends com.opensymphony.xwork2.interceptor.AbstractInterceptor

The aim of this intercepter is to set values in the stack/action based on cookie name/value of interest.

If an asterisk is present in cookiesName parameter, it will be assume that all cookies name are to be injected into struts' action, even though cookiesName is comma-separated by other values, e.g. (cookie1,*,cookie2).

If cookiesName is left empty it will assume that no cookie will be injected into Struts' action.

If an asterisk is present in cookiesValue parameter, it will assume that all cookies name irrespective of its value will be injected into Struts' action so long as the cookie name matches those specified in cookiesName parameter.

If cookiesValue is left empty it will assume that all cookie that match the cookieName parameter will be injected into Struts' action.

The action could implement CookiesAware in order to have a Map of filtered cookies set into it.

 

 <!--
   This example will inject cookies named either 'cookie1' or 'cookie2' whose
   value could be either 'cookie1value' or 'cookie2value' into Struts' action.
 -->
 <action ... >
    <interceptor-ref name="cookie">
        <param name="cookiesName">cookie1, cookie2</param>
        <param name="cookiesValue">cookie1value, cookie2value</param>
    </interceptor-ref>
    ....
 </action>


 <!--
      This example will inject cookies named either 'cookie1' or 'cookie2'
     regardless of their value into Struts' action.
 -->
 <action ... >
   <interceptor-ref name="cookie">
      <param name="cookiesName">cookie1, cookie2</param>
      <param name="cookiesValue">*</param>
   <interceptor-ref>
   ...
 </action>


 <!--
      This example will inject cookies named either 'cookie1' with value
      'cookie1value' or 'cookie2' with value 'cookie2value' into Struts'
      action.
 -->
 <action ... >
   <interceptor-ref name="cookie">
      <param name="cookiesName">cookie1</param>
      <param name="cookiesValue">cookie1value</param>
   </interceptor-ref>
   <interceptor-ref name="cookie">
      <param name="cookiesName"<cookie2</param>
     <param name="cookiesValue">cookie2value</param>
   </interceptor-ref>
   ....
 </action>

 <!--
    This example will inject any cookies regardless of its value into
    Struts' action.
  -->
 <action ... >
   <interceptor-ref name="cookie">
      <param name="cookiesName">*</param>
      <param name="cookiesValue">*</param>
   </interceptor-ref>
    ...
 </action>

 
 

另请参见:
CookiesAware, 序列化表格

构造方法摘要
CookieInterceptor()
           
 
方法摘要
 String intercept(com.opensymphony.xwork2.ActionInvocation invocation)
           
 void setAcceptCookieNames(String pattern)
          Set the acceptCookieNames pattern of allowed names of cookies to protect against remote command execution vulnerability
 void setCookiesName(String cookiesName)
          Set the cookiesName which if matched will allow the cookie to be injected into action, could be comma-separated string.
 void setCookiesValue(String cookiesValue)
          Set the cookiesValue which if matched (together with matching cookiesName) will caused the cookie to be injected into action, could be comma-separated string.
 
从类 com.opensymphony.xwork2.interceptor.AbstractInterceptor 继承的方法
destroy, init
 
从类 java.lang.Object 继承的方法
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

CookieInterceptor

public CookieInterceptor()
方法详细信息

setCookiesName

public void setCookiesName(String cookiesName)
Set the cookiesName which if matched will allow the cookie to be injected into action, could be comma-separated string.

参数:
cookiesName -

setCookiesValue

public void setCookiesValue(String cookiesValue)
Set the cookiesValue which if matched (together with matching cookiesName) will caused the cookie to be injected into action, could be comma-separated string.

参数:
cookiesValue -

setAcceptCookieNames

public void setAcceptCookieNames(String pattern)
Set the acceptCookieNames pattern of allowed names of cookies to protect against remote command execution vulnerability

参数:
pattern - used to check cookie name against

intercept

public String intercept(com.opensymphony.xwork2.ActionInvocation invocation)
                 throws Exception
指定者:
接口 com.opensymphony.xwork2.interceptor.Interceptor 中的 intercept
指定者:
com.opensymphony.xwork2.interceptor.AbstractInterceptor 中的 intercept
抛出:
Exception