5
私はSDR経由でmongodbコレクションにアクセスしようとしています。私は次の例外スプリングデータ休止mongodb java.lang.IllegalArgumentException:PersistentEntityがnullであってはなりません
java.lang.IllegalArgumentException: PersistentEntity must not be null!
at org.springframework.util.Assert.notNull(Assert.java:112)
at org.springframework.data.rest.webmvc.PersistentEntityResource$Builder.<init>(PersistentEntityResource.java:139)
at org.springframework.data.rest.webmvc.PersistentEntityResource$Builder.<init>(PersistentEntityResource.java:122)
at org.springframework.data.rest.webmvc.PersistentEntityResource.build(PersistentEntityResource.java:114)
at org.springframework.data.rest.webmvc.PersistentEntityResourceAssembler.wrap(PersistentEntityResourceAssembler.java:102)
at org.springframework.data.rest.webmvc.PersistentEntityResourceAssembler.toResource(PersistentEntityResourceAssembler.java:83)
at org.springframework.data.rest.webmvc.PersistentEntityResourceAssembler.toResource(PersistentEntityResourceAssembler.java:45)
at org.springframework.data.web.PagedResourcesAssembler.createResource(PagedResourcesAssembler.java:182)
at org.springframework.data.web.PagedResourcesAssembler.toResource(PagedResourcesAssembler.java:115)
at org.springframework.data.rest.webmvc.AbstractRepositoryRestController.entitiesToResources(AbstractRepositoryRestController.java:127)
at org.springframework.data.rest.webmvc.AbstractRepositoryRestController.toResources(AbstractRepositoryRestController.java:88)
at org.springframework.data.rest.webmvc.AbstractRepositoryRestController.toResource(AbstractRepositoryRestController.java:110)
at org.springframework.data.rest.webmvc.RepositorySearchController.executeSearch(RepositorySearchController.java:185)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:222)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:137)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:110)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:775)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:705)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:959)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:965)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:856)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:622)
を取得
http://localhost:9090/api/linksを打つときに私のモデルは
@Document(collection = "links")
public class Link {
public Link() {}
@Id
private String id;
を次のように定義されて
@RepositoryRestResource
@PreAuthorize("hasAuthority('ROLE_USER')")
public interface LinksRepository extends MongoRepository<Link, String> {
Page<Link> findAllByUsefulURLRegex(@Param("regex") String regex, Pageable p);
のように、次のバージョンでの作業現在
<spring.version>4.1.9.RELEASE</spring.version>
<spring-data-rest>2.4.4.RELEASE</spring-data-rest>
<spring-data-mongodb>1.8.4.RELEASE</spring-data-mongodb>
私のリポジトリが見えます私はそれを把握しないが、運しようとして数時間を過ごした
私はそれが(私が推測する)必要があるとしてMongoMappingContextがクラスリンクを持っていない見つけ少し掘る
。私はを使用していません。スプリングブートを使用していないと、ObjectMapperの問題である可能性がありますが、わかりません。ドメインと設定は簡単です。
ありがとうございます。
あなたはエラーの原因を突き止めることができましたか?私はSpring Platformの 'Athens-SR3'リリースを使用していますが、MongoDBとPersistentEntityResourceAssemblerで同じ問題が発生しています。 – woemler
いいえ、申し訳ありません。それが働いたので、私はこの設定で手を止めました。私はアップグレードしたり、何かを再訪しなければならないと確信しています。 – felipe
FWIW、私のテストでは 'MockMvc'でこのエラーが出ますが、SpringBootでアプリケーションを実行しているときは表示されません。 – woemler