This is a discussion on Cars Online Part 4 - Customer Search With MDM - Solaris Rss ; Read the original article at The Crooked Stick This is the Second entry in this trail that is GlassFish ESB (Open ESB) and will look at the Search For Customer functionality. We assume that the Cars Online application is used ...
Read the original article at The Crooked Stick
This is the Second entry in this trail that is GlassFish ESB (Open ESB) and will look at the Search For Customer functionality. We assume that the Cars Online application is used as a car sales application is part of a larger corporate implementation. The assumed company also has dealings with finance and insurance which has been built up by acquisition. Hence they will be using a MDM Solution to manage their disparate system.
Therefore we have implemented a simple Customer MDM solution using the OpenESB MDM implementation building a Customer orientated solution which we will integrate with using a BPEL Process.
The Business Process bsCustomerSearch.bpel receives the Customer Search Information, entered on the "Customer Details" Screen, and then accesses the MDM implementation using the generated API. First the process attempts to find an exact match and if this failed will use the Block search to find a number possible matches. Once the search has completed all possible matches and their associated score are returned to the Search screen and the user can cycle through them.
MDM was installed following instruction that can be found on the Mural Web Site and then a simple Customer Application was built as described in the Tutorial.
I used the GlassFish ESB Healthcare Pack to build the MDM rather than the Mural Download because I needed to run the NetBeans Applications under 6.7.1.
Returning to the Search screen will re-initialise the result data and display all the information associated with the previously accepted Search results. If the user need to perform a new Search then the data can be simply cleared using the "Clear" button.
Search Business Process
The search Business Process attempts to identify the Customer in a number of ways based on the Search Criteria passed in. At first the process will try to do an Exact Match on the customer and if this work the single record data will be returned tot he user. As can be seen from the image below if the Exact Search does not return a single records we will proceed to do a Block Search based on the MDM configuration. Given the data entered into the MDM this will the three rows shown in the next section.
You can see that I have also added the option to execute a phonetic search if the Block Search does not return any results but this is essentially a place holder at present until I extend the search so that the user can specify the type to execute.
As mentioned the MDM implementation is based on that contained within the GlassFish ESB Healthcare Pack, because I am using GlassFish 2.2 and NetBeans 6.7, but you can achieve the same functionality by downloading the Open ESB implementation. I installed the Mural Product, as described on the Mural Site, and then implemented a Customer MDM solution, as described in the Tutorial, and created an number of external systems.
These external systems we then populated, manually, with a number of customer records and validated using the generated MDM application. The image below shows the expected data when searching for Melanie Wilson and it can be seen from the images in the first section that the data returned and displayed on the screen matches the expected contents of the MDM search.