Win a copy of Kotlin in Action this week in the Kotlin forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic

Unclear about this ...  RSS feed

 
Hussein Baghdadi
clojure forum advocate
Bartender
Posts: 3479
Clojure Mac Objective C
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi all.
I studying Jasmine example from Mastering EJB book.
there is a MDB called OrderProcessorBean, the onMessage( ) method of this bean contains a comment from the authors which says :
" At this point, we could perform lots of tasks:
A call-out to a credit card company (perhaps through web services) to check the user's credit card rating and perform a debit. "
assume the following scenario :
we have a session bean that will send a message to the queue that OrderProcessorBean is listening to.
this MDB will use the information contained in the message to invoke a web service that will try to check the credit card of the user.
maybe the credit card is invalid, how can the session bean knows that ?
I think it is impossible since the messaging is asynchronous, there is no way that will allow the session bean to know this ...
someone shed some light here ?
thanks.
 
David Harkness
Ranch Hand
Posts: 1646
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
You are correct that if the session bean needs to know the response, then using an MDB to charge the card will not work. However, I just ordered an LCD (finally found a decent stackable coupon for the Dell 20.1" yay!) monitor, but my card won't be charged until the order is processed and and ready to ship. If it fails, I assume they'll cancel the order and send me a nasty email. The point is that sometimes immediacy isn't necessary.

Given that you'd probably at least verify the card and reserve the charge against it, this may be a bad example, but it's still valid.
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!