1 Reply Latest reply on Mar 28, 2007 11:06 AM by Gavin King

    Confusion on Conversation, Event-Observe, and Bijection

    Bradley Smith Master

      Hello,

      I have a SFSB1 - it has an a field that is marked @In @Out. This same bean has an @Observer method that listens for an event raised by another SFSB2.

      Here is the trouble I am having. In a conversation, I click a link which invokes a method on SFSB2 - this method in SFSB2 is annotated with @RaiseEvent("MyEvent"), which SFSB1 is 'Observing'. When the @Observer("MyEvent") method gets invoked (due to the event), SFSB1 is throwing a NullPointerException on the field marked @In @Out.

      09:28:35,015 ERROR org.jboss.seam.exceptions.DebugPageHandler - redirecting to debug page
      org.jboss.seam.RequiredException: @Out attribute requires non-null value: realmManager.application
      ....
      


      When I coded this, I assumed that @RaiseEvent would fire after outjection occurs on the SFSB1 method - i.e.

      invoke SFSB1 method
      - @In occurs
      - method proceeds
      - @Out occurs
      - @RaiseEvent fires

      from the exception, this looks like what is actually happening is:

      invoke SFSB1 method
      - @In occurs
      - method proceeds
      - @RaiseEvent fires
      - @Out occurs (?)

      Is this second case what is actually happending? If so, isn't the first case a better way to go if you want to have bijection work with raise+observe events?

      Thanks