[ http://mc4j.org/jira/browse/STS-384?page=all ]
Ben Gunter closed STS-384.
--------------------------
Resolution: Not a Bug
> Helper on ActionBean isn't being called
> ---------------------------------------
>
> Key: STS-384
> URL: http://mc4j.org/jira/browse/STS-384
> Project: Stripes
> Issue Type: Bug
> Components: ActionBean Dispatching
> Affects Versions: Release 1.4.2, Release 1.4.3
> Environment: TomCat 6, Java 5.0, Hibernate 3
> Reporter: Tom Wirschell
> Assigned To: Tim Fennell
>
> Below is the log output of a form submission to a Stripes actionbean:
> 2007-06-11 02:15:01,968 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.StripesFilter - Intercepting request to
> URL: /arkanoid/admin/eiercase/MenuGerecht.action
> 2007-06-11 02:15:01,968 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.StripesFilter - LocalePicker selected
> locale: en_US
> 2007-06-11 02:15:01,969 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.StripesFilter - LocalePicker did not pick
> a character encoding, using default: null
> 2007-06-11 02:15:01,969 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.DispatcherServlet - Dispatching request to
> URL: /arkanoid/admin/eiercase/MenuGerecht.action
> 2007-06-11 02:15:01,969 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.ExecutionContext - Transitioning to
> lifecycle stage ActionBeanResolution
> 2007-06-11 02:15:01,969 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.ExecutionContext - Transitioning to
> lifecycle stage HandlerResolution
> 2007-06-11 02:15:01,969 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.DispatcherHelper - Resolved event:
> saveNew; will invoke: MenuGerechtActionBean.saveNew()
> 2007-06-11 02:15:01,969 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.ExecutionContext - Transitioning to
> lifecycle stage BindingAndValidation
> 2007-06-11 02:15:01,970 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.DefaultActionBeanPropertyBinder - Running
> required field validation on bean class
> nl.radrace.web.admin.eiercase.MenuGerechtActionBean
> 2007-06-11 02:15:01,971 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.DefaultActionBeanPropertyBinder - Running
> binding for property with name: menuGerechtNaam
> 2007-06-11 02:15:01,972 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.DefaultActionBeanPropertyBinder -
> Converting 1 value(s) using converter [EMAIL PROTECTED]
> 2007-06-11 02:15:01,979 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.DefaultActionBeanPropertyBinder - Running
> binding for property with name: menuGerechtPrijs
> 2007-06-11 02:15:01,979 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.DefaultActionBeanPropertyBinder -
> Converting 1 value(s) using converter [EMAIL PROTECTED]
> 2007-06-11 02:15:01,979 [http-8080-2] DEBUG
> nl.radrace.web.admin.eiercase.MenuGerechtActionBean - ENTER:
> setMenuGerechtPrijs
> 2007-06-11 02:15:01,979 [http-8080-2] DEBUG
> nl.radrace.web.admin.eiercase.MenuGerechtActionBean - EXIT:
> setMenuGerechtPrijs
> 2007-06-11 02:15:01,980 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.DefaultActionBeanPropertyBinder - Running
> binding for property with name: menuGerechtMenuId
> 2007-06-11 02:15:01,980 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.DefaultActionBeanPropertyBinder -
> Converting 1 value(s) using converter [EMAIL PROTECTED]
> 2007-06-11 02:15:01,980 [http-8080-2] DEBUG
> nl.radrace.web.admin.eiercase.MenuGerechtActionBean - ENTER:
> setMenuGerechtMenuId
> 2007-06-11 02:15:01,980 [http-8080-2] DEBUG
> nl.radrace.web.admin.eiercase.MenuGerechtActionBean - EXIT:
> setMenuGerechtMenuId
> 2007-06-11 02:15:01,980 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.DefaultActionBeanPropertyBinder - Running
> binding for property with name: menuGerechtGerechtId
> 2007-06-11 02:15:01,980 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.DefaultActionBeanPropertyBinder -
> Converting 1 value(s) using converter [EMAIL PROTECTED]
> 2007-06-11 02:15:01,980 [http-8080-2] DEBUG
> nl.radrace.web.admin.eiercase.MenuGerechtActionBean - ENTER:
> setMenuGerechtGerechtId
> 2007-06-11 02:15:01,980 [http-8080-2] DEBUG
> nl.radrace.web.admin.eiercase.MenuGerechtActionBean - EXIT:
> setMenuGerechtGerechtId
> 2007-06-11 02:15:01,981 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.ExecutionContext - Transitioning to
> lifecycle stage CustomValidation
> 2007-06-11 02:15:01,982 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.ExecutionContext - Transitioning to
> lifecycle stage ResolutionExecution
> 2007-06-11 02:15:01,983 [http-8080-2] DEBUG
> net.sourceforge.stripes.action.ForwardResolution - Forwarding to URL:
> /WEB-INF/jsp/admin/eiercase/MenuGerecht.jsp
> The DispatcherHelper claims that it will invoke the
> MenuGerechtActionBean.saveNew() handler, however it never does. In fact, it
> doesn't even call the configured validationmethod, as evidenced by the logs
> above.
> When I invoke the actionbean's create handler via a stripes:link the
> following is logged:
> 2007-06-11 02:14:48,335 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.StripesFilter - Intercepting request to
> URL: /arkanoid/admin/eiercase/MenuGerecht.action
> 2007-06-11 02:14:48,335 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.StripesFilter - LocalePicker selected
> locale: en_US
> 2007-06-11 02:14:48,335 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.StripesFilter - LocalePicker did not pick
> a character encoding, using default: null
> 2007-06-11 02:14:48,335 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.DispatcherServlet - Dispatching request to
> URL: /arkanoid/admin/eiercase/MenuGerecht.action
> 2007-06-11 02:14:48,336 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.ExecutionContext - Transitioning to
> lifecycle stage ActionBeanResolution
> 2007-06-11 02:14:48,339 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.ExecutionContext - Transitioning to
> lifecycle stage HandlerResolution
> 2007-06-11 02:14:48,340 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.DispatcherHelper - Resolved event: create;
> will invoke: MenuGerechtActionBean.create()
> 2007-06-11 02:14:48,340 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.ExecutionContext - Transitioning to
> lifecycle stage BindingAndValidation
> 2007-06-11 02:14:48,340 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.DefaultActionBeanPropertyBinder - Running
> required field validation on bean class
> nl.radrace.web.admin.eiercase.MenuGerechtActionBean
> 2007-06-11 02:14:48,340 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.ExecutionContext - Transitioning to
> lifecycle stage CustomValidation
> 2007-06-11 02:14:48,341 [http-8080-2] ERROR
> nl.radrace.web.admin.eiercase.MenuGerechtActionBean - Ping
> 2007-06-11 02:14:48,411 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.ExecutionContext - Transitioning to
> lifecycle stage EventHandling
> 2007-06-11 02:14:48,411 [http-8080-2] DEBUG
> nl.radrace.web.admin.eiercase.MenuGerechtActionBean - ENTER: create
> 2007-06-11 02:14:48,411 [http-8080-2] DEBUG
> nl.radrace.web.admin.eiercase.MenuGerechtActionBean - EXIT: create
> 2007-06-11 02:14:48,412 [http-8080-2] DEBUG
> net.sourceforge.stripes.controller.ExecutionContext - Transitioning to
> lifecycle stage ResolutionExecution
> 2007-06-11 02:14:48,412 [http-8080-2] DEBUG
> net.sourceforge.stripes.action.ForwardResolution - Forwarding to URL:
> /WEB-INF/jsp/admin/eiercase/MenuGerecht.jsp
> Note the presence of the Ping ERROR line from the validationmethod and the
> ENTER and EXIT lines from the create method.
> The mentioned methods look like this:
> public Resolution create() {
> logger.debug("ENTER: create");
> setViewMode(ViewMode.CREATE);
> logger.debug("EXIT: create");
> return forwardToAdminMenuGerechtDetailPage();
> }
> @HandlesEvent("saveNew")
> public Resolution saveNew() {
> logger.debug("ENTER: saveNew");
> menuGerecht = new MenuGerecht();
> menuGerecht = fillMenuGerecht(menuGerecht);
> menuGerecht =
> AvailableServices.getEiercase().saveMenuGerecht(getContext(), menuGerecht);
> if (menuGerecht == null) {
> menuGerecht = new MenuGerecht();
> menuGerecht = fillMenuGerecht(menuGerecht);
> setViewMode(ViewMode.CREATE);
> } else {
> setViewMode(ViewMode.READ);
> }
> logger.debug("EXIT: saveNew");
> return forwardToAdminMenuGerechtDetailPage();
> }
> @ValidationMethod
> public void verifyAuthorization(ValidationErrors errors) {
> logger.error("Ping");
> if (verifyAuthorization() == false) {
> addGlobalError(errors,"Access denied.");
> }
> }
> The HandlesEvent annotation was my most recent attempt at getting this method
> called.
> I'm seeing this problem with both Stripes 1.4.2 and 1.4.3. No difference, and
> no hint as to why it's not doing what it should be doing. I've generated this
> class along with a whole slew of other classes, and none of them exhibit this
> behaviour. I've run out of things to try. It's as if a ValidationMethod is
> being run before the one I provide (which is the only one I have in my code),
> fails in such a way that my own ValidationMethod isn't called anymore and
> sends the user back to the sourcePage. Hopefully someone here knows something
> I could try to investigate this issue further, as currently I'm completely
> stuck.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://mc4j.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Stripes-development mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/stripes-development