Posts Tagged ‘Java’

XLS(MS Excel) Emitter for BIRT

April 19th, 2006

BIRT For those who wanted a XLS emitter for a long time, finally here may be a chance to taste. Thanks the Apache POI project and the new layout engine of BIRT 2.0, we can now easily create a XLS emitter though it looks obviously not that fancy yet.

You can see the full article here.

Java 5 extension framework for Struts released

April 16th, 2006

Strecks, a set of open source extensions to the Struts framework aimed at Java 5 users, has been released. Strecks (which stands for “Struts Extensions”) is built on the existing Struts 1.2.x code base.

Read Phil Zoio’s article on Strecks, titled “Building on Struts for Java 5 Users”.

Strecks contains a range of features aimed to streamline the Struts programming model. Some key features include:

  • POJO action beans with no framework dependencies
  • action vs. controller separation. Request processing logic is encapsulated into Action controllers, simplifying action implementations
  • annotation-based dependency injection (typed request parameters, session attributes, Spring beans, and others)
  • annotation-based form validators (XML and code-free)
  • annotation-based data binding from form properties to domain model
  • annotations for additional per-field control over type conversion
  • simplified mechanisms to support navigation and redirecting after posts
  • pluggable navigation using annotations
  • pre- and post-action interceptors, with access to dependency resolved action beans as well as full runtime context

For a more complete list, see http://strecks.sourceforge.net/features.php.

Spring Rich Client Framework Announced

April 7th, 2006

Spring-RCP‘s mission is to provide an elegant way to build highly-configurable, GUI-standards-following rich-client applications faster by leveraging the Spring Framework, and a rich library of UI factories and support classes. It only has a 0.1.0 release available, but might be worth watching.

A Modular Approach to Data Validation in Web Applications

March 28th, 2006

Data that is not validated or poorly validated is the root cause of a number of serious security vulnerabilities affecting applications, such as Cross Site Scripting and SQL Injection. A paper entitled “A Modular Approach to Data Validation in Web Applications” presents an approach to performing thorough data validation in modern web applications so that the benefits of modular component based design (extensibility, portability and re-use) can be realised.

It starts with an explanation of the vulnerabilities introduced through poor validation and then goes on to discuss the merits and drawbacks of a number of common data validation strategies such as:

  • Validation in an external Web Application Firewall
  • Validation performed in the web tier (e.g. Struts)
  • Validation performed in the domain model

Finally, a modular approach is introduced together with practical examples of how to implement such a scheme in a web application, including such strategies as transformation of data to a canonical format, detecting attacks based on likely vectors, accepting only valid data (i.e., a name shouldn’t contain angle brackets), and escaping meta-characters that might have specific meaning for specific contexts (i.e., watching for characters that might execute something unexpected in a SQL engine or LDAP).

Comparing Java Web Frameworks

March 25th, 2006

Struts is by far the most common web framework, but it is by no means the only option.
Java Server Faces has made a splash lately, but there are a number of open source alternatives, including Spring MVC, WebWork, Tapestry, and Cocoon.

I’ve found two interesting presentations that survey these available web frameworks, taking a look at what kind of code and content you need to write for each, specific strengths or weaknesses, and how to select the best web framework for your unique application requirements.

The second one takes even a closer look at how do these web frameworks work.

APT-Jelly (template-based interface to APT) released

March 22nd, 2006

APT-Jelly provides a template-oriented interface to Sun’s Annotation Processing Tool (APT). As an alternative to other source-processing engines (e.g. XDoclet), APT-Jelly fully leverages Java syntax and features including annotations, generics and typesafe enums.

Read the full news article here.