JDBC连接仅在Tomcat中失败

JDBC连接仅在Tomcat中失败,tomcat,jdbc,ioerror,Tomcat,Jdbc,Ioerror,这很奇怪:来自Tomcat中部署的任何webapp的任何JDBC连接都会失败 IO Error: The Network Adapter could not establish the connection 尽管它们在命令行或Jetty中工作得非常好 Tomcat运行在带有Oracle JDK的Photon OS(VMware的Linux变体)上。 我试过了 无济于事 有什么建议吗?正如@ChristopherSchultz所建议的,问题是/etc/resolv.conf文件(640而不是64

这很奇怪:来自Tomcat中部署的任何webapp的任何JDBC连接都会失败

IO Error: The Network Adapter could not establish the connection
尽管它们在命令行或Jetty中工作得非常好

Tomcat运行在带有Oracle JDK的Photon OS(VMware的Linux变体)上。 我试过了

无济于事


有什么建议吗?

正如@ChristopherSchultz所建议的,问题是/etc/resolv.conf文件(640而不是644)的权限不正确。

您能发布完整的堆栈跟踪吗?我以前从未见过这种错误……我发现如果我将db服务器主机名放在/etc/hosts文件中,webapps就会正常工作。这很奇怪,因为nslookup命令可以很好地解析主机名……可能Java没有使用与
nslookup
相同的解析程序,尽管这有点奇怪。也许Tomcat是作为一个不能阅读
/etc/resolv.conf
或类似内容的用户运行的?@ChristopherSchultz就是这样!Tomcat正在以Tomcat用户的身份运行/etc/resolv.conf权限为640(root:root);我把它们改成644和lo'!一切正常
/etc/resolv.conf
应该始终是世界可读的。否则,没有人可以执行DNS查找!
-Djava.net.preferIPv4Stack=true