Struts2与JDK1.4兼容
Struts2.0默认的平台要求是:
但是因为一些原因,我们必须使用JDK1.4来编译,所以只能应用Struts提供的J4,来进行一下移植了,其实只需要简单的操作,便可以把JDK更改为1.4的了.
要想应用JDK1.4,使用的主要的是Struts2.0的发行包里提供的J4目录中的Retrotranslator .利用它可以将原JDK5的包转化成JDK1.4的.关于Retrotranstator的介绍,可以查看 http://retrotranslator.sourceforge.net/ ,里面写的很详细.
在J4目录中,官方已经将Struts2.0基本的两个Jar文件转好了,分别是 struts2-core-j4-2.0.9.jar和xwork-j4-2.0.4.jar.如果你的程序中还用到的其他的Jar包,可以通过脚本把 Jar包转成J4版本的.我的程序中用到了spring和sitemesh两个Plugin的Jar包,所以需要将这两个包转成J4的.
命令如下:
java -jar retrotranslator-transformer-1.2.2.jar -advanced -srcjar ../lib/struts2-sitemesh-plugin-2.0.9.jar -destjar struts2-sitemesh-plugin-j4-2.0.9.jar
java -jar retrotranslator-transformer-1.2.2.jar -advanced -srcjar ../lib/struts2-spring-plugin-2.0.9.jar -destjar struts2-spring-plugin-j4-2.0.9.jar
我们同样可以将它们写到一个bat文件中,如果你用的是Windows的系统的话,使用Linux的用户可以存成sh文件.
执行bat文件,将生成两个新的J4版本的包,struts2-sitemesh-plugin-j4-2.0.9.jar和struts2-spring-plugin-j4-2.0.9.jar.
将这四个Jar包放到WEB-INF/lib中,再将J4目录中的 retrotranslator-transformer-1.2.2.jar, backport-util-concurrent-3.0.jar和retrotranslator-runtime-1.2.2.jar一起放到 WEB-INF/lib下.
之后再把自己写的程序中所使用的JDK5的特性去掉,例如Annotations等几个特性等。
至此,你的程序应该就可以在JDK1.4上运行了.