簡體   English   中英

使用Errai進行多部分表格上傳

[英]Multi-part form upload with Errai

我正在嘗試為我的Errai應用上傳文件,但是卻出現此錯誤:

[INFO] DEBUG [SynchronousDispatcher] PathInfo: /blob
[INFO] WARN [ExceptionHandler] Failed executing GET /blob
[INFO] org.jboss.resteasy.spi.NotAcceptableException: No match for accept header
[INFO]  at org.jboss.resteasy.core.registry.Segment.match(Segment.java:119)
[INFO]  at org.jboss.resteasy.core.registry.PathParamSegment.matchPattern(PathParamSegment.java:200)
[INFO]  at org.jboss.resteasy.core.registry.RootSegment.matchChildren(RootSegment.java:339)

Errai服務看起來像這樣:

@Path("blob")
public interface BlobService {
    @GET
    @Produces(MediaType.TEXT_PLAIN) 
    String getBlobStoreUploadUrl(); // return "/blob/upload"

    @GET
    @Path("/{id}")
    @Consumes(MediaType.APPLICATION_JSON)
    @Produces(MediaType.APPLICATION_JSON) 
    Picture getPicture(@PathParam("id") String id);

    @POST 
    @Path("/upload")
    @Consumes(MediaType.MULTIPART_FORM_DATA)
    @Produces(MediaType.APPLICATION_JSON)
    void uploadPicture();
}

現在,上傳是通過以下方式觸發的:

submitButton.addClickHandler(new ClickHandler() {
            @Override
            public void onClick(ClickEvent e) {
                blobService.call(new RemoteCallback<String>() {
                    @Override
                    public void callback(String response) {
                        uploadForm.setAction(response);
                        uploadForm.submit();
                        uploadForm.reset();
                    }
                }).getBlobStoreUploadUrl();
            }
        });

從表面上看,我的文件上傳方式存在差異。 這里的想法只是將在通常的上傳表單中選擇的文件上傳到uploadPicture方法。

我編碼上傳服務的方式可能出什么問題?

您在表格上設置了MIME類型嗎? 像這樣

<form enctype='multipart/form-data'>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM