我正在尝试连接到运行webapp的同一台服务器上的 Spring RESTful服务。
我想使用“相对”路径,因为它可以安装在多个环境(localhost,test,production)上,但是我收到错误消息:PrettySqlRollingFileAppender
。
如何在同一台服务器上调用另一个webapp上运行的服务?
我的代码如下:
URI is not absolute
感谢。
更新
我通过从final RestTemplate restTemplate = new RestTemplate();
URI uri;
try {
String url = "app2/myservice?par=1";
uri = new URI(url);
String result = restTemplate.getForObject(uri, String.class);
System.out.println(result);
} catch (URISyntaxException e) {
logger.error(e.getMessage());
}
获取主机,端口等来解决它,它是否是一个正确而优雅的解决方案?这是我的实际简化代码:
request
答案 0 :(得分:1)
如果您的服务在其他网络应用程序或同一服务器上运行,则您的网址 app2/myservice?par=1
不完整。
您必须通过提供基本网址 localhost:8080/yourApp/app2/myservice?par=1
来完成路径,然后事情可能适合您。
另外,请检查包访问权限。
答案 1 :(得分:0)
您无法在第一个代码段中将其作为代码执行; URI必须完全标识您尝试访问的资源。你的第二个片段几乎是你可以做你想做的事情的唯一方法。可能还有其他方法,但我无法想到任何方法。
当然,使用您的方法,您正在规定您的系统架构和部署模型 代码 ,这几乎不是一个好主意。
答案 2 :(得分:0)
提供完整路径,例如 http://localhost:8080/app2/myservice?par=1 。 希望这会有所帮助。