尝试上传blob时,JPA休息停止工作

时间:2016-01-15 12:58:04

标签: java jpa

当我添加此代码时,我的整个休息服务停止工作:

@PUT
@Path("upload/{id}")
@Consumes(MediaType.MULTIPART_FORM_DATA)
public void addBlob(@PathParam("id") Integer id, @FormDataParam("file") InputStream uploadedInputStream) throws IOException {
    TheTempClient entityToMerge = find(id);
    try {
        ByteArrayOutputStream out = new ByteArrayOutputStream();
        int read = 0;
        byte[] bytes = new byte[1024];
        while ((read = uploadedInputStream.read(bytes)) != -1) {
            out.write(bytes, 0, read);
        }
        entityToMerge.setTestBlob(out.toByteArray());
        super.edit(entityToMerge);
    }
    catch (IOException e) {
        e.printStackTrace();
    }
}

它并没有真正说明为什么,我得到的只是:

Severe:   WebModule[/MavenProjectTest]StandardWrapper.Throwable
org.glassfish.jersey.server.model.ModelValidationException: Validation of the application resource model has failed during application initialization.

一堆错误说“由以前的错误导致

我一定在这里做了一些非常错误的事,有没有专业的JPA爱好者可以帮助我一点点?

编辑:我正在使用注释而不是web.xml,是否可以在没有web.xml的情况下执行此操作?

1 个答案:

答案 0 :(得分:3)

我必须添加register(MultiPartFeature.class);

ApplicationConfig.java类中,如下所示:

@javax.ws.rs.ApplicationPath("api")
public class ApplicationConfig extends ResourceConfig {

public ApplicationConfig() {
    packages("com.test.thepackage.service");
    register(MultiPartFeature.class);
}

}

现在它就像一个魅力,没有web.xml文件。