Issue Details (XML | Word | Printable)

Key: SHALE-175
Type: Improvement Improvement
Status: Resolved Resolved
Resolution: Fixed
Priority: Major Major
Assignee: Unassigned
Reporter: Hermod Opstvedt
Votes: 3
Watchers: 2
Operations

If you were logged in you would be able to see more operations.
Shale

Dialog statemachine and errorconditions should be queryable

Created: 10/May/06 03:02 AM   Updated: 23/Jan/07 04:40 PM
Return to search
Component/s: Core
Affects Version/s: 1.0.3-SNAPSHOT
Fix Version/s: 1.0.4


 Description  « Hide
Hi

Having been fiddling around with the Shale dialogs, there is one thing that I feel could be improved on. The way it is now, if there is an error situation or if the user navigates away from a dialog and later on navigates to say the start of the dialog, an exception is raised. There is no way out of this, short of restarting the server. I think a more elegant sultion would be if the state-engine could be queried by for instance the bean that kicks off the dialog sequence. This way one could present a more meaningful and customizeable feedback to the user.


Hermod


 All   Comments   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Adam Brod added a comment - 07/Jun/06 04:33 AM
It seems that using the back-button will often get the dialog into the intractable error state. We don't have to be super back-button friendly, but we can't pollute the user's session and give them errors on everything they do, just because they hit the back button one time.

Dominique Jean-Prost added a comment - 21/Jun/06 05:53 PM
one of the problem is that the exception raised is very generic (ie IllegalArgumentException). I think it could be at least changed to something a bit more specific, for example : ShaleStateMachineUnsynchronizedException or whatever instead of the IllegalArgument.

Without needing a too much complex change that seems to be needed to fix the whole stuff, it could add a way to deal with the issue.

Craig McClanahan added a comment - 20/Oct/06 03:21 AM
While there is still a bit more work to do for browser buttons (and there's an open issue for that already), the current shale-dialog functionality provides a much more robust mechanism for dealing with exceptions thrown during execution of a dialog -- you can register a listener whose onException() method will be called when such an exception is thrown, and can therefore deal with it as desired. So, I'm going to mark this improvement request as fixed.