This Article 
 Bibliographic References 
 Add to: 
JPernLite: Extensible Transaction Services for the WWW
July/August 1999 (vol. 11 no. 4)
pp. 639-657

Abstract—Concurrency control is one of the key problems in design and implementation of collaborative systems such as hypertext/hypermedia systems, CAD/CAM systems, and software development environments. Most existing systems store data in specialized databases with built-in concurrency control policies, usually implemented via locking. It is desirable to construct such collaborative systems on top of the World Wide Web, but most Web servers do not support even conventional transactions, let alone distributed (multi-Website) transactions or flexible concurrency control mechanisms oriented toward teamwork—such as event notification, shared locks, and fine granularity locks. We present a transaction server that operates independently of Web servers or the collaborative systems, to fill the concurrency control gap. By default, the transaction server enforces the conventional atomic transaction model, where sets of operations are performed in an all-or-nothing fashion and isolated from concurrent users. The server can be tailored dynamically to apply more sophisticated concurrency control policies appropriate for collaboration. The transaction server also supports applications employing information resources other than Web servers, such as legacy databases, CORBA objects, and other hypermedia systems. Our implementation permits a wide range of system architecture styles.

[1] K.M. Anderson, “Integrating Open Hypermedia Systems with the World Wide Web,” Proc. Eighth ACM Conf. Hypertext, Southampton, U.K., pp. 157-166, 1997.
[2] K.M. Anderson, R.N. Taylor, and E.J. Whitehead Jr., “Chimera: Hypertext for Heterogeneous Software Environments,” Proc. European Conf. Hypermedia Technology, Edinburgh, Scotland, Sept. 1994.
[3] M.P. Atkinson, L. Daynës, M. Jordan, and S. Spence, “An Orthogonally Persistent Java,” SIGMOD Record, vol. 25, no. 4, pp. 68-75, Dec. 1996.
[4] A. Bapat, J. Wasch, K. Aberer, and J.M. Haake, “HyperStorM: An Extensible Object-Oriented Hypermedia Engine,” Proc. Seventh ACM Conf. Hypertext, Washington, D.C., 1996.
[5] N.S. Barghouti and G.E. Kaiser, "Concurrency Control in Advanced Database Applications," ACM Computing Surveys, vol. 23, pp. 269-316, Sept. 1991.
[6] N.S. Barghouti, “Concurrency Control in Rule-Based Software Development Environments,” PhD thesis, Dept. of Computer Science, Columbia Univ., Feb. 1992.
[7] BEA Corp., BEA Tuxedo, Nov. 1996; URL:
[8] I. Ben-Shaul and G.E. Kaiser, A Paradigm for Decentralized Process Modeling, Boston: Kluwer, 1995.
[9] R. Bentley, W. Appelt, U. Busbach, E. Hinrichs, D. Kerr, S. Sikkel, J. Trevor, and G. Woetzel, “Basic Support for Cooperative Work on the World Wide Web,” Int'l J. Human-Computer Studies, vol. 46, No. 6, June 1997.
[10] T. Berners-Lee and R. Cailliau, “World Wide Web: Proposal for a HyperText Project,” CERN European Laboratory for Particle Physics, Nov. 1990; URL:
[11] P.A. Bernstein and N. Goodman, “Timestamp-Based Algorithms for Concurrency Control in Distributed Database Systems,” Proc. Sixth Conf. Very Large Databases, Montreal, Oct. 1980.
[12] P. Bernstein, V. Hadzilacos, and N. Goodman, Concurrency Control and Recovery in Database Systems. Addison-Wesley, 1987.
[13] A. Biliris et al., “ASSET: A System for Supporting Extended Transactions,” Proc. 1994 ACM SIGMOD Int'l Conf. Management of Data, June 1994.
[14] B. Campbell and J.M. Goodman,“HAM: A General Purpose Hypermedia Abstract Machine,” Proc. ACM Conf. Hypertext, 1987.
[15] P. Chrysanthis and K. Ramamritham, “ACTA: A Framework for Specifying and Reasoning about Transaction Structure and Behavior,” Proc. SIGMOD Int'l Conf. Management of Data, May 1990.
[16] D. Cooper, Trans. Internet Protocol (TIP) Demonstration; URL:
[17] CyberTeams Corp., WebSite Director; URL: http://www.
[18] L. Daynës, M.P. Atkinson, and P. Valduriez, “Customizable Concurrency Control for Persistent Java,” Advanced Trans. Models and Architectures, S. Jajodia and L. Kerschberg, eds., Kluwer, 1997.
[19] M. Eaddy, S. Rong, and J. Shapiro, WebDAV Project, Dec. 1997; URL:
[20] J. Eliot and B. Moss, “Nested Transactions: An Approach to Reliable Distributed Computing,” Information Systems, M. Lesk, ed., MIT Press, Cambridge, Mass., 1985.
[21] Database Transaction Models for Advanced Applications, A.K. Elmagarmid, ed., Morgan Kaufmann, 1992.
[22] H. Garcia-Molina and K. Salem, "Sagas," Proc. ACM SIGMOD Ann. Conf., pp. 249-259, May 1987.
[23] S.P. Hadjiefthymiades and D.I. Martakos, “A Generic Framework for the Development of Structured Databases on the World Wide Web,” Proc. Fifth Int'l World Wide Web Conf., web site, May 1996.
[24] G.T. Heineman and G.E. Kaiser, “Integrating a Transaction Manager Component with Process WEAVER,” Technical Report CUCS-012-94, Dept. of Computer Science, Columbia Univ., May 1994.
[25] G.T. Heineman and G.E. Kaiser, “An Architecture for Integrating Concurrency Control into Environment Frameworks,” Proc. 17th Int'l Conf. Software Eng., 1995.
[26] G.T. Heineman and G.E. Kaiser, “The CORD Approach to Extensible Concurrency Control,” Proc. 13th Int'l Conf. Data Eng., Apr. 1997.
[27] IBM, TXSeries4.2, 1998; URL:
[28] G.E. Kaiser, S.E. Dossick, W. Jiang, J.J. Yang, and S.X. Ye, “WWW-Based Collaboration Environments with Distributed Tool Services,” World Wide Web, vol. 1, pp. 3-25, Jan. 1998.
[29] G.E. Kaiser and S.E. Dossick, “Xanth: An Architecture for Effective Utilization of Distributed Heterogeneous Information Resources,” Technical Report CUCS-003-98, Dept. of Computer Science, Columbia Univ., Mar. 1998.
[30] Microsoft Corp., Microsoft Transaction Server, Aug. 1998; URL:
[31] J. Miller, D. Palaniswami, A. Sheth, K. Kochut, and H. Singh, “WebWork: METEOR's Web-Based Workflow Management System,” J. Intelligent Information Systems, pp. 185-215, vol. 10, no. 2, Mar. 1998.
[32] Netcraft Corp. The Netcraft Web Server Survey, 1998; URL:
[33] Object Management Group, Object Transaction Service, Nov. 1997; URL:
[34] Object Management Group, The Common Object Request Broker, July 1998; URL:
[35] The Open Group, Distributed TP: The XATMI Specification, Prentice Hall, Nov. 1995.
[36] C. Pu, G.E. Kaiser, and N. Hutchinson, "Split-Transaction for Open-Ended Activities," Proc. 14th VLCB Conf., pp. 26-37, May 1988.
[37] Sun Microsystems, Enterprise Java Beans, July 1998; URL:
[38] Sun Microsystems, Java Transaction API (JTA), Sept. 1998; URL:
[39] Sun Microsystems, Java Transaction Service (JTS), Sept. 1998; URL:
[40] J. Lyon, K. Evans, and J. Klein, Transaction Internet Protocol (TIP), TIP Working Group, Apr. 1998; URL:
[41] Y. Goland, E.J. Whitehead, A. Faizi, S.R. Carter, and D. Jensen, Extensions for Distributed Authoring and Versioning on the WWW—WebDAV, WebDAV Working Group, 1997; URL:
[42] U.K. Wiil,“Concurrency Control in Collaborative Hypermedia Systems,” Proc. Fifth ACM Conf. Hypertext, Seattle, pp. 14-24, Nov. 1993.
[43] U.K. Wiil and J.J. Leggett, “Workspaces: The HyperDisco Approach to Internet Distribution,” Proc. Eighth ACM Conf. Hypertext, pp. 13-23, Southampton, U.K., Apr. 1997.
[44] U.K. Wiil and J.J. Leggett, “Hyperform: A Hypermedia System Development Environment,” ACM Trans. Information Systems, Jan. 1997.
[45] World Wide Web Consortium, Jigsaw Overview, Sept. 1998; URL:
[46] J.J. Yang, “Application Programming Interface of JPernLite,” Technical Report CUCS-010-98, Dept. of Computer Science, Columbia Univ., New York, 1998.

Index Terms:
Distributed transactions, extended transaction models, WWW, computer-supported collaborative work, middleware.
Jingshuang Yang, Gail E. Kaiser, "JPernLite: Extensible Transaction Services for the WWW," IEEE Transactions on Knowledge and Data Engineering, vol. 11, no. 4, pp. 639-657, July-Aug. 1999, doi:10.1109/69.790823
Usage of this product signifies your acceptance of the Terms of Use.