Integrating Java with MTS

Microsoft® Transaction Server (MTS) is a component-based model and runtime environment that simplifies the task of developing application components by allowing you to perform work using transactions. Transactions are multiple interactions that are treated as a single operation. Intermediate steps are not actually taken until all interactions are completed successfully. If any interaction fails, all steps are returned to their original setting.

These application components implement business rules and run from the middle tier in a three-tier application. For example, in the case of a bank, records in one or more database systems represent the durable state of the business, such as the amount of money in an account. The application components update that state to reflect changes, such as debits and credits.

MTS application components—the business logic that runs on the server—can be written with any language that produces Microsoft® ActiveX® dynamic-link libraries (DLLs).

MTS support for Java is of particular interest to Internet programmers because all MTS middle-tier services are provided to ActiveX components written in Java. All MTS server functionality is available for developers building applications in Java. MTS acts as a transaction-processing monitor for Java.

The following MTS documents are provided.

White Papers

Microsoft Transaction Server Transactional Component Services explains the problems MTS addresses and why it is useful in middle-tier development.

Comparing Microsoft® Transaction Server to Enterprise JavaBeans is an overview of transaction systems, showing how each area works as compared with Enterprise JavaBeans.

Writing Microsoft® Transaction Server Components in Java with Microsoft® Visual J++® 6.0 explains how to create a Java MTS component and a client application, and how to debug the server-side component.

Building MTS Applications covers the packaging, calling, debugging, and automating of MTS components, and shows how to develop MTS components with Java.

Managing In-Process COM Components Using MTS and ASP Technology presents a solution for managing in-process COM components using MTS, a sample Microsoft® Visual Basic® component, and ASP technology.

IIS 4.0 and MTS 2.0: Technology for the Web explains why MTS was integrated into the IIS architecture, describes the three major benefits of this integration, and shows how to develop server-side components that use MTS.

Sample

The MTS Sample Bank Application demonstrates building MTS components with Java. The sample is in %SDKDIR%\Samples\MTS.

Package Reference

The com.ms.mtx package contains eight classes for Java/MTS integration.

Installing the MTX Package

The Microsoft® SDK for Java includes a version of the com.ms.mtx package that is intended for use on machines running versions of Microsoft® Windows® prior to Windows 2000. To install this package, run IntegrationClasses.exe, which is located in the %SDKDIR%\Bin directory.

Important    Windows 2000 installs an updated version of the com.ms.mtx package in the Java\trustlib directory rather than into the Java Package Manager. If you use the IntegrationClasses.exe that was included in the Microsoft SDK for Java version 3.2 to install this package into the Java Package Manager on a Windows 2000 machine, the older version of the package will override the newer version installed in Java\trustlib. (The IntegrationClasses.exe in the version 4.0 SDK will not update a Windows 2000 system.)

To fix this, follow these steps to remove the com.ms.mtx package from the Java Package Manager:

  1. Launch the regedit utility (Registry Editor) to view the registry. From the Start menu, select Run and then type regedit.

    Warning   Using the Registry Editor incorrectly can cause serious problems that might require you to reinstall your operating system. Microsoft cannot guarantee that problems resulting from the incorrect use of the Registry Editor can be solved. Use the Registry Editor at your own risk.

    For information on editing the registry, see the Changing Keys and Values Help topic in regedit.exe or the Add and Delete Information in the Registry and Edit Registry Data Help topics in regedt32.exe. Note that you should back up the registry before editing. You should also update your Emergency Repair Disk (ERD).

  2. In the regedit window, locate the following:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Code Store Database\Global Namespace\Java Packages\com\ms

  3. Locate the mtx key, which will contain values such as the following:
    "Path"="C:\WINNT\JAVA\Packages\HGZQ9UUOX.ZIP"
    "Signer"="C:\WINNT\JAVA\Packages\Data\Q24YAM4A.DAT"
    "Info"=hex:00,00,05,00,5f,0c,00,00,1a,00,00,00
  4. Locate the .zip file listed in the "Path" value. Create a directory on your drive and move the .zip file from the location specified in the path value to the new directory.

  5. Delete the mtx key from the registry.

Note    This restriction also applies to the com.ms.asp package, which is installed by IntegrationClasses.exe. See Installing the IIS Packages for information on removing the com.ms.asp package from the Java Package Manager.

© 1999 Microsoft Corporation. All rights reserved. Terms of use.