【发布时间】:2015-12-27 03:54:13
【问题描述】:
我有一个问题,@RepositoryRestResource 由于空指针返回 500 错误。
我有一个名为Resource 的抽象类,它使用InheritanceType.JOINED 和@JsonSubTypes 提供Resource 的大约5 个子类,例如ServerResource。特定的Resource 在它加入的另一个实体中被引用时返回正常。 PagingAndSortingRepository 在代码中调用时也可以正常工作。问题是@RepositoryRestResource 为Resource 实体公开的端点在直接调用时返回500 错误(由于NPE)。
调试后发现问题出在PersistentEntityResourceAssembler:154这行。映射对象为空,因为框架无法将ServerResource.class 映射到父Resource.class。缓存是一个映射,使用.getClass()。
有什么方法可以让Resource 实体的一个端点为这些单独的类型工作?这几乎看起来像一个错误。
【问题讨论】:
-
我可以 POST 到 URL,但 GET 不起作用。
标签: spring-mvc spring-data spring-data-jpa spring-data-rest