我有localhost:port用于webApplication。我可以将其声明为全局吗?
就像我创建.war一样,我可以在任何tomcat或任何系统中使用它,而无需更改它?
String url=http://localhost:8080/app/xyz.jsp
我想将localhost:8080声明为全局(当我将其硬编码到我的应用程序中时),就像用户可定义的标志一样。
谢谢。
我知道了,我用localhost作为127.0.0.1分self
和端口地址
Server server = ServerFactory.getServer();
Service[] services = server.findServices();
for (Service service : services) {
for (Connector connector : service.findConnectors()) {
ProtocolHandler protocolHandler = connector
.getProtocolHandler();
if (protocolHandler instanceof Http11Protocol
|| protocolHandler instanceof Http11AprProtocol
|| protocolHandler instanceof Http11NioProtocol) {
serverPort = String.valueOf(connector.getPort());
}
}
}
感谢您的帮助。
最佳答案
这甚至是不可取的。您可以在运行时获取信息,例如通过EL:
#{request.scheme}://#{request.serverName}:#{request.serverPort}/#{request.contextPath}/...
这样,您的应用程序就可以在任意重新托管,重新配置Tomcat,重新分配端口等情况下幸免于难。完全不需要任何操作。