com.opensymphony.webwork.dwr
Class WebWorkDwrAccessControl

java.lang.Object
  extended by org.directwebremoting.impl.DefaultAccessControl
      extended by com.opensymphony.webwork.dwr.WebWorkDwrAccessControl
All Implemented Interfaces:
org.directwebremoting.extend.AccessControl

public class WebWorkDwrAccessControl
extends org.directwebremoting.impl.DefaultAccessControl

Control who should be accessing which methods on which classes, allowing WebWork to access classes under org.directwebremoting.webwork package.

To configure this, add the following in web.xml

 <servlet>
       <servlet-name>dwr</servlet-name>
       <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
       <init-param>
           <param-name>debug</param-name>
           <param-value>true</param-value>
       </init-param>
       <init-param>
           <param-name>org.directwebremoting.extend.AccessControl</param-name>
           <param-value>com.opensymphony.webwork.dwr.WebWorkDwrAccessControl</param-value>
       </init-param>
   </servlet>

   <servlet-mapping>
       <servlet-name>dwr</servlet-name>
       <url-pattern>/dwr/*</url-pattern>
   </servlet-mapping>
 

Version:
$Date$ $Id$
Author:
tmjee

Field Summary
static String WEBWORK_INTEGRATION_PACKAGE
           
 
Fields inherited from class org.directwebremoting.impl.DefaultAccessControl
exposeInternals, PACKAGE_DWR_DENY, policyMap, roleRestrictMap
 
Constructor Summary
WebWorkDwrAccessControl()
           
 
Method Summary
protected  void assertAreParametersDwrInternal(Method method)
          Check the parameters are not DWR internal but allows it if its webwork integration WEBWORK_INTEGRATION_PACKAGE.
protected  void assertIsClassDwrInternal(org.directwebremoting.extend.Creator creator)
          Is the class that we are executing a method on part of DWR? if so deny but if its WebWork integration stuff, allows it WEBWORK_INTEGRATION_PACKAGE.
 
Methods inherited from class org.directwebremoting.impl.DefaultAccessControl
addExcludeRule, addIncludeRule, addRoleRestriction, assertAllowedByRoles, assertAuthenticationIsValid, assertExecutionIsPossible, assertIsDisplayable, assertIsExecutable, assertIsMethodPublic, assertIsNotOnBaseObject, assertIsRestrictedByRole, getPolicy, getRoleRestrictions, setExposeInternals
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

WEBWORK_INTEGRATION_PACKAGE

public static final String WEBWORK_INTEGRATION_PACKAGE
See Also:
Constant Field Values
Constructor Detail

WebWorkDwrAccessControl

public WebWorkDwrAccessControl()
Method Detail

assertAreParametersDwrInternal

protected void assertAreParametersDwrInternal(Method method)
Check the parameters are not DWR internal but allows it if its webwork integration WEBWORK_INTEGRATION_PACKAGE.

Overrides:
assertAreParametersDwrInternal in class org.directwebremoting.impl.DefaultAccessControl
Parameters:
method - The method that we want to execute

assertIsClassDwrInternal

protected void assertIsClassDwrInternal(org.directwebremoting.extend.Creator creator)
Is the class that we are executing a method on part of DWR? if so deny but if its WebWork integration stuff, allows it WEBWORK_INTEGRATION_PACKAGE.

Overrides:
assertIsClassDwrInternal in class org.directwebremoting.impl.DefaultAccessControl
Parameters:
creator - The Creator that exposes the class

WebWork Project Page