Skip to main content

Java Class Deployment Using Class Collections

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2591))

Abstract

Java applications are composed of classes which are usually grouped and deployed using Java Archives. When an application is started, the hosting Java Virtual Machine (JVM) obtains the required classes one by one as they are needed from these archives. For this purpose, the JVM locates the related byte code by taking the names of the class and its package and evaluating the environment setting CLASSPATH. This works well as long as there is only one byte code matching the given class name, but it is not feasible when the byte code has to be selected among several classes with the same class name using properties such as version numbers or manufacturers. In this paper, we introduce so called Java Class Collections which enable the logical grouping of classes separately from their physical deployment within Java Archives and allow tagging them with supplementary properties used to select the right byte code. We illustrate the application of our approach for multi-application hosting and in remotely composable application systems.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Lindholm, T., Yellin, F. The Java Virtual Machine Specification. Addison-Wesley. 1999.

    Google Scholar 

  2. Venners, B. Inside The Java 2 Virtual Machine. McGraw-Hill. 1999.

    Google Scholar 

  3. Eckel, B. Thinking in Java. Prentice Hall. 2000.

    Google Scholar 

  4. Liang, S., Bracha, G. Dynamic Class Loading In The Java Virtual Machine. Proc. of the Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA). Canada. 1998. pp. 36–44.

    Google Scholar 

  5. Ziegler, C., Langham, M. Cocoon: Building XML Applications. New Riders. 2002.

    Google Scholar 

  6. Shannon, B., Hapner, M., Matena, V., Davidson, J., Pelegri-Llopart, E., Cable, L. Java 2 Platform Enterprise Edition: Platform and Component Specification. The Java Series, Addison Wesley, Reading, MA, USA, 2000.

    Google Scholar 

  7. Watson, M. Sun ONE Services (Professional Mindware). Hungry Minds. 2002.

    Google Scholar 

  8. Hayton, R., Herbert, A. FlexiNet: A Flexible, Component-Oriented Middleware System. Advances in Distributed Systems. LNCS 1752. Springer-Verlag 2000. pp. 497–508.

    Chapter  Google Scholar 

  9. Kurzyniec, D., Sunderam, V. Flexible Class Loader Framework: Sharing Java Resources in Harness System. Proc. of International Conference on Computational Science (ICCS). LNCS 2073. Springer-Verlag 2001. pp. 375–384.

    Google Scholar 

  10. Rajagopalan, S., Rajamani, R., Krishnaswamy, R., Vijendran, S. Java Servlet Programming Bible. John Wiley & Sons. 2002.

    Google Scholar 

  11. Jung, E., Cioroianu, A., Writz, D., Akif, M., Brodhead, S., Hart, J. Java XML Programmer’s Reference. Wrox Press Inc. 2001.

    Google Scholar 

  12. Farley, J. Microsoft.NET vs J2EE: How do they stack up. O’Reilly. 2001.

    Google Scholar 

  13. Beer, W., Birngruber, D., Mössenböck, H., Wöß, A. Die.NET Technologie-Grundlagen und Anwendungsprogrammierung. dpunkt Verlag 2002.

    Google Scholar 

  14. Paal, S., Kammüller, R., Freisleben, B. Multi-Application Hosting Using Class Spaces. In: Proceedings of the 2nd International Conference on Internet Computing (IC 2002). Las Vegas, USA. CSREA Press, 2002. pp. 259–266.

    Google Scholar 

  15. Maassen, J., Van Nieuwpoort, R., Veldema, R., Bal, H., Kielmann, T., Jacobs, C., Hofman, R. Efficient Java RMI for Parallel Programming. ACM Transactions on Programming Languages and Systems (TOPLAS). Vol. 23, Nr. 6. ACM 2001. pp. 747–775.

    Article  Google Scholar 

  16. Orfali, R., Harkey, D. Client/Server Programming with Java and Corba. John Wiley & Sons, Inc. 1998.

    Google Scholar 

  17. Marvic, R., Merle, P., Geib, J.-M. Towards a Dynamic CORBA Component Platform. Proc. of 2nd International Symposium on Distributed Objects and Applications (DOA). Antwerpen, Belgium. IEEE 2000. pp. 305–314.

    Google Scholar 

  18. Fleischmann, M., Strauss, W., Novak, J., Paal, S., Müller, B., Blome, G., Peranovic, P., Seibert, C. netzspannung.org-An Internet Media Lab for Knowledge Discovery in Mixed Realities. In Proc. of 1st Conference on Artistic, Cultural and Scientific Aspects of Experimental Media Spaces (CAST01). St. Augustin, Germany. 2001. pp. 121–129.

    Google Scholar 

  19. AWAKE-Networked Awareness for Knowledge Discovery. 2002. http://awake.imk.fraunhofer.de

  20. Goodwill, J. Apache Jakarta Tomcat. APress. 2001.

    Google Scholar 

  21. Lewandowski, S. M. Frameworks for Component-based Client/Server Computing. ACM Computing Surveys. Vol. 30, Nr. 1. ACM 1998. pp. 3–27.

    Article  Google Scholar 

  22. Little, M. C., Wheater, S. M. Building Configurable Applications in Java. Proc. of the 4 th International Conference on Configurable Distributed Systems. Annapolis, Maryland. 1998. pp. 172–179.

    Google Scholar 

  23. Fleischmann, M., Strauss, W. Communication of Art and Technology (CAT). IMK/MARS, GMD St. Augustin. http://imk.gmd.de/images/mars/files/Band_1_download.pdf

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2003 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Paal, S., Kammüller, R., Freisleben, B. (2003). Java Class Deployment Using Class Collections. In: Aksit, M., Mezini, M., Unland, R. (eds) Objects, Components, Architectures, Services, and Applications for a Networked World. NODe 2002. Lecture Notes in Computer Science, vol 2591. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-36557-5_12

Download citation

  • DOI: https://doi.org/10.1007/3-540-36557-5_12

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-00737-1

  • Online ISBN: 978-3-540-36557-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics