|
|
Parsing an XML Document with XPath Pulling just a single node value or attribute from an XML document can be inefficient if you have to parse over a whole list of nodes you don't want, just to get to one you do. XPath can be much more efficient, by letting you specify the path to the desired node up front. J2SE adds XPath support, and the JDOM API also offers support through an XPath class. Deepak Vohra looks at both approaches. [ONJava.com] Streaming QuickTime with Java Realtime multicast streaming came to QuickTime in version 5, but now, years later, it's not widely realized that it can be called from QuickTime for Java. Chris Adamson, author of QuickTime for Java: A Developer's Notebook, shows how it works. [ONJava.com] Mock Objects in Unit Tests Unit testing your code against a service or process that's either too expensive (commercial databases) or just not done yet is something you can deal with by simulating the other piece with a mock object. EasyMock can suffice in some cases, but it can only create mock objects for interfaces. Mocquer, based on the Dunamis project, can create mocks for classes, too. Lu Jian shows how it works. [ONJava.com] Caching Dynamic Content with JSP 2.0 Server-side caching is a powerful and popular technique for improving the performance of server-side applications. After all, why compute twice what you can compute once and hang on to? Andrei Cioroianu shows you how to exploit this technique in JSP 2.0. [O'Reilly Network] Working with Hibernate in Eclipse Jim Elliott was curious about whether anyone had written plugins to work with Hibernate in Eclipse, as he'd just finished writing Hibernate: A Developer's Notebook. It turns out there are several such efforts underway. In this article, Jim explores Hibernate Synchronizer--a plugin that automatically updates your Java code when you change your mapping document. [O'Reilly Network] Results from the Second 2004 ONJava Reader Survey Editor Chris Adamson summarizes the results of the recent reader survey, including favorite tools, platforms, and what you want to see on the site in 2005. [O'Reilly Network] ONJava 2004 in Review: Editor's Choice Editor Chris Adamson takes a look back at some of the most interesting articles published on ONJava during the last year. [ONJava.com] Jini: Out of the Bottle and Into the Box What if a Jini lookup service was available in every shipping JVM? Not just for enterprise applications - where Jini is a natural fit - but also in every J2SE and J2ME distribution. Jini is Java's secret weapon. [ONJava.com] The Hidden Gems of Jakarta Commons, Part 1 The Jakarta Commons has a wide-ranging collection of handy classes that can save you the trouble of reinventing the wheel yet again. In this new series, Tim O'Brien looks at some of the more overlooked parts of the Commons and what you can do with them. [ONJava.com] ONJava 2004 in Review: Popular Articles Editor Chris Adamson takes a look back at some of the most popular articles published on ONJava during the last year. [ONJava.com] Towards Bug-Free Code Test-driven development sometimes sounds better than it turns out to be. Early decisions to tightly couple functional parts of your system can make it a lot less amenable to testing than it ought to be. As Ashwin Jayaprakash shows, J2SE 5.0's generics make working with abstract classes and interfaces easier than it used to be, which encourages loose coupling and facilitates testing. [ONJava.com]
Generating an XML Document with JAXB Among the positive aspects of XML Schemas is their support by the Java Architecture for XML Binding (JAXB). In this article, Deepak Vohra shows how JAXB can help convert a schema-supported XML file to a regular Java object and back again. [ONJava.com] Session Replication in Tomcat 5 Clusters, Part 2 In part two of his survey of session replication, Srini Penchikala gets down to raw numbers by comparing the effects of different sizes and styles of replication on cluster performance. [ONJava.com] A Distributed Discussion with Elliotte Rusty Harold In this interview, Java Network Programming, 3rd Edition author Elliotte Rusty Harold discusses the improvements and hazards of networking in Java, as well as the evolution of Java itself. [ONJava.com] Distributed Enterprise Messaging with MantaRay Java Messaging Service (JMS) is a much-used system for distributed enterprise applications, but many implementations use a "broker" approach that creates bottlenecks. MantaRay implements the JMS API through a peer-to-peer approach that, as Amir Shevat reports, provides some significant advantages. [O'Reilly Network] URLs and URIs, Proxies and Passwords Java networking is seldom as simple as it first seems. In this excerpt, one of a series from Java Network Programming, 3rd Edition, Elliotte Rusty Harold shows how to encode and decode URLs, work with URIs, use multiple proxy servers, query servers with HTTP GET, and use password-based authentication. [O'Reilly Network] Open Source Licenses Are Not All the Same As open source and the Internet continue to grow in popularity, more and more users and developers come into contact with open source code. Though the various licenses increase user rights somehow, they all do it in different ways and with different goals. Steve Fishman categorizes several popular licenses and explains their implications. [ONLamp.com] Integrating Macromedia Flex with Java Web applications don't have to be about HTML. Rich client-side environments offer a better end-user experience but demand some rethinking of the web app client-server relationship. Mark Eagle shows how you can use Macromedia Flex to bring rich applications to Flash-equipped browsers. [ONJava.com] Creating Toolbars Using SWT The final element that end users expect to see in a well-designed window is the toolbar. In this PDF excerpt from SWT: A Developer's Notebook, Tim Hatton succinctly explains each step and guides you through the development of the toolbar. [ONJava.com] Simple Object Persistence with the db4o Object Database Mapping Java objects to relational databases is a difficult task, fraught with perils and gotchas. db4o dodges the issue entirely by providing an object-oriented persistence mechanism that is small, lightweight and efficient. Jim Paterson shows how it works. [ONJava.com] Session Replication in Tomcat 5 Clusters, Part 1 A web application running on a single server is completely lost if the server goes down. But with a cluster, user sessions can be replicated across servers, so that the system stays up even if one server fails. Srini Penchikala presents Tomcat 5's handling of this feature. [ONJava.com] Compiling an AspectJ Project Using Eclipse You may be ready for aspect-oriented programming, but are your tools? In this PDF excerpt from AspectJ Cookbook, Russell Miles shows you how to install and use an AspectJ-aware plugin for the Eclipse IDE. [ONJava.com] Juggle Your Java with JDistro Typically, one Java application will live in its own virtual machine, but this is neither required nor necessarily desirable. JDistro, a multitasking Java application, makes it possible to run applications, applets, and more, all inside of one process. Howard Wen interviewed creators Guillaume Desnoix and Gérard Collin to find out how it works. [ONJava.com] Dynamic Delegation and Its Applications Proxy, introduced in Java 1.3, offers an interesting way to provide an interface's implementation at runtime, but there's more that can be done. Lu Jian shows how bytecode manipulation can be used to provide dynamic delegation, allowing you to provide runtime implementations of interfaces, abstract classes, and even concrete classes. [ONJava.com] Agile User Interface Development Agile is a sea of change, refocusing software developers on quality and speed. Its impact on the practice of software development is already being compared to that of object-oriented design. However, one area of effort has been slow to change: development of the graphical user interface (GUI). The critical question: how do you do test-first GUI development? Paul Hamill, author of Unit Test Frameworks, discusses separating GUI elements into smart objects and thin view components and doing TDD of the smart objects. [ONJava.com] Extending Struts With so many web application frameworks available, there's little point reinventing the wheel, especially when Struts offers remarkable extensibility. Sunil Patil introduces the three basic means of extending Struts to achieve custom web application behavior. [ONJava.com] Memory Contention in J2EE Applications for Multiprocessor Platforms You can scale an enterprise app on a single box by adding CPUs, right? Yes--to a point. As Deepak Goel and Ramchandar Krishnamurthy have discovered and documented, the battle for access to memory from threads on the different CPUs creates a memory contention that, in time, becomes a bottleneck. In this article, they document the phenomenon and suggest some ways to improve the situation. [ONJava.com] Got Project Automation? Each project chore you automate is an investment that pays off immediately and increases in value over time. Mike Clark, author of Pragmatic Project Automation, presents an overview of the benefits that automating your project can bring. [ONJava.com] Local and Remote EJB Interfaces EJB 2.0's local interfaces can make your enterprise applications much faster, as they share data in memory instead of via an RMI link. But when can you use local interfaces, and when are you forced to go remote? Olexiy Prohorenko introduces the strategies for making the local/remote decision. [ONJava.com] Using SSL with Non-Blocking IO Java 1.4 introduced non-blocking IO in the NIO package, but not a means of running SSL over it. That forced developers to choose between security and scalability. In J2SE 5.0, there is now a transport-agnostic SSL API, but it takes some work to understand. Nuno Santos shows how to put the two together. [ONJava.com] |
|
|
|
A new face in XQuery by Jonathan Bruce [java.net weblogs] JavaDesktop Community tops 200 projects by Roger Brinkley [java.net weblogs] Test(i)ng by Daniel H. Steinberg [java.net weblogs] JWSDP 1.5 Chat at Java.Net by Eduardo Pelegri-Llopart [java.net weblogs]
There are no current events at this time. |
|
|
|
Visit the BEA Learning Channel and learn more about: |
||||||||||||||||||||||||||
|
Contact Us | Advertise with Us | Privacy Policy | Press Center | Jobs Copyright © 2000-2005 OReilly Media, Inc. All Rights Reserved. |