I believe that the <set-property> will try to set a property in the
ControllerConfig class. So you would need to extend ControllerConfig and put
your "ignoreSessionCheckPath" property with its getters/setters in that
class.

Then you in the struts-config.xml you can configure it to use your custom
ControllerConfig like this:

 <controller
             contentType="text/html;charset=UTF-8"
             debug="3"
             locale="true"
             nocache="true"
             className="myPackage.MyControllerConfig"
   processorClass="com.americandatacorp.security.SecureRequestProcessor">
             <set-property property="ignoreSessionCheckPath"
 value="/login.html"/>
         </controller>


Then in your custom request processor you can use the following to get the
property value:

((MyControllerConfig)moduleConfig.getControllerConfig()).getIgnoreSessionChe
ckPath();


Niall


----- Original Message ----- 
From: "Josh Holtzman" <[EMAIL PROTECTED]>
To: "'Struts Users Mailing List'" <[EMAIL PROTECTED]>
Sent: Saturday, April 24, 2004 2:44 AM
Subject: Custom Request Processor is failing at startup.


> I have created a custom RequestProcessor that extends the default
> RequestProcessor.
>
> I would like to initialize it with a parameter from config file.  Using
the
> <set-property> element I've done the following in my config file:
>
> <controller
>             contentType="text/html;charset=UTF-8"
>             debug="3"
>             locale="true"
>             nocache="true"
>
> processorClass="com.americandatacorp.security.SecureRequestProcessor">
>             <set-property property="ignoreSessionCheckPath"
> value="/login.html"/>
>         </controller>
>
> And within my Request Processor:
>
> private String ignoreSessionCheckPath = "";
>
>  public void setIgnoreSessionCheckPath( String ignoreSessionCheckPath ) {
>         this.ignoreSessionCheckPath = ignoreSessionCheckPath;
>     }
>
>     public String getIgnoreSessionCheckPath( ) {
>         return this.ignoreSessionCheckPath;
>     }
>
> When I try and load the application I receive the following error included
> below.
>
> Have I done something wrong in trying to set the property of this bean?  I
> believe I have named the ignoreSessionCheckPath variable and accessor and
> mutator properties to match the property name in the config file.
>
> Any suggestions would be greatly appreciated.
>
> Regards,
>
> Josh
>
>
> 23/Apr/2004:17:30:48] WARNING ( 9992): CORE3283: stderr: [ERROR]
Digester -
> -Begin event threw exception <java.lang.NoSuchMethodException: Bean has no
> property named ignoreSessionCheckPath>java.lang.NoSuchMethodException:
Bean
> has no property named ignoreSessionCheckPath
> [23/Apr/2004:17:30:48] WARNING ( 9992): CORE3283: stderr:  at
>
org.apache.commons.digester.SetPropertyRule.begin(SetPropertyRule.java:192)
> [23/Apr/2004:17:30:48] WARNING ( 9992): CORE3283: stderr:  at
> org.apache.commons.digester.Rule.begin(Rule.java:200)
> [23/Apr/2004:17:30:48] WARNING ( 9992): CORE3283: stderr:  at
> org.apache.commons.digester.Digester.startElement(Digester.java:1273)
> [23/Apr/2004:17:30:48] WARNING ( 9992): CORE3283: stderr:  at
> org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1533)
> [23/Apr/2004:17:30:48] WARNING ( 9992): CORE3283: stderr:  at
> org.apache.crimson.parser.Parser2.content(Parser2.java:1824)
> [23/Apr/2004:17:30:48] WARNING ( 9992): CORE3283: stderr:  at
> org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1552)
> [23/Apr/2004:17:30:48] WARNING ( 9992): CORE3283: stderr:  at
> org.apache.crimson.parser.Parser2.content(Parser2.java:1824)
> [23/Apr/2004:17:30:48] WARNING ( 9992): CORE3283: stderr:  at
> org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1552)
> [23/Apr/2004:17:30:48] WARNING ( 9992): CORE3283: stderr:  at
> org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:534)
> [23/Apr/2004:17:30:48] WARNING ( 9992): CORE3283: stderr:  at
> org.apache.crimson.parser.Parser2.parse(Parser2.java:318)
> [23/Apr/2004:17:30:48] WARNING ( 9992): CORE3283: stderr:  at
> org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:442)
> [23/Apr/2004:17:30:48] WARNING ( 9992): CORE3283: stderr:  at
> org.apache.commons.digester.Digester.parse(Digester.java:1548)
> [23/Apr/2004:17:30:48] WARNING ( 9992): CORE3283: stderr:  at
>
org.apache.struts.action.ActionServlet.parseModuleConfigFile(ActionServlet.j
> ava:1006)
> [23/Apr/2004:17:30:48] WARNING ( 9992): CORE3283: stderr:  at
>
org.apache.struts.action.ActionServlet.initModuleConfig(ActionServlet.java:9
> 55)
> [23/Apr/2004:17:30:48] WARNING ( 9992): CORE3283: stderr:  at
> org.apache.struts.action.ActionServlet.init(ActionServlet.java:482)
> [23/Apr/2004:17:30:48] WARNING ( 9992): CORE3283: stderr:  at
> javax.servlet.GenericServlet.init(GenericServlet.java:258)
> [23/Apr/2004:17:30:48] WARNING ( 9992): CORE3283: stderr:  at
>
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:92
> 1)
> [23/Apr/2004:17:30:48] WARNING ( 9992): CORE3283: stderr:  at
> org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:813)
> [23/Apr/2004:17:30:48] WARNING ( 9992): CORE3283: stderr:  at
>
org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:
> 3355)
> [23/Apr/2004:17:30:48] WARNING ( 9992): CORE3283: stderr:  at
> org.apache.catalina.core.StandardContext.reload(StandardContext.java:2568)
> [23/Apr/2004:17:30:48] WARNING ( 9992): CORE3283: stderr:  at
>
org.apache.catalina.loader.WebappContextNotifier.run(WebappLoader.java:1364)
> [23/Apr/2004:17:30:48] WARNING ( 9992): CORE3283: stderr:  at
> java.lang.Thread.run(Thread.java:536)
> [23/Apr/2004:17:30:48] WARNING ( 9992): CORE3283: stderr: [ERROR]
> ActionServlet - -Parsing error processing resource path
> <java.lang.NoSuchMethodException: Bean has no property named
> ignoreSessionCheckPath>java.lang.NoSuchMethodException: Bean has no
property
> named ignoreSessionCheckPath
> [23/Apr/2004:17:30:48] SEVERE ( 9992): WebModule[]: Servlet  threw load()
> exception
> javax.servlet.UnavailableException: Parsing error processing resource path
>  at
>
org.apache.struts.action.ActionServlet.handleConfigException(ActionServlet.j
> ava:1035)
>  at
>
org.apache.struts.action.ActionServlet.parseModuleConfigFile(ActionServlet.j
> ava:1014)
>  at
>
org.apache.struts.action.ActionServlet.initModuleConfig(ActionServlet.java:9
> 55)
>  at org.apache.struts.action.ActionServlet.init(ActionServlet.java:482)
>  at javax.servlet.GenericServlet.init(GenericServlet.java:258)
>  at
>
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:92
> 1)
>  at
org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:813)
>  at
>
org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:
> 3355)
>  at
> org.apache.catalina.core.StandardContext.reload(StandardContext.java:2568)
>  at
>
org.apache.catalina.loader.WebappContextNotifier.run(WebappLoader.java:1364)
>  at java.lang.Thread.run(Thread.java:536)
>
>
>
> Josh Holtzman
>
> American Data Company
>
> [EMAIL PROTECTED]
>
> Voice: (310) 470-1257
>
> Fax:    (310) 362-8454
>
>
>
> Sun Microsystems iForce Partner
>
>
>



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to