2014-09-04 107 views
0

现在您是否有使用MBean上传文件的方法?特别是,我希望能够将存储在本地计算机上的文件上载到远程服务器上运行的应用程序。如何使用MBean上传文件?

不幸的是,我找不到任何具有此信息的信息源。理想情况下,它应该是BROWSE按钮,您可以点击并指定要上传的文件。

我正在考虑的另一种方法是将文件的内容复制并粘贴到MBean的TextArea中,但由于某种原因,它看起来像不能有TextArea ......只是一个普通的输入文本字段:/因此长度非常有限,内容不可读。

回答

1

上传文件完全超出了JMX的范围,JMX旨在提供远程管理功能。

它是;然而,并非不可能。

由于您可以在JMX请求中发送数据,因此可以编写一个接受输入并将其写入文件的bean。你将需要这样做:

  1. 创建一个对象来保存文件数据(可能是文件的一部分,这将取决于文件大小)。
  2. 用文件名远程调用bean。
  3. 让Bean返回一个标识符以与该文件的输入相关联。
  4. 迭代调用bean来写入文件数据。这些消息中的每一个都将包含在步骤3中返回的标识符(因此,在多个并发上传的情况下,远程bean知道应该将数据写入哪个文件)。
  5. 远程调用该bean来告诉它上传已完成。再次包括来自步骤3的标识符。