每次登录我的应用程序时,我都会遇到以下异常...
javax.servlet.ServletException: com/sun/org/apache/xalan/internal/xsltc/trax/TransformerFactoryImpl (不支持的 major.minor 版本号 49.0)
这是什么意思,我该如何解决这个问题?
每次登录我的应用程序时,我都会遇到以下异常...
javax.servlet.ServletException: com/sun/org/apache/xalan/internal/xsltc/trax/TransformerFactoryImpl (不支持的 major.minor 版本号 49.0)
这是什么意思,我该如何解决这个问题?
您的代码是使用Java 1.5编译的,而您正在尝试使用Java 1.4(或更低版本)运行它
解决方案是:
a) Run it with Java1.5 ( perhaps using WAS 6+ )
b) Recompile it with Java 1.4
c) Recompile it with Java.15 but specifying the -target flag ( javac -target 1.4 .... )
您有一些使用Java 5特性编译的代码,现在想在1.4或更早版本的JVM上运行。请检查您的JAVA_HOME变量是否指向1.5或更高版本的JDK。
更新:根据您的评论,您正在使用WAS 5.1。从记忆中来看,WAS 5.1不支持Java 5,您需要升级到WAS 6.1才能使用Java 5(正在查找参考资料...)
如果您使用更高版本的JDK构建类以及较低版本的JAVA,则可以使用javac编译器的-source和-target开关。有些客户需要较低版本的Java,例如1.4,而您正在使用1.6进行开发。-source和-target是这种情况的解决方法。您可以阅读Alex Buckley的论文,该论文非常好地介绍了字节码与源代码版本控制问题。
但是,由于TransformerFactoryImpl是Sun内部类,请检查您的JAVA_HOME容器,但这是特定于容器的。
java -version
会显示什么? - Powerlord