我在我的应用程序中添加了一个文档实体。申请人实体与文档具有一对多关系,即申请人可以上传许多文档。我仍然无法在我的应用中显示此文档。我希望能够在用户点击文档链接时显示文档并下载。 我试图实现代码here,但结果是一个404错误的窗口(描述请求的资源不可用)。 我正在使用MySQL作为数据库。
以下是我的其余代码
Applicant.java
@RooJavaBean
@RooToString
@RooJpaActiveRecord
public class Applicant {
/**
*/
@NotNull
private String name;
/**
*/
@NotNull
private String phone;
/**
*/
private String address;
/**
*/
@NotNull
private String nationality;
/**
*/
@NotNull
private String email;
/**
*/
@Temporal(TemporalType.TIMESTAMP)
@DateTimeFormat(style = "M-")
private Date dateOfBirth;
/**
*/
@OneToMany(cascade = CascadeType.ALL, mappedBy = "applicant")
private Set<Document> files = new HashSet<Document>();
}
Document.java
@RooJavaBean
@RooToString
@RooJpaActiveRecord
public class Document {
private static final Log log = LogFactory.getLog(Document.class);
@NotNull
@Lob
@Basic(fetch = FetchType.LAZY)
private byte[] content;
@Transient
@Size(max = 100)
private String url;
private String filename;
private Long size;
@NotNull
@Size(max = 30)
private String name;
@NotNull
@Size(max = 500)
private String description;
private String contentType;
/**
*/
@ManyToOne
@JoinColumn(name = "applicant_id")
private Applicant applicant;
}
答案 0 :(得分:2)
几周前我遇到了类似的挑战。我刚用另一个代码生成器(generjee)生成了一个应用程序。如果您选择&#34;启用上传文件附件&#34;它可以生成运行良好的一对多文档上传/下载。实体的复选框。然后我将文件上传/下载/显示代码复制到我的spring roo项目中。工作得很好。 不要忘记在pom.xml中定义commons-fileupload,如果使用PrimeFaces,则必须在web.xml中设置PrimeFaces FileUpload Filter。这一切都在generjee产生代码。只需复制并粘贴即可。