microsoftgraph / microsoftgraph/msgraph-sdk-java

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

Ouverte
#2,337 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

status:waiting-for-triage type:bug
Langage dominant
Java
Étoiles
444
Forks
154
Merge moyen
18 h 28 min
PR mergées (30 j)
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_

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par l’appel de traitement des pièces jointes dans MailLocal.java:680 et par le flux d’upload journalisé de SharePointConnection.java:268-297. Reproduisez le téléchargement des pièces jointes Outlook et leur upload vers SharePoint à l’aide de la Java Graph API, puis vérifiez qu’une seule connexion traite les pièces jointes de plusieurs e-mails et les téléverse avec succès.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
java
Domaine
api, cloud
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
30/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.