UK Builder Articles

DJ Walker-Morgan is a consulting developer, specialising in Java and user-to-user messaging and conferencing, who used to write regular Java articles for UK.BUILDER.COM before ZDNet shut it down.

Brighten up your legacy code with some Java 5

29 November 2006 : Brighten up your legacy code with some Java 5
You don't have to rewrite your applications from scratch to take advantage of the new features in Java 5. We show you how some updates can be dropped in place easily without breaking large chunks of code.

ToDoTasks: Building Java Apps with Maven

17 October 2006 : ToDoTasks: Building Java Apps with Maven
Maven is more than just a build tool. Used properly, it can help manage your projects and aid deployment. We'll show you how.

ToDoTasks: Reverse AJAX using DWR

23 August 2006 : ToDoTasks: Reverse AJAX using DWR
Standard AJAX techniques add interactivity to web applications, but are inefficient at reflecting changes on the server. Reverse AJAX solves this, and we show you how it's done.

ToDoTasks: Adding AJAX to Java using DWR in Java Applications

31 July 2006 : ToDoTasks: Adding AJAX to Java using DWR in Java Applications
Making web-based Java applications more interactive doesn't need to be difficult. The Direct Web Remoting toolkit takes much of the hassle out of AJAX.

ToDoTasks: Web-enabling Java applications

06 July 2006 : ToDoTasks: Web-enabling Java applications
In the second part of our series on building a simple Java application, we see how you can use servlets to web-enable apps easily.

ToDoTasks: Data persistence in Java applications

02 June 2006 : ToDoTasks: Data persistence in Java applications
In the first of a series of tutorials that will end in a working application, we look at a simple persistence mechanism, and a grid for displaying data.

Java, Annotated

25 April 2006 : Java, Annotated
Annotations can eliminate boilerplate code, make source code more readable and provide additional levels of error checking. They're used everywhere from EJB3 to JUnit4. Here's how you go about using them.

EJB persistence, part 3

29 March 2006 : EJB persistence, part 3
The final part in our series on EJB persistence, we wrap up the techniques involved in an example application.

EJB persistence, part 2

28 February 2006 : EJB persistence, part 2
In the second of our series on Java persistence, we look at providing bidirectional relationships between objects.

NetBeans 5.0

15 Febuary 2006 : NetBeans 5.0
The new version of the open source Java IDE adds new UI layout capabilities, and vastly improves its Web Services handling. We take a look at the changes.

Persistent Java for all: EJB Persistence with Java Standard Edition

27 January 2006 : Persistent Java for all: EJB Persistence with Java Standard Edition
Since EJB 3.0 was drafted, there's been a single, standard persistence mechanism for Java classes, whether in client- or server-side applications. Using Annotations, a feature of Java 5, it's simple to use, and we'll show you how.

MailPage: building a web mail system in Java

03 January 2006 : MailPage: building a web mail system in Java
The JavaMail libraries make retrieving email easy, but you still need to do something with it. Here's an example of a servlet-based web mail application.

Review: Agitator 3.0

08 December 2005 : Review: Agitator 3.0
The amount of effort involved in writing unit tests puts most people off doing it, especially for older code. The latest version of Agitar's automatic testing tool aims to make test generation automatic.

Getting the mail in: receiving in JavaMail

22 November 2005 : Getting the mail in: receiving in JavaMail
While sending email from an application may be more common, you'll probably want to fetch mail from a server at some point as well. Here we show you JavaMail's receiving functions.

Sending email in Java: There's more than one way

27 October 2005 : Sending email in Java: There's more than one way
The JavaMail API provides low-level email facilities for Java applications. The Apache Commons Email library gives you a higher-level interface. We'll compare the two, and show you how and when you'd use each.

Scripting XML processing using E4X

28 September 2005 : Scripting XML processing using E4X
You can write a general-purpose XML processor in Java, then tailor it to specific XML dialect using ECMAScript. We'll show you how.

Beans Means XML

24 August 2005 : Beans Means XML
You can read and manipulate XML documents in Java much easier by using XmlBeans. We show you how to get started.

Retrofitting JUnit; Start testing older code

12 July 2005 : Retrofitting JUnit; Start testing older code
While best practice says that you write your tests at the same time as - or even before - you write your code, you'll probably have a body of code without tests. Here's how you add tests to existing applications.

JConsole: remoting, notifications and log control

17 June 2005 : JConsole: remoting, notifications and log control
In real applications, instrumentation is usually monitored across the network. Following on from our tutorial on JConsole, here's how to network-enable your managed Java applications.

JConsole, the essential J2SE tool

20 May 2005 : JConsole, the essential J2SE tool
JConsole allows you to see inside your Java application while it's running. To do this you need to install the correct plumbing code, but we'll show you how.

Bring your own database: Embedded SQL in Java

27 April 2005 : Bring your own database: Embedded SQL in Java
Embedding a database in your Java application makes it much simpler to deploy, especially over Web Start. We look at a couple of embedded databases and how you use them.

Scripting Java with the Bean Scripting Framework

05 April 2005 : Scripting Java with the Bean Scripting Framework
There are so many scripting languages supported in the Java environment it can be a difficult choice which one to use in your application. With BSF, you don't have to.

Making Swing Trees Easy

01 March 2005 : Making Swing Trees Easy
Trees are a common GUI component, and Swing provides classes to create them. However, using dynamic data with trees can be problematical. We'll show you how to avoid the pitfalls.