Uploaded image for project: 'Offre de formation'
  1. Offre de formation
  2. ODF-1663

[Apogée] Synchronisation des composantes d'une formation

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Critical Critical
    • 2.6.4
    • 2.6.3
    • Synchro
    • None

      Les composantes d'une formation sont obligatoires, dans certains cas, on obtient donc une liste avec un tableau avec un élément vide lors de program.getRemoteOrgUnits().

      Il faudrait donc tester si les éléments renvoyés par cette méthode sont vides avant de les traiter, par exemple ligne 328 de DefaultApogeeSynchronizationHelper :

      for (String id : oldOrgUnits)
      {
          if (!ouReferences.contains(id))
          {
              OrgUnit orgUnit = _resolver.resolveById(id);
              String warn = "La composante : " + orgUnit.getCode() + ", n'est plus liée à la formation : " + program.getCode() + ", elle devra être supprimée manuellement.";
              report.warn(warn);
              logger.warn(warn);
          }
      }

      L'appel au resolver Ametys provoque l'erreur :

      org.ametys.plugins.repository.AmetysRepositoryException: An object id must conform to the <protocol>://<protocol-specific-part> syntax: 
      	at org.ametys.plugins.repository.AmetysObjectResolver.resolveById(AmetysObjectResolver.java:227)
      	at org.ametys.plugins.odfsync.apogee.DefaultApogeeSynchronizationHelper.synchronizeProgramOrgUnits(DefaultApogeeSynchronizationHelper.java:332)
      [...]

            bmaurel Bérénice Maurel
            bmaurel Bérénice Maurel
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: