2017-02-17 87 views
0

是否可以从相对URI使用RESTful Web服务而不是绝对?当我运行下面的代码时,我得到一个异常java.lang.IllegalArgumentException:URI不是绝对的。从相对URI使用REST Web服务

RestTemplate rt = new RestTemplate(); 
User x = rt.getForObject("/dispatcher/rest/hello",User.class); 

我之所以问这个是因为如果我的前缀与URI本地主机:8080 /,当应用程序部署我不得不改变所有的URI前缀。

回答

1

除非您有一个辅助方法添加了URI前缀(我没有在这里看到),否则该方法应该抛出该错误,因为它没有用于调用REST API的绝对URI。我不知道有什么方法可以解决使用绝对URI的问题。

关于部署,您可以在数据库或配置文件中使用配置表,并根据您部署到的环境(DEV,TEST,PROD等)读取属性(例如URI前缀) 。

+0

谢谢!这个答案很有帮助 –