microsoftgraph / microsoftgraph/msgraph-sdk-java

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

Open
#2,337 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

status:waiting-for-triage type:bug
Dominant language
Java
Stars
444
Forks
154
Avg merge
18h 28m
Merged PRs (30d)
4

Description

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_

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the attachment-processing call at MailLocal.java:680 and the upload flow logged from SharePointConnection.java:268-297. Reproduce the Outlook attachment download and SharePoint upload using the Java Graph API, then verify that one connection processes attachments from multiple emails and uploads them successfully.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
api, cloud
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.