An Exception Monitoring System for Java

  • Heejung Ohe
  • Byeong-Mo Chang
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3475)


Exception mechanism is important for the development of robust programs to make sure that exceptions are handled appropriately at run-time. In this paper, we develop a dynamic exception monitoring system, which can trace handling and propagation of thrown exceptions in real-time. With this tool, programmers can examine exception handling process in more details and handle exceptions more effectively. Programmers can also trace only interesting exceptions by selecting options before execution. It can also provides profile information after execution, which summarizes exception handling in each method during execution. To reduce performance overhead, we implement the system based on code inlining, and presents some experimental results.


Java exception propagation exception analysis 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Bokowski, B., Spiegel, A.: Barat A Front-End for Java. Technical Report B-98-09 (December 1998)Google Scholar
  2. 2.
    Chang, B.-M., Jo, J., Yi, K., Choe, K.: Interprocedural Exception Analysis for Java. In: Proceedings of ACM Symposium on Applied Computing, March 2001, pp. 620–625 (2001)Google Scholar
  3. 3.
    Choi, J.-D., Grove, D., Hind, M., Sarkar, V.: Efficient and precise modeling of exceptions for analysis of Java programs. In: Proceedings of 1999 ACM SIGPLAN-SIGSOFT Workshop on Program Analysis for Software Tools and Engineering, September 1999, pp. 21–31 (1999)Google Scholar
  4. 4.
    Dufour, B., Driesen, K., Hendren, L., Verbrugge, C.: Dynamic Metrics for Java. In: Proceedings of ACM OOPSLA 2003, Anaheim, CA (October 2003)Google Scholar
  5. 5.
    Drossopoulou, S., Valkevych, T.: Java type soundness revisited. Techical Report, Imperial College (November 1999), Also available from:
  6. 6.
    Erlingsson, U.: The inlined reference monitor approach to secure policy enforcement, Ph.D thesis, Cornell University (January 2004)Google Scholar
  7. 7.
    Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns:Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading (1995)Google Scholar
  8. 8.
    Gosling, J., Joy, B., Steele, G.: The Java Programming Language Specification. Addison-Wesley, Reading (1996)Google Scholar
  9. 9.
    Robillard, M.P., Murphy, G.C.: Analyzing exception flow in Java programs. In: Proc. of 1999 European Software Engineering Conference and ACM SIGSOFT Symposium on Foundations of Software Engineering, pp. 322–337 (1999)Google Scholar
  10. 10.
    Ryder, B.G., Smith, D., Kremer, U., Gordon, M., Shah, N.: A static study of Java exceptions using JESP, Tech. Rep. DCS-TR-403, Rutgers University (November 1999)Google Scholar
  11. 11.
    Sinha, S., Harrold, M.: Analysis and testing of programs with exception-handling constructs. IEEE Transations on Software Engineering 26(9) (2000)Google Scholar
  12. 12.
    Yi, K., Chang, B.-M.: Exception analysis for Java. In: ECOOP Workshop on Formal Techniques for Java Programs, Lisbon, Portugal (June 1999)Google Scholar
  13. 13.
    AdaptJ: A Dynamic Application Profiling Toolkit for Java,
  14. 14.
    Sun Microsystems, J2ME Wireless Toolkit,

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Heejung Ohe
    • 1
  • Byeong-Mo Chang
    • 1
  1. 1.Department of Computer ScienceSookmyung Women’s UniversitySeoulKorea

Personalised recommendations