Feeds
The Register Columnists

John Hunt

Contact Mail Follow RSS feed
Web 2.0

ID and the triple-A challenge of mashup security

The loose coupling of data drawn from different systems is one of the enduring appeals of mashups. However, what if some of that data needs to be handled securely, or it is necessary to log in to some or all of the data feeds? What if the mashup as a whole represents some form of sensitive system - now security is an issue. Last …
John Hunt, 10 Apr 2008
Java

Time for genuine 'write-once, run-anywhere' Java

One of the big selling points of Java has been its "write once, run anywhere" capabilities. Of course, in practice, this has always been "write once, test everywhere" you intend to deploy your chosen application. With the planned purchase of BEA Systems by Oracle, I got to thinking about what this meant for the "write once, run …
John Hunt, 14 Mar 2008
Web 2.0

Betamax 2.0: the future of mashups?

Simplicity in software is, I believe, more than just a noble aim; it is essential for successful software projects. However, simplicity should not be assumed just because one particular technology or methodology is being used. Mashups, discussed recently by Reg Dev reader Aubry Thonon, are a case in point. One element of the …
John Hunt, 11 Feb 2008
Electricity

Write once, run anywhere: a lesson for digital TV

If, as reported, entertainment giant Paramount throws its weight behind the Blu-ray high-definition DVD format it would seem like a vote in favor of using Java (Sun PDF here) in digital TV entertainment. While for some this might not seem and obvious association and might be considered a completely new departure for Java by many …
John Hunt, 08 Jan 2008
Goggles

Why simplicity starts with design

I was talking with a fellow IT professional recently who was saying that you should "program simply" but "design with complexity". I do understand the point that he was trying to make - that is, during the design stage take into account the problems in your domain so that these have been worked out as much as possible before the …
John Hunt, 16 Dec 2007
ABC childrens blocks

When good software gets complicated

A lot of recent articles have raised the issue of complexity in software (here, here, and here). So why is this subject back again? Surely it's been done to death? Apparently not. When I carried out a quick straw poll of some developers recently, few of them actually thought about avoiding unnecessary complexity in their …
John Hunt, 26 Nov 2007
Java

Designing software for testability

The subject of testing seems to be in the air at the moment - Matt Stephens recently discussed it in his "Agile" column entitled "Don't unit test GUIs". This month in the Java column we are also going to look at testing, but this time from the viewpoint of design. Software design, in some ways, is a particularly strange art. The …
John Hunt, 29 Oct 2007
Java

Programming message services in Java

Lately I seem to be involved increasingly in systems relying on asynchronous interactions for efficient and effective integration. In these cases, the asynchronous behaviour has been implemented using JMS (or Java Message Service) queues, with message driven beans, and with the underlying message server provided by application …
John Hunt, 25 Sep 2007
The Register breaking news

Programming constructs in BPEL

In this column in our series examining BPEL and its use within Service Oriented Architecture (SOA) systems, I'll will be looking at BPELJ and Compensation. BPELJ is an extension to the core BPEL (Business Process Execution Language), which allows the direct inclusion of Java code within a BPEL script. Compensation is actually a …
John Hunt, 16 Jul 2007
The Register breaking news

BPEL: scripting and human tasks

In the last column in this series, we looked at the general concept of business process management with respect to SOA (Service Oriented Architecture) based systems. In particular, we reviewed BPEL (the Business Process Execution Language) and what it offers and at some of the extensions for BPEL. In this second column, we’ll …
John Hunt, 27 Jun 2007
The Register breaking news

BPEL, business process management, SOA and you

Over the last few columns we have looked at how Service Oriented Architecture (SOA) based systems can be built using the Service Component Architecture (SCA) and Service Data Objects (SDO). A system built using these frameworks can be formed by explicitly integrating services built using these elements. However, what we have …
John Hunt, 13 Jun 2007
The Register breaking news

Implementing platform independent data with SDO

Hands on In my last column, we looked at the concepts behind SDO or Service Data Objects. SDO is a language independent format for representing data. It is built around the concept of a DataGraph of DataObjects. The DataObjects hold both the actual data being represented and metadata that describes that data. As such, it represents self- …
John Hunt, 23 Apr 2007
The Register breaking news

What can service data objects do for your SOA system?

Column In the last two columns, I looked at how you can build services within a Service Oriented Architecture (SOA) using the Service Component Architecture (or SCA) framework. In the second of these two columns, I hinted that you could use another tool called Service Data Objects (SDO) in conjunction with SCA. In this column and the …
John Hunt, 17 Apr 2007
The Register breaking news

Taking your first steps with SCA

Part 2 In the first part of this two part series we introduced the Service Component Architecture (or SCA). SCA aims to make the construction of services simpler and less dependent on detailed knowledge of a range of different specifications within a Service Oriented Architecture (or SOA). The previous column outlined the aims of SCA …
John Hunt, 20 Mar 2007
The Register breaking news

The Holy Grail of services: SCA

How many times lately have you come across a column on Service Oriented Architecture (or SOA)? Or an article telling you that SOA is the next big thing? Or that SOA is the way we should all be building systems? Personally, it seems to happen to me all the time. Recently, I was in a hotel in Frankfurt, and was waiting in the …
John Hunt, 13 Mar 2007
The Register breaking news

EJB 3.0 Based Web Services

Tutorial You cannot have failed to notice Web Services and the prominence that they have achieved within the current computing world. However, at least within Java, there have been a number of differing ways in which you could implement a Java-based Web Service. You could use the Java Web Services toolkit from Sun, or the Apache Axis …
John Hunt, 23 Jan 2007
The Register breaking news

Writing the Script: Java SE 6

Over the years there have been several times where I've had to implement a mini-language and language processor for some specific requirement or another. In one case, it was to provide a simple scripting language to allow for customisation of a Management Information System, in another to provide support for a Decision Tree …
John Hunt, 30 Nov 2006
The Register breaking news

To Jalapeño or to Hibernate the data...

Java is an excellent Object Oriented language that allows developers to write sophisticated, powerful, enterprise scale applications. Such applications typically involve a large amount of data that must be stored somewhere for future use. That is, the data in the objects within the JVM must be persisted using some form of …
John Hunt, 13 Nov 2006
The Register breaking news

Aspect oriented programming with Java

Writing software is a complex business - not only do you have to get the enterprise logic of the application correct, typically you also have to deal with multiple other concerns at the same time, such as "what should happen if something goes wrong", "how should I make sure we know what is happening during execution", "how to …
John Hunt, 26 Oct 2006
The Register breaking news

Riding the Mustang

The Java Platform, Standard Edition 6 JDK (variously called JSE 6.0, Mustang and, by many, J2SE 6.0; and, by some at least, JDK 6) has been in Beta 2 release format for some months and is nearing its actual release date (work started on this release around July 2005 and it is currently expected to be delivered in autumn/fall …
John Hunt, 22 Sep 2006
The Register breaking news

Echo2 versus GWT

A little while ago, I wrote about the GWT (Google Web Toolkit) here, which I'm particularly interested in as it provides a pure Java environment that can be translated into pure AJAX-style code. This means that a Java developer can work with the GWT and create effective, lightweight, interactive websites without the need to get …
John Hunt, 24 Aug 2006
The Register breaking news

Code inheritance and reuse: a delicate balancing act

There are two primary concepts that are used extensively within Java (and indeed other OO languages) to promote reuse - inheritance and componentisation. For many people, inheritance is the obvious (and classic) example of how to achieve reuse within Java systems. However, the ability to plug components together is equally …
John Hunt, 27 Jul 2006
The Register breaking news

Googled by GWT - Part 2

GWT (or the Google Web Toolkit) provides a Java library and set of tools that allow a pure JavaScript and HTML application to be derived form a Pure Java development environment. The executable is then generated from this and is implemented in terms of JavaScript, HTML and CSS etc. As such, this allows a much higher level of …
John Hunt, 29 Jun 2006
The Register breaking news

Googled by GWT - Part 1

I have done a great deal of client oriented Swing-based work over the years. I admit to really enjoying this, as you get immediate feedback in terms of the UI you are developing and, when run within tools like Eclipse, a very rich development environment. I have always really liked the speed with which you can change some code, …
John Hunt, 26 Jun 2006
The Register breaking news

JavaCC: Don't talk back

In many cases, with the advent of XML, if data must be exchanged, or information read, a simple solution is to mark that document up using XML and then parse it using an XML parser. However, in some situations the documents to be processed may not be in XML format. This could be because of legacy systems, external constraints …
John Hunt, 23 May 2006
The Register breaking news

Java EE clustering

Enterprise-oriented systems must often be both scalable to deal with changing performance requirements and available 24x7 (or at least very close to this level of availability). Java systems, whether they are J2EE or Java EE 5 (collectively called Java EE in this article), are no exception. In many cases, the best way to …
John Hunt, 02 May 2006
The Register breaking news

Expressing yourself in Java: Regular Expressions

Regular expressions are an area of computing that most of us know a little about, have a rough understanding of, but have often avoided using except when absolutely necessary. In the past, they often required the use of tools such as Perl, rather than languages such as Java. However, for some time now, in fact since Java …
John Hunt, 24 Mar 2006
The Register breaking news

Of Java Annotations

The J2SE 5.0 release of Java introduced many new language features, one of which is called annotations. At the time I noted their presence, but did not feel particularly excited about their appearance. Now that a little water has flowed under the bridge, I think it is time to revisit Java Annotations. In this column we will …
John Hunt, 24 Feb 2006
The Register breaking news

Fishing for POI

Have you ever needed to create a Microsoft Excel or Word file from Java? If you have, did you try to do it from scratch yourself? If you were working with Excel, did you end up creating comma-separated data in a file (CSV files)? CSV files work very well as long as all you are interested in is the raw data. But what if you are …
John Hunt, 27 Jan 2006
The Register breaking news

Hands on with Java XML filter pipelines

In this tutorial we will step through this little understood area of XML processing. Java XML Filters are part of the SAX API for XML processing. Java XML filters are objects that can filter (or process) data within a pipeline of filters, wrapped around a core XML processing application. The SAX API is a standard part of the …
John Hunt, 09 Jan 2006
The Register breaking news

Hibernate Object Relational Mapping (Part 2)

Hibernate Object Relational Mapping (Part 1) is here. Unlike some frameworks, you do not need to do anything special to your objects to allow them to persist via Hibernate. They can be Plain Old Java Objects (or POJO) objects. These objects can follow the JavaBeans conventions and provide setters and getters. Hibernate will …
John Hunt, 06 Dec 2005
The Register breaking news

Hibernate Object Relational Mapping

How many Java applications have you built that store data in a database? For me, almost all the Java systems I have been involved with have, at some point, involved a database. In general, what has happened is that data held in objects, at some point has been stored into the database, so that it can be restored back into objects …
John Hunt, 03 Dec 2005