Migrate services

BTT version 5.1 service compatible

BTT version 5.2 adopts the BTT version 4.3 architecture. It is enhanced to support EJB/Web Service interface and WebSphere® pool management.

BTT version 5.1 supports 3 invocation ways: Local Java™, EJB and WSDL. The first two invocation ways are kept in BTT version 5.2, while WSDL invocation is not supported. The BTT version 5.1 JournalService and TableService are replaced by BTT version 4.3 architecture and invocation ways. The definition and usage are still compatible, but the customer extension may not be compatible.

How to migrate to BTT version 5.2 new service architecture

If you use pool service, you need to update your code manually. For example, your service implement BTTPoolable in version 5.1, then you need to implement WebSphere's PoolableObject interface.

BTT version 5.1 service architecture requires you to define a set of properties files and a Factory class and implementation class. In BTT version 5.2, it only requires your service object to implement Externalizable interface and define it in dsesvrce.xml. The getService series function is still workable at both SAE layer and BP layer.

In common cases, you can invoke version 5.1 Journal and Table service by getService() way. You don't need to change the code. But if you invoke them in a special way or make their own customer extensions, some extra work may be needed.

Migrate to use BTT version 5.2 services

In BTT version 5.2, the JDBC Table service and Electronical Journal service are still provided for the application. These two services are based on the new service architecture of BTT version 5.2. If the application needs these two services, you need to do the following:
  1. Modify the service definition in dse.ini
    • For JDBC Table: Change the class name by com.ibm.btt.services.jdbc.tablemapping.JDBCTable
    • For Electronic Journal: Change the class name by com.ibm.btt.services.jdbc.journal.JDBCJournal
  2. Modify the application code to comply with BTT version 5.2 specification: In BTT version 5.2, to get a new service instance is changed by com.ibm.btt.base.Service.readObject.
  3. Use objectPool feature of WebSphere Application Server and WebSphere Portal Server instead of the generic pool of BTT: In BTT version 5.2, the object pool feature is provided by the application server. If the application needs to use the BTT version 5.2 service architecture with the pool mechanism, the pool configuration is changed to be complied with the objectPool of WAS and WPS.