错误:无法为类创建自我链接

时间:2014-12-11 18:27:49

标签: spring-data-jpa spring-data-rest

尝试使用spring-data-jpa和spring-data-rest从数据库访问记录时,我遇到了下面提到的错误。

  

无法为类创建自我链接[Ljava.lang.Object;!没有执着   找到了实体!

Tables Relation Diagram

我使用下面的查询来检索信息,我的类结构有点如下

Agency
@OneToMany(mappedBy="agencyCode",cascade=CascadeType.ALL)
@JsonIgnore
List<Location> locations;


Location:
@ManyToMany
@JoinColumn(name = "zipCode")
Set<Zip> zips;

Zip:
@Id
@Column(name="zipCode")
String zipCode;

用于检索信息的查询如下:

@Query("SELECT DISTINCT a, l.contactInfo.address.city, l.contactInfo.address.street,    l.contactInfo.phone from Agency a, Location l INNER JOIN  l.zips z where a.ceID = l.agencyCode and z.zipCode = :zip")
public List<Agency> findAgencyByZip(@Param("zip") String zip);      

对此的任何帮助将不胜感激。

此致 阿赫亚

1 个答案:

答案 0 :(得分:1)

不知道这是否是原因,但在Location中,对于@ManyToMany,您需要@JoinTable而不是@JoinColumn。修复此问题,也许这个错误也会修复。试试这个:

@ManyToMany
@JoinTable(name = "LOCATION_ZIP", joinColumns = @JoinColumn(name = "LOCATION_LOC_CODE"),
           inverseJoinColumns = @JoinColumn(name = "ZIPS_ZIP_CODE")
Set<Zip> zips;