[英]Spring Boot Configuration + RepositoryRestResource + Authentication
[英]How can I map a Spring Boot @RepositoryRestResource to a specific url?
我似乎无法在以下任何位置映射我的存储库:
@RepositoryRestResource(collectionResourceRel = "item", path = "item")
public interface ItemRepository extends PagingAndSortingRepository<Item, Long> {
我以为我可以用:
path = "/some/other/path/item"
但映射无法解决。 我明白了:
HTTP ERROR 404
Problem accessing /some/other/path/item. Reason:
Not Found
在spring-data中,javadoc path
定义为: “用于导出此资源的路径段”。
我究竟做错了什么?
您需要扩展RepositoryRestMvcConfiguration
并覆盖configureRepositoryRestConfiguration(RepositoryRestConfiguration config)
以设置您的baseUri
。 例如
@Configuration
public class MyRepositoryRestMvcConfiguration extends RepositoryRestMvcConfiguration {
private static final String MY_BASE_URI_URI = "/my/base/uri";
@Override
protected void configureRepositoryRestConfiguration(RepositoryRestConfiguration config) {
super.configureRepositoryRestConfiguration(config);
config.setBaseUri(URI.create(MY_BASE_URI_URI));
}
}
要更改基URI,您还可以将其添加到application.properties:
spring.data.rest.base-path=/my/base/uri
正确的应用程序属性如下: spring.data.rest.base-path=/my/base/path
( base-path
而不是base-uri
)
在春季靴子2
@Configuration
public class RepositoryConfiguration extends RepositoryRestConfigurerAdapter
{
@Override
public void configureRepositoryRestConfiguration(RepositoryRestConfiguration config)
{
config.setBasePath("/my/base/uri");
}
}
我认为path属性用于指定路径段 (因此没有斜线)。 “/ some / other / path”必须是servlet路径或上下文路径(即与Spring Data无关)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.