gpt4 book ai didi

java - 从 Java/J2EE 应用程序将文件上传到 SharePoint

转载 作者:搜寻专家 更新时间:2023-11-01 03:13:34 25 4
gpt4 key购买 nike

我们需要将大型文件(可能高达 200 MB)从 Java/J2EE 应用程序上传到 SharePoint。

我们知道有开箱即用的 SharePoint Web 服务可以将文件上传到 SharePoint。然而,我们主要关心的是如果并发用户上传文件会发生什么。例如,在调用 SharePoint 发送该数据之前,我们需要为 Java 服务器(应用程序服务器)上的每个用户读取一个 200 MB 的文件。即使有 5 个并发用户,消耗的内存也在 1 GB 左右,而且 CPU 使用率也可能很高。在这种情况下,对于如何处理服务器内存、文件上传并发,有什么建议吗?

我认为一个选择可能是使用像 Flash/Flex 这样的技术,它不需要中间的另一个服务器(Java 应用程序服务器)——但是,想知道如何在 J2EE 服务器中实现这一点?

http://servername/sitename/_vti_bin/copy.asmx

谢谢

最佳答案

好的..这就是我的理解:

  • 您正在尝试使用 Sharepoint Copy Service
  • 并且此服务要求流在 Soap 信封中进行 base64 编码。
  • 由于文件很大,您的 SOAP 请求也变得很大,需要更多内存

我可以想到 2 个选项:

  1. 我对 sharepoint 不太了解,如果可以给出要上传的文件的位置而不是发送字节,那么您可以将文件 ftp/sftp 到 sharepoint 服务器,然后使用以下位置调用网络服务文件。

  2. 在 Java 中,不要为 SOAP 消息使用开箱即用的 API,而是编写自定义 API。当用户上传文件时,将其保存为 base64 编码文件。然后您的自定义 api 将创建一条 soap 消息并将其流式传输,而不是将所有内容加载到内存中。

对于选项 2:尝试是否可以将文件内容作为 soap 附件发送。如果您想将它作为消息的一部分发送,它会变得有点复杂。

尝试一下。我不确定是否有效。

关于java - 从 Java/J2EE 应用程序将文件上传到 SharePoint,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4785597/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com