Spring Roo:显示和下载文档

时间:2015-11-20 13:55:00

标签: spring spring-mvc spring-roo

我在我的应用程序中添加了一个文档实体。申请人实体与文档具有一对多关系,即申请人可以上传许多文档。我仍然无法在我的应用中显示此文档。我希望能够在用户点击文档链接时显示文档并下载。 我试图实现代码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;
}

1 个答案:

答案 0 :(得分:2)

几周前我遇到了类似的挑战。我刚用另一个代码生成器(generjee)生成了一个应用程序。如果您选择&#34;启用上传文件附件&#34;它可以生成运行良好的一对多文档上传/下载。实体的复选框。然后我将文件上传/下载/显示代码复制到我的spring roo项目中。工作得很好。 不要忘记在pom.xml中定义commons-fileupload,如果使用PrimeFaces,则必须在web.xml中设置PrimeFaces FileUpload Filter。这一切都在generjee产生代码。只需复制并粘贴即可。