apache如何在服务器中获取配置的HTTP和HTTPS端口号。运行时来自Java代码的xml
在我们的项目中,我们使用ApacheCXF框架实现了SOAP Web服务。客户端用于请求服务器执行某些命令。请求由主机、端口和用于连接的协议组成。如果客户端使用HTTPS配置的端口号,并将协议指定为HTTP,那么我们会得到一个连接被拒绝的socket异常。但是,我需要抛出一条正确的错误消息,如“无法连接到端口为“ABC”的主机“XYZ”,使用http协议”。为此,我需要从tomcat服务器获取配置的http和https端口号。xml文件,然后将其与我的请求参数进行比较
任何人,请帮我找到那个
# 1 楼答案
可以通过这种方式在运行时访问Tomcat核心类(对于Tomcat 7,我没有使用Tomcat 8进行测试):
这是我测试过的配置:
这是输出:
# 2 楼答案
你总是可以解析tomcat的服务器。xml文件并获取端口值:
上面的代码应该可以从服务器获取HTTP端口。xml。对于HTTPS端口,必须将XPathExpression修改为
请注意,上面的代码片段是基于服务器。xml是标准的tomcat服务器文件,其中服务名称被定义为“Catalina”。下面是一个标准服务器。xml文件:
参考:Code link