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

Alternative tools

 * Retroweaver
 * Declawer
 * JBossRetro