microsoftgraph / microsoftgraph/msgraph-sdk-java

Issue: Unable to Process Multiple Emails Simultaneously When Downloading Attachments and Uploading to SharePoint

未关闭
#2,337 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

status:waiting-for-triage type:bug
主要语言
Java
星标
444
派生
154
平均合并
18 小时 28 分钟
30 天内合并 PR
4

描述

Describe the bug

When trying to download attachments from Outlook while simultaneously uploading files to SharePoint, it is not allowing multiple emails; it only processes one email at a time.

Note: Downloading attachments from a single email to local storage and uploading them to SharePoint is working fine using java graphapi.

Expected behavior

We need a process where, within a single connection, we can download attachments and upload them to SharePoint or directly download attachments to SharePoint using Java Graph API with a client secret and application ID.

How to reproduce

To download file from Outlook.
File file1 = new File(localFolder + "/" + sFileName);
System.out.printin("Path::"+LocalFolder +"/" + sFileName);
File folderTouploaded - new File(tempDownload);
for (File fileTemp : folderTouploaded.listriles()) [
if (fileTemp.isFile()) t
fileTemp.setwritable(true);
Logger-info("Name is :::" + fileTemp.getName());
Logger-info("Path is :::"+ fileTemp.getAbsolutePath());
sharerointconnection.upLoadFiLeToSharepoint(graphclient,sharePointsiterd(),sharePointdriveId(), tempDownload,
uploadPath, fileremp.getName(),file1);
deleterile(tempDownload +"/" +fileTemp.getName().tostring());

//To upload file-
Path srcFilePath = Paths.get(srcFolderName + "I" + fileName);
Logger.info("Checking::"+srcFolderName + "I" + fileName);
byte[] srcFileBytes = Files.readAtlBytes(srcfilePath);

DriveItem uploadedItem = drivertemRequestBuilden.content().buildRequest().put(srcFileBytes);

SDK Version

No response

Latest version known to work for scenario above?

No response

Known Workarounds

No response

DEBUG]
LINFO
[INFO

4043-03-40 02120.04 s8u (MailLocal.java:680) - Path is :::D:\myfolder\sharePoint_TestingFiles\Emai
2025-03-20 09:26:04.380 (SharePointConnection.java:268) - Process started::
2025-03-20 09:26:04.380 (SharePointConnection.java:270) - Dest folder name::myfolder\Data\save
2025-03-20 09:26:04.380 (SharePointConnection.iava:271) - SharePointId:test.sharepoint.com,e76d765-86fe-
2025-03-20 09:26:04.3 (SharePointConnection.java:272) - Dest file name::myfolder\Data\save
2025-03-20 09:26:04.381 (SharePointConnection.java:297) - Process completed::
at EmailLocal.lambda$1(EmailLocal.iava:681
at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(Unknown_Source)
at java.util.stream.Referenceipeline$2$1.accept(Unknown Source)
at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(Unknown Source)
at java.util.stream.AbstractPipeline.copyInto(Unknown Source)
at java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source)
at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(Unknown Source)
at java.util.stream.ForEachOps$ForEachOpfOfRef.evaluateSequential(Unknown Source)
at java.util.stream.AbstractPipeline.evaluate(Unknown

</details>


### Configuration

_No response_

### Other information

_No response_

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

从 MailLocal.java:680 的附件处理调用以及 SharePointConnection.java:268-297 中记录的上传流程开始。使用 Java Graph API 重现 Outlook 附件下载和 SharePoint 上传,然后验证一个连接能够处理来自多封电子邮件的附件并成功上传这些附件。

由索引模型根据 Issue 内容生成。

评估

技术栈
java
领域
api, cloud
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
停滞
描述清晰度
需要澄清
新手友好度
30/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。