Like InfoSphere Master Data Management (MDM) Server, Master Information Hub (MIH) comes with Rational based model-driven tools to develop custom data domains. Without the rich data model which comes with MDM, the MIH Workbench will be essential to make use of MIH to master your own information. The blank canvas also makes MIH an ideal base for simple examples; I’ve been experimenting with a social bookmarking data domain which I hope will be a good way to demo some of the new workbench features, including the ability to create a complete domain with data stewardship user interface without writing a single line of code.
Although I plan to use the MIH Workbench for this example, the same features are available in the MDM Workbench. There are a few things to do before getting to the interesting bit though, and that’s what this post is about.
Installing the workbench
Unfortunately there are some pitfalls which can catch the unwary when installing the MIH Workbench. For example, there are some very specific prereqs which do not get checked at install time, so it’s worth spending a bit of extra time checking the documentation before you install. The readme, which does include workbench information, is available on the external information center, however the workbench installation documentation is only available in the PDFs and stand-alone information center provided with the product. (I’ll post a link if I do find it available on the internet in the future.)
If you do encounter any strange problems later (missing workbench functionality or a hang when generating web service clients being the most likely) the software requirements should be the first thing you check. In particular, because there can be problems getting the web service client generation ifix applied properly, I’ve used the latest fix pack level for RSA instead.
Prepare a new workspace
Once you have the workbench installed successfully, I recommend creating a clean new workspace. It’s important to use a short path length, for example C:\ibm\mih, to avoid Windows length limits when importing EAR files in to RSA. If you are not prompted to choose a workspace location when starting RSA, use the File > Switch Workspace… menu option instead.
Next open the Java EE perspective (click on the Show all option to find it in the list); this should prompt you to enable the required capability.
And finally, make sure the default JRE is WebSphere v7.0 JRE and the compiler compliance level is set to 1.6 in the workspace preferences.
Create a WebSphere profile
As well as a fresh workspace, I also create a new WebSphere profile for testing MIH applications. Launch the profile management tool from the Server > WebSphere Application Server workspace preferences page.
Note: the tool which will configure the WebSphere profile for MIH has very specific ideas about where this profile will be. Make sure you are using the WebSphere Application Server Test Environment installed using Installation Manager, and create your profile in the default location.
Use the advanced profile creation option to specify the following configuration settings:
- create the server using the development template
- disable administrative security
- disable the option to run application server processes as a Windows service
After creating a new profile, add the server to the RSA Servers view to make it easier to publish the MIH application later. Open the server in the Servers view to change a couple of settings:
- run with resources on server
- never publish automatically
You can set the first of these while adding the server but when I do, I always forget to turn off automatic publishing- it just takes too long on my development machine!
Set up the development environment
After double checking the readme (there’s a specific section with Additional notes on the Development Environment Setup Tool) everything should be ready for a smooth run through the MIH Development and Test Environment (DEST) Wizard. Rather than running all the operations provided by the wizard in one go, I find it more reliable to complete the setup in five separate steps, with some checking along the way to confirm everything is going well.
This is the sequence I follow:
When using the DEST wizard, double check all the values it asks for. The defaults may not be correct for your system and not all the values are validated. These are the settings I used, where they differ from the defaults:
WebSphere version : WebSphere Application Server v7.0
Profile name : [This should be the profile you created earlier]
Backup profile at : C:/MIHTEMP
WebSphere home : C:/Program Files/IBM/SDP75/runtimes/base_v7
Application distribution file : C:/Temp/MIH900_WAS_AIX.tar.gz
Unpack distribution file to : C:/MIHUNPACK
Deployment name : MIH
Temporary output folder : C:/MIHTEMP/MIH.ear
Database name : MIHDB
To find the DEST wizard for the steps below, open the File menu and choose New > Other…, then look for InfoSphere Master Information Hub > Development and Test Environment.
Run the Restore the Development Environment Setup Tool operation.
Run the first five operations:
- Import Application Projects into Workspace
- Customize Configuration Files
- Backup WebSphere Profile
- Configure WebSphere Profile
- Create an Application Database
Check that the database was created correctly, for example using the Data perspective in RSA, and make sure that the data sources are working on the server:
- Right click the server in the Servers view and choose Administration > Run administrative console
- Open Resources > JDBC > Data sources in the navigation pane
- Use the Test Connection option to verify the DWLConfig, DWLCustomer and EventManager data sources
Logs from the create database operation can be found in the following folders of the MIHDatabase project:
Run the next three operations :
- Clean Projects
- Build Projects
- Export Application EAR
Hopefully you won’t hit any problems with these ones.
To make the development process a bit simpler, skip the Deploy Application to WebSphere Profile operation and use the standard tools provided with RSA instead. Right click on your server in the Servers view, choose Add and Remove Projects… and add the MIH project (you can use Add All >> if it’s the only project available).
Back to the DEST wizard for the final three operations :
- Deploy Configuration
- Import Installation Verification Project
- Validate Installation
The first thing to check is the result of the install verification. Refresh the InstallVerification project in your workspace to pick up changes on the file system. You should find some response files in the testCases\xml_mih\response folder and, if all went well, they should contain ‘SUCCESS’ result codes!
If the response files contain an error, the Deploy Configuration operation is the most likely one to have gone wrong at this stage. Check whether the CONFIGELEMENT table contains any configuration data. If this table is empty, modify the Management Agent settings to connect to the database directly and rerun the Deploy Configuration operation; see this developerWorks forum post for details.
If rerunning the Deploy Configuration operation doesn’t fix the CONFIGELEMENT table or there were other errors, check the server and MIH logs. The MIH logs can be found in a logs folder in the CustomerResources project.
Turn on automatic builds. (The DEST wizard turns this option off and it drives me crazy every time I forget to turn it back on!)
Please leave a comment and let me know if I’ve missed anything from these instructions so that I can improve them, however if you need help with a specific problem, the MDM Workbench forum on developerWorks is definitely the best place to ask.
Updated: added link to developerWorks forum post for tips on fixing configuration deployment problems. (4 February 2010)
Updated: added link to the next post in the series for creating your first simple MIH application. (19 March 2010)
Updated: added link to Installing MDM Workbench post on developerWorks. (17 April 2010)
Updated: added note about restrictions on WebSphere profile location. (25 June 2010)
Pingback: Master Information Hub: Social Bookmark Services « Notes from a small field
Pingback: Master Information Hub: Customising a Maintenance UI « Notes from a small field
Great article James…here are a few things I noticed when running through:
1) After creating the WAS profile, if isn’t clear if you should start the server or not.
2) It would seem that DEST requires you to use the WebSphere Test Environment, so you might want to make this clear in case anyone has an existing WAS instance they want to reuse (as I unsuccessfully tried to do :-)
Good point, DEST does need the WebSphere profile to be in exactly the right place. I’ve added a note to the article.
I usually start the server but DEST should start/stop the server as it needs to.