
Retrotranslator

Retrotranslator is a program written in Java that "converts" Java classes (bytecode).
The "source" classes may use Java 1.5 and Java 1.6 features, whereas the "target" will be compatible with Java 1.4 and older environments.
Retrotranslator supports all Java 5 language features and part of the Java 5 API on both J2SE 1.4 and J2SE 1.3. On older Java environments only the Java 5 features that don't depend on the new API are supported. Retrotranslator is based on the ASM bytecode manipulation framework and the backport of the Java 5.0 concurrency utilities (see http://backport-jsr166.sourceforge.net/ )
The Stripes Framework developers suggest to use Retrotranslator in order to use Stripes (which extensively use Java 1.5 features) on a Java 1.4 environment 