从客户端向服务器发送图像数据(base64)

时间:2013-09-13 11:17:37

标签: java gwt errai

这是我通过Errai Jax-RS发送和图像数据的代码:

    Model model = new Model();
    GWT.log("Before setting byte array");
    model.setImage(Base64.base64ToByteArray(base64)); 
    GWT.log("After setting byte array");
    modelService.call(new RemoteCallback<String>() {
        @Override
        public void callback(String hash) {
            GWT.log("Model upload with hash - " + hash);
        }
    }, new ErrorCallback() {
        @Override
        public boolean error(Message message, Throwable throwable) {
            showErrorModal();
            return false;
        }
    }).createModel(model);

日志显示在客户端(浏览器)中断或挂起之前记录“设置字节数组后”。所以问题似乎与服务电话有关。发送这样的base64数据是不对的?测试数据发送大小约350K字节。

1 个答案:

答案 0 :(得分:1)

我会用String而不是字节数组发送图像。

因此,当您需要处理图像时,请将模型中的image属性更改为String,并在服务器端将base64字符串转换为字节数组。