Solved

product catalog

Posted on 2010-09-06
3
356 Views
Last Modified: 2012-05-10
This is from  SCEA study guide  . I don't understand the problem clearly. Here is the question:

You are architecting an online ordering application with these requirements:

Users access the system over the Internet using HTML.
An email message is sent to the user confirming the order.
Users must log in and are validated using LDAP.
The product catalog is stored in a relational database.
All orders are logged to the internal fulfillment system.
Orders must not be lost.

Which Java EE technology should be used to send orders to the fulfillment system?
A. JNDI
B. JMS
C. JAX-WS
D. RMI-IIOP

My Question:

I don't understand the meaning of this text ..
" ..All orders are logged to the internal fulfillment system..."

what is " internal fulfillment system"  ??  Could you please clarify this line.
0
Comment
Question by:cofactor
  • 2
3 Comments
 
LVL 10

Expert Comment

by:Hegemon
ID: 33610837
I think it means the "order execution / processing" system. The question is about the "order entry" part where the entered orders are stored in the system to be later processed by the fulfillment /execution module.
0
 

Author Comment

by:cofactor
ID: 33624833
Answer is (B)JMS.
I'm not happy with the answer (B).
it said "All orders are logged to the internal fulfillment system"
a database could be used to log the order.  That statement does not induce to take JMS into account.
comments please.

 
0
 
LVL 10

Accepted Solution

by:
Hegemon earned 150 total points
ID: 33628103
Yes it is not very clear but JMS looks the correct answer because:

1. "An email message is sent to the user confirming the order." - this probably implies that order processing resulting in an email being sent has to be done asynchronously due to all possible email-related delays. Even not considering emails, it is probably still desirable to uncouple these two processes - order entry and order processing. The former is likely to finish quickly as the order is entered/logged, the latter can be invoked later and take some time.

2. "Orders must not be lost" - of the offered choices, nothing else offers any persistence solution, while with durable JMS subscription the orders can be persisted. One can argue that it is also possible to persist order at the "other" end of the JAX-WS or RMI communication, but the question is probably about "this" end.

- a database could be used to log the order.
Yes but it is not mentioned as a valid answer.

3. The answer (A) is clearly not a valid choice, the answers (C) and (D) will result in the order entry system (the online ordering application) and the "internal fullfillment system" to be aware of each either or coupled tighter than in case of JMS. At least the online application will need to know something about the internal system's API, WS or RMI. Also I don't know if asynchronous RMI exists, in case of WS, asynchronous calls do not guarantee that the order is persisted/logged.

Just thoughts :)
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction This article is the last of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers our test design approach and then goes through a simple test case example, how …
Java functions are among the best things for programmers to work with as Java sites can be very easy to read and prepare. Java especially simplifies many processes in the coding industry as it helps integrate many forms of technology and different d…
Viewers will learn one way to get user input in Java. Introduce the Scanner object: Declare the variable that stores the user input: An example prompting the user for input: Methods you need to invoke in order to properly get  user input:
Viewers will learn about basic arrays, how to declare them, and how to use them. Introduction and definition: Declare an array and cover the syntax of declaring them: Initialize every index in the created array: Example/Features of a basic arr…

863 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

25 Experts available now in Live!

Get 1:1 Help Now