Programming XML in Java, Part 2

Experience the joy of SAX, LAX, and DTDs If you read last month’s article, you already understand how you can use SAX (the Simple API for XML) to process XML documents. (If you haven’t read it yet, you may want…

Java Tip 91: Use nested exceptions in a multitiered environment

Java Tip 91: Use nested exceptions in a multitiered environment

Automatically capture the context of remotely thrown exceptions through nesting In this brave new world of business computing, multitiered applications based on RMI, or Remote Method Invocation, running across many computers have overrun the realm of the business application, also…

New Product Briefs (March 31, 2000)

Ezlogin.com adds LiveClips to customized offerings Ezlogin.com has expanded its suite of personalization tools with the addition of LiveClips, a tool that lets Internet users clip content, such as ski reports or news headlines, and post the clips on a…

JNDI overview, Part 4: the Doc-u-Matic, a JNDI application

Pull together your JNDI knowledge with a JNDI-enabled application Let’s dive in. I’ve spent the last three months describing the Java Naming and Directory Interface (JNDI). By now, you should feel comfortable with naming and directory services and the operations…

Interprocess communications in Java

How can Java processes communicate without RMI? Q: How can two Java processes (two JVMs) on the same computer interact — that is, read each other’s methods and exchange objects? I’m using RMI, but it seems that a simpler solution…

Cleaning up after Jini services

Standardize the way Jini clients release finite nonmemory resources In May 1998, I published “Object finalization and cleanup” in my Design Techniques column of JavaWorld. In this article, I gave advice on designing the end of object lifetimes. In particular,…

LDAP and JNDI: Together forever

LDAP and JNDI: Together forever

Learn how LDAP and JNDI combine to form a powerful directory and Java object storage facility The Lightweight Directory Access Protocol (LDAP), which traces its roots to the X.500 protocol, was developed in the early 1990s as a standard directories…

StringBuffer versus String

What is the performance impact of the StringBuffer and String classes? Java provides the StringBuffer and String classes, and the String class is used to manipulate character strings that cannot be changed. Simply stated, objects of type String are read…

Using the if-then-else framework, Part 1

Using the if-then-else framework, Part 1

Code maintainable branching logic with the if-then-else framework No one should have to read or maintain code shown in Listing 1 below. Code that includes nested ifs, as in this example, can be a maintenance nightmare. It is usually difficult…