1 Reply Latest reply on Nov 15, 2009 10:50 AM by troeng

    How to handle Exception in a jpdl flow?

      Hi,
      I have the following problem:


      I have a jpdl flow, a registration flow that takes a user through 4 pages from start to finnish. In page 2 I try to fetch the users contacts in Gmail, so the user enters gmail address and password, and I connect to gmail and fetch the contactlist.
      It works fine but when I enter incorrect logininformation in page 2, I get an exception that I handle in the following way:
      1. I want to let the user see page 2 again, and give him another try to enter correct login information, I also want to show a message to the user saying that wrong credentials try again.
      I have defined an exception class in pages.xml which makes a redirect to the page2 with a message that says try again.



      <exception class="my-own-exceptionclass">
      <redirect view-id="/register/invite.xhtml">
                     <message severity="error">#{org.jboss.seam.handledException.message}</message>
                </redirect>
      </exception>



      When I then enters incorrect credentials again, the flow continues to the last page (4) where I save the users account information. This is of course not how I want it, I want the user to see page 2 again and again until the user either enters correct information, or presses my button skip this step.


      I do have followed the example in
      http://seamframework.org/Community/HandlingErrorsWhenUsignJPDLPageflow
      but with the same result.


      I use Seam 2.1.1 and jbpm-jpdl-3.2.3.


      I would appreciate any help.
      Thanks in advance.

        • 1. Re: How to handle Exception in a jpdl flow?

          For the record, I solved this issue by adding a decision tag in my jpdl.xml so that page 2 navigates to the decision where I added a boolean function returning true or false depending of if there are any errors thrown. The errors is then added to the StatusMessages instance.