我希望有人能够帮助我解决这个问题。
我被要求将 apache axis 1.4 从带有 Tomcat 6 的服务器迁移到带有 Tomcat 9 的更新的服务器。
操作系统是旧服务器上的 RedHat Enterprise 5.9,新服务器上的 RedHat Enterprise 8.4。
旧的 Tomcat 6 使用 JRE 1.6,它运行没有问题,而 Tomcat 9 使用 JDK 1.8
我所做的只是将CATALINA_HOME\webapps\axis下的文件夹复制到新 Tomcat 9 上的同一文件夹下。
在我更改自定义 .jws 文件之前,一切似乎都很好。当我尝试重新加载轴时,访问页面 https://IP/axis/FILE_NAME.jws?wsdl 我收到以下错误:
Sorry, something seems to have gone wrong... here are the details:
Fault - ; nested exception is:
java.lang.RuntimeException: No compiler found in your classpath! (you may need to add 'tools.jar')
AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
faultSubcode:
faultString: java.lang.RuntimeException: No compiler found in your classpath! (you may need to add 'tools.jar')
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}hostname:client.localdomain
我在安装的 JDK 上检查了 tools.jar,并在/usr/lib/jvm/java-1.8.0-openjdk/lib/下找到了它
我也在网上查看,正如大多数帖子所说,我尝试将 tools.jar 复制到CATALINA_HOME\webapps\axis\WEB_INF\lib下,但我仍然得到同样的错误。
我尝试了一堆东西,比如将 AXISCLASSPATH=CATALINA_HOME\webapps\axis\WEB_INF\lib 添加到我的 tomcat setenv.sh,或者将 tools.jar 复制到 CATALINA_HOME\lib 文件夹下,但似乎没有任何效果。
你能帮我理解问题可能是什么吗?