Hello,

I have an action with a prepare method. The prepare method loads some objects to operate on for the editing, so I have the interceptor stack setup with the params, prepare, params interceptors. My prepare method is

   public void prepareCreate () {
       if (m_projectId == null) {
           throw new IllegalArgumentException ("Project ID is missing.");
       }
       m_project = m_projectService.getProject (m_projectId);
       if (m_project == null) {
throw new IllegalArgumentException ("No project with the provided ID exists.");
       }

So, if no project id is set or it's not a valid id, I want to show an error page. Problem is the exception is caught and a warning is logged

java.lang.reflect.InvocationTargetException
       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
at com.opensymphony.xwork2.interceptor.PrefixMethodInvocationUtil.invokePrefixMethod(PrefixMethodInvocationUtil.java:111) at com.opensymphony.xwork2.interceptor.PrepareInterceptor.intercept(PrepareInterceptor.java:103) at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:219) at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:218) at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455) at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:216)

With WebWork 2.2 the exception would be handled the same way as an exception during action execution, so you could use the <global-exception-mapping> and <global-results> to send users to an error page.

Is this something that was overlooked or is there an alternate way to accomplish this?

Thanks,
Rich

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

Reply via email to