Skip to main content link. Accesskey S
  • Anonymous
  • Log on
  • Help
  • IBM logo
  • IBM Connections wiki
  • All Wikis
  • Home
  • Community Articles
  • Product Documentation
  • Learning Center


Search

Advanced Search

Categories

Tag Cloud

  • 1.0
  • 1.0.x
  • 2.0
  • 2.0.1
  • 2.0.1.1
  • 2.0_media
  • 2.5
  • 2.5_deployment
  • 2.5_media
  • 2.5_performance
  • 3
  • 3.0
  • 3.0.1
  • 3.0.1_media
  • 3.0_media
  • 3_deployment
  • 8.1.1
  • 8.2
  • activities
  • administrators
  • api
  • best_practices
  • blogs
  • bookmarks
  • business_card
  • cluster
  • communities
  • community
  • community_manager
  • connections
  • connections_3
  • connections_301
  • customization
  • customize
  • customizing
  • demos
  • deploying
  • deployment
  • deployments
  • developers
  • dogear
  • Domino
  • Edge server
  • education
  • error messages
  • files
  • forums
  • getting_started
  • Help
  • home
  • home_page
  • homepage
  • how-to
  • HTTP server
  • ibm
  • index
  • installation
  • integration
  • iOS
  • ipad
  • iWidget
  • J2EE
  • javadoc
  • lc3.0
  • learning
  • lotus-connections
  • mml
  • mobile
  • Notes
  • performance
  • person_card
  • Portal
  • portlet
  • portlet_factory
  • profiles
  • proxy server
  • quickr
  • Redbooks
  • rest
  • reverse proxy server
  • Sametime
  • scenarios
  • search
  • security
  • self-paced
  • SSO
  • tags
  • test_infrastructure
  • troubleshooting
  • tuning
  • video
  • VideoFest
  • videos
  • WAI
  • WAS
  • web_seminar
  • WebAppIntegrator
  • WebSphere
  • widgets
  • wikis
InformationInformation
You are currently viewing machine translated content. IBM translation might be available. Click IBM Translated Product Documentation to see what is available.X


Home > IBM Redbooks: Customizing IBM Connections 3.0.1 > 4.6 Creating custom AssemblyLine to synchronize updates from external database to the Profiles database
Rate this article 1 starRate this article 2 starsRate this article 3 starsRate this article 4 starsRate this article 5 stars

4.6 Creating custom AssemblyLine to synchronize updates from external database to the Profiles database 

expanded Abstract
collapsed Abstract
No abstract provided.
ShowTable of Contents
HideTable of Contents
  • 1 Add JDBC Connector and configure it to process the changes
  • 2 Add Profiles Connector in update mode
Previous | Next

In the previous section, we created an AssemblyLine for copying data from the source system to the Profiles database. Another common operation in a production environment is processing updates in source systems and updating appropriate attributes of user's profile in the Profiles database. To do this, you use a special configuration for JDBC Connector in the iterator mode, which makes the connector able to recognize the changes in the source system data. Using this option, the JDBC Connector stores data from a previous run in the Tivoli Directory Integrator System Store and compares the results of the current request with the data in System Store. If it find any changes, the JDBC Connector places the data from the updated record to work object attributes. You can then process the data using Profile Connector.

Note: By default, Tivoli Directory Integrator uses Apache Derby as the System Store database, however, you can configure it to use another relational database such as DB2. This article in Tivoli Directory Integrator documentation provides the how-to information: http://publib.boulder.ibm.com/infocenter/tivihelp/v2r1/topic/com.ibm.IBMDI.doc_7.0/systemstore.htm

In this example, we do not pre-check if the user is available in the Profiles database using Profile Connector because this task has been completed in the previous example. Instead, we demonstrate how to handle an error in Profile Connector to skip an entry if the Connector does not find the user with appropriate unique ID in the Profiles database.

We update only the ipTelephoneNumber and groupwareEmail attributes because the other attributes are not changed in time and therefore, we do not need to update them.

Add JDBC Connector and configure it to process the changes



Perform these steps for this task.
  1. Create a new AssemblyLine. Click New Assembly Line and call it, for example, processChanges.


  2. Add a JDBC Connector using the Add component button in your assembly line. Choose Connectors from Select Type Filter on the left side and select JDBC Connector from the Components list. Enter the name for your connector, for example, JDBCConnector_delta. Select Iterator in the Mode dropdown list and click Next.


  3. Use the same value as before for the following fields and click Finish :
    • JDBC URL: In our example, it is jdbc:db2://localhost:50000/peopledb.
    • JDBC Driver: For DB2, it is com.ibm.db2.jcc.DB2Driver.
    • Username: In our example, Administrator.
    • Password: User's password.
    • Table Name: In this example, it is EMPCUSTDATA, which could be selected using the Select button.


  4. Test the connection by clicking Connect and Next.
  5. Click the Delta tab, check Enable Delta, and enter a name for an attribute which uniquely identifies record in a table. In our example, it is PREMAIL.



  6. Go back to the Input Map tab and add attributes mapping for IPTELEPHONYNUMBER, PREMAIL, and SECEMAIL.

Add Profiles Connector in update mode


To add the Profiles Connector in update mode, perform these steps:
  1. Select Update for Mode and name it, for example, ProfileConnector_update.
  2. Test the connection by clicking Connect .
  3. On the Output Map tab, click Add to add map work.SECEMAIL to groupwareEmail and work.IPTELEPHONYNUMBER to ipTelephoneNumber.



  4. On the Link Criteria tab, link the email attribute with $PREMAIL.



  5. Handle errors if the Profile Connector does not find user record in the Profiles database. Go to the Hooks tab and edit one by one DataFlow (Update) -> Update Error and DataFlow (Update) -> Default On Error by adding the following script:
    system.skipEntry();




  6. Save your work using Ctrl+s.
  7. (Optional) During the first run of AssemblyLine, JDBC Connector imports values for all work attributes into System Store. To avoid any changes in the Profiles database, disable Profile Connector so it will not update user profile attributes. To disable Profile Connector, change the State of the Profile Connector to Disabled in the dropdown list.



  8. Run the AssemblyLine for the first time.

After the first run, the Delta Store in Tivoli Directory Integrator System Store stores current values of all work attributes for all users so, next time the JDBC Connector will provide to Profile Connector only the user attributes that have been changed in the table.

Next steps
Continue with section 4.7 Make a single command line script form an AssemblyLine

Parent topic: 4.0 Tivoli Directory Integrator

expanded Article information
collapsed Article information
Category:
IBM Redbooks: Customizing IBM Connections 3.0.1
Tags:
Redbooks

This Version: Version 1 November 21, 2011 12:31:13 PM by Amanda J Bauman  IBMer

expanded Attachments (0)
collapsed Attachments (0)

 


expanded Versions (1)
collapsed Versions (1)
Version Comparison     
Version Date Changed by               Summary of changes
This version (1) Nov 21, 2011 12:31:13 PM Amanda J Bauman  
expanded Comments (0)
collapsed Comments (0)
Copy and paste this wiki markup to link to this article from another article in this wiki.
Go ElsewhereStay ConnectedSubscribe to RSSHelpAbout
  • All Lotus and WebSphere Portal wikis
  • IBM developerWorks
  • IBM Software support
  • IBM Social Business User Experience Blog
  • IBMSocialBizUX on Twitter
  • IBMSocialBizUX on Facebook
  • Lotus product forums
  • IBM Social Business UX blog
  • IBM Collaboration Solutions
  • Recently added feedRecently added
  • Recently edited feedRecently edited
  • Recently added comments feedRecently Added Comments
  • Wiki Help
  • Forgot user name/password
  • Wiki design feedback
  • Content feedback
  • About the wiki
  • About IBM
  • Privacy
  • Contact IBM
  • IBM Terms of use
  • Wiki terms of use