我想通过Hibernate JPA 2 Metamodel Generator为Spring Roo实体创建一个JPA 2 Metamodel。
<groupId>org.hibernate</groupId>
<artifactId>hibernate-jpamodelgen</artifactId>
<version>1.1.1.Final</version>
我按照http://docs.jboss.org/hibernate/jpamodelgen/1.1/reference/en-US/html_single/中描述的方式运行流程。 我还将@Entity Annotation添加到Roo托管实体,生成器创建了Metamodell类,但是它不使用字段,而是使用元模型的Getter。
例如我的实体:
@RooJavaBean
@RooToString
@Entity
public class Banner {
@PersistenceContext
private transient EntityManager em;
private String name;
private int code;
private Champaign champaign;
public String getChampaignName() {
return this.champaign.getName();
}
}
对于这个实体,它创建了Metamodel:
@StaticMetamodel(Banner.class)
public abstract class Banner_ {
public static volatile SingularAttribute<Banner, String> champaignName;
}
在非Roo项目中,相同的设置正常。
是否有任何配置,我可以指定生成器基于字段而不是Getter,以便元模型描述字段:{{name}} {{code}} {{champaign}}。
答案 0 :(得分:2)
一种解决方法是使用@Access(AccessType.FIELD)