用户界面中公开的@ org.jboss.seam.annotations.security.management.UserRoles返回一个简单的List方法。
seam-gen不为@ManyToMany成员生成EntityQuery接口,如上面提到的getUserRoles。
我们如何启用此功能,以便以分页方式显示结果角色。
编辑1:
This is the declaration in User.java
@ManyToMany(cascade = {CascadeType.MERGE, CascadeType.PERSIST, CascadeType.REFRESH}, fetch = FetchType.LAZY)
@JoinTable(name = "user_role", joinColumns = @JoinColumn(name = "user_id), inverseJoinColumns = @JoinColumn(name = "role_id"))
@UserRoles
private List<Role> userRoles = new ArrayList<Role>(0);
这是Role.java中的声明
@Entity
@Table(name = "role", uniqueConstraints = @UniqueConstraint(columnNames = "name"))
public class Role {
答案 0 :(得分:4)
正如Peam Muir所说,Seam首席开发人员
Seam-gen不支持@ManyToMany关系
使用@ManyToMany时不会生成用户界面。虽然Seam-gen让你的生活更轻松,但有时你必须手动完成工作。
继续之前
...
所以我的建议是:
Seam-gen使用的逆向工程配置文件是生成项目中的resources / seam-gen.reveng.xml。
也许你想看
Controlling reverse engineering
Reverse engineering support in database and drivers
添加到原始回答
Seam使用Ant生成您的应用。其build.xml文件位于&lt; SEAM_HOME&gt; /seam-gen/build.xml
在那里,您将看到一个名为 generate-ui 的目标,如下所示
<target name="generate-ui"
它使用名为hbmtemplate的Ant工具。它是基于模板的引擎,其中可以由用户提供的模板或类控制。因此,如果您想要自定义行为,则应提供自己的Freemarker模板。在&lt; SEAM_HOME&gt; / seam-gen / view目录中,您可以看到很多模板文件(.flt扩展名)
的问候,