使用Hessian协议从客户端的文件夹复制到Tomcat服务器映像转让(BOT)(Image ran

2019-09-22 22:51发布

我的目标是上传图片( .jpg.png从客户端的文件夹)通过Hessian协议的Tomcat6服务器。 而做使用服务器上的OpenCV的图像处理,然后返回到图像回客户端。

问题1。 在下面的步骤transfering正确?

  • test.jpg图像上客户端的文件夹
    -->转换test.jpgclient.javamain.java )类BufferedImage
    -->转换BufferedImage到垫或Iplimage服务器使用openCV

我已经设置从一个Hello World样本使用Hessian简单消息实例 ,并从搜索黑森州与大型二进制数据和其他网站,但仍然不知道如何使用它!

问题2。 是否有相关的Java代码示例?

(我用ubuntu12 + netbeans7.2)

Answer 1:

这听起来像你可能要处理的图像作为客户端上的字节流,而不是使用的BufferedImage。 处理后,你可以做任何你想要的,但它会更容易使用麻袋,如果你只是发送文件内容。

黑森州理解的InputStream的类型。 所以,你的最小的方法调用API可以看起来像

InputStream convert(InputStream upload);

该客户端将打开一个输入流,以原来的文件,直接发送输入流:

InputStream is = new FileInputStream("test.jpg");
InputStream resultIs = hessianProxy.convert(is);
.... // save the result

有点谨慎对待的是,粗麻布响应连接仍然会现场,直到你读完输入流,所以你需要马上看它。 (这不是缓冲,这是一个原因,它可能是有效的。)

在服务器上,你需要从输入流(再次,立即)阅读。 而作为一个结果,返回的InputStream,从您的转换后的图像内容如下:

InputStream convert(InputStream is) {
  ... // read from 'is' to your internal data
  InputStream result = ... // process
  return result;
}

你会想,以确保结果的输入流在文件末尾自动关闭任何东西。 您可能希望创建一个包装调用close()。



文章来源: Image ransfer using hessian protocol from client's folder to tomcat server