|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjp.terasoluna.fw.web.thin.AbstractControlFilter<BlockageController>
jp.terasoluna.fw.web.thin.BlockageControlFilter
public class BlockageControlFilter
Performs business blockage check.
This class calls any BlockageController
instance which is specified in Bean definition file and transfers the business blockage check process of specified path.
The BlockageController instance performs the filter process of request from the browser.
When the path which is accessed is in business blockage state,
BlockageException
is thrown.
To use this function, perform the following settings in deployment descriptor (web.xml) and Bean definition file.
"Id" attribute which is defined in Bean definition file should be set as sampleBlockageController. In the "class"attribute of <bean>element, set the class that implements the
BlockageController
interface.
*To use this filter, the business should be identified from the request path.
<filter>
<filter-name>
blockageControlFilter]
</filter-name>
<filter-class>
jp.terasoluna.fw.web.thin.BlockageControlFilter
</filter-class>
<init-param>
<param-name>controller</param-name>
<param-value>
"sampleBlockageController"
</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>blockageControlFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<error-page>
<exception-type>
jp.terasoluna.fw.web.thin.BlockageException
</exception-type>
<location>
/blockageError.jsp
</location>
</error-page>
Bean definition file
<bean id="sampleBlockageController"
class="jp.terasoluna...SampleBlockageController" />
At the time of setting the id attribute of <bean> element which is defined in
Bean definition file in the "blockageController" which is the default value,
<init-param> element can be omitted from the <filter> element in
deployment descriptor (web.xml).
AuthenticationControlFilter
,
AuthenticationController
,
AuthorizationControlFilter
,
AuthorizationController
,
BlockageController
,
ServerBlockageControlFilter
,
ServerBlockageController
Field Summary | |
---|---|
private static java.lang.Class |
BLOCKAGE_CONTROLLER_CLASS
Controller class that transfers the business blockage process. |
private static java.lang.String |
BLOCKAGE_CONTROLLER_ERROR
Error code which indicates the failure in generating the business blockage controller. |
static java.lang.String |
BLOCKAGE_THRU_KEY
Key of "request" attribute which indicates that the request has passed through filter. |
protected static BlockageController |
controller
BlockageController instance. |
static java.lang.String |
DEFAULT_BLOCKAGE_BEAN_ID
Default id which is used in "id" attribute of <bean> element to fetch the implementation class of controller from DI container. |
private static org.apache.commons.logging.Log |
log
Log class. |
Fields inherited from class jp.terasoluna.fw.web.thin.AbstractControlFilter |
---|
config |
Constructor Summary | |
---|---|
BlockageControlFilter()
|
Method Summary | |
---|---|
void |
doFilter(javax.servlet.ServletRequest req,
javax.servlet.ServletResponse res,
javax.servlet.FilterChain chain)
Performs business blockage check. |
static BlockageController |
getBlockageController()
Returns BlockageController instance. |
protected java.lang.Class |
getControllerClass()
Returns the interface which should be implemented by the class that performs access control. |
java.lang.String |
getDefaultControllerBeanId()
Returns default id at the time of fetching controller from DI container. |
protected java.lang.String |
getErrorCode()
Returns error code that indicates the failure in generating the controller. |
void |
init(javax.servlet.FilterConfig config)
This method is called by the container when filter changes to Service Start state. After creating an instance of the Filter, container calls init method only once. In order to request the Filter to execute the filter process, init method should finish normally. Container cannot change the Filter to service state when the init method is any of the following. ServletException is thrown. When it does not get recovered within the time defined by container. When the implementation class of the controller does not exist or settings are abnormal. |
Methods inherited from class jp.terasoluna.fw.web.thin.AbstractControlFilter |
---|
destroy, getController, setConfig |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String BLOCKAGE_THRU_KEY
public static final java.lang.String DEFAULT_BLOCKAGE_BEAN_ID
private static final java.lang.String BLOCKAGE_CONTROLLER_ERROR
private static final java.lang.Class BLOCKAGE_CONTROLLER_CLASS
private static org.apache.commons.logging.Log log
protected static BlockageController controller
Constructor Detail |
---|
public BlockageControlFilter()
Method Detail |
---|
public static BlockageController getBlockageController()
public void init(javax.servlet.FilterConfig config) throws javax.servlet.ServletException
init
in interface javax.servlet.Filter
init
in class AbstractControlFilter<BlockageController>
config
- FilterConfig instance.
javax.servlet.ServletException
- Exception which is thrown at the time of abnormal initialization.Filter.init(javax.servlet.FilterConfig)
,
AbstractControlFilter
public void doFilter(javax.servlet.ServletRequest req, javax.servlet.ServletResponse res, javax.servlet.FilterChain chain) throws java.io.IOException, javax.servlet.ServletException
doFilter
in interface javax.servlet.Filter
doFilter
in class AbstractControlFilter<BlockageController>
req
- HTTP requestres
- HTTP responsechain
- Filter chain
java.io.IOException
- I/O error
javax.servlet.ServletException
- Servlet exceptionFilter.doFilter(javax.servlet.ServletRequest, javax.servlet.ServletResponse, javax.servlet.FilterChain)
protected java.lang.Class getControllerClass()
getControllerClass
in class AbstractControlFilter<BlockageController>
protected java.lang.String getErrorCode()
getErrorCode
in class AbstractControlFilter<BlockageController>
public java.lang.String getDefaultControllerBeanId()
getDefaultControllerBeanId
in class AbstractControlFilter<BlockageController>
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |