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

Ecran de saisie des heures : erreur 500 lorsqu'on rencontre une heure sans nature

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Critical Critical
    • None
    • 4.8.8
    • None
    • None

      Sur l'écran de saisie des heures on rencontre une erreur 500 dans le cas d'une heure d'enseignement sans nature d'enseignement.
      L'écran de saisie n'est alors pas utilisable. Les éléments de la maquette ne peuvent pas être dépliés pour accéder à la saisie des heures.

      Pour reproduire sur la démo ODF :

      • Dans JCR retirer la nature d'une heure d'enseignement par exemple de ce noeud : c2dfd114-5b7c-456d-8d51-23a7b324cee2 enregistrer
      • Dans le BO accéder à la formation Licence Histoire et Géographie
      • Accéder à l'écran de saisie des heures d'enseignement
      • Déplier la maquette jusqu'à atteindre les heures d'enseignements du premier trimestre -> ça explose

      On peut se retrouver dans cette situation lorsque les ELP proviennent d'un import Apogée et que la nature définie dans Apogée n'a pas de correspondance dans Ametys.

      Les heures d'enseignements sans nature ne peuvent pas apparaître dans le tableau mais elle ne devrait pas le faire planter

      An object id must conform to the <protocol>://<protocol-specific-part> syntax but id is blank or null
      org.ametys.plugins.repository.AmetysRepositoryException: An object id must conform to the <protocol>://<protocol-specific-part> syntax but id is blank or null
          at org.ametys.plugins.repository.AmetysObjectResolver.resolveById(AmetysObjectResolver.java:328)
          at org.ametys.plugins.odfpilotage.helper.CoursePartsTreeHelper._coursePartToJson(CoursePartsTreeHelper.java:113)
          at org.ametys.plugins.odfpilotage.helper.CoursePartsTreeHelper.content2Json(CoursePartsTreeHelper.java:82)
          at org.ametys.plugins.contentstree.ContentsTreeHelper._addChildren(ContentsTreeHelper.java:180)
          at org.ametys.plugins.contentstree.ContentsTreeHelper._addChildren(ContentsTreeHelper.java:186)
          at org.ametys.plugins.contentstree.ContentsTreeHelper.getChildrenContent(ContentsTreeHelper.java:152)
          at jdk.internal.reflect.GeneratedMethodAccessor237.invoke(Unknown Source)
          at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
          at java.base/java.lang.reflect.Method.invoke(Method.java:568)
          at org.ametys.core.ui.ExecuteClientCallsAction._executeMethod(ExecuteClientCallsAction.java:205)
          at org.ametys.core.ui.ExecuteClientCallsAction.act(ExecuteClientCallsAction.java:183)
          at org.apache.cocoon.components.treeprocessor.sitemap.ActTypeNode.invoke(ActTypeNode.java:120)
          at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:47)
          at org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke(MatchNode.java:108)
          at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69)
          at org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:143)
          at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69)
          at org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:93)
          at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:236)
          at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.buildPipeline(ConcreteTreeProcessor.java:194)
          at org.apache.cocoon.components.treeprocessor.TreeProcessor.buildPipeline(TreeProcessor.java:267)
          at org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:111)
          at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:47)
          at org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke(MatchNode.java:108)
          at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69)
          at org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:143)
          at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69)
          at org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:93)
          at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:236)
          at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.buildPipeline(ConcreteTreeProcessor.java:194)
          at org.apache.cocoon.components.treeprocessor.TreeProcessor.buildPipeline(TreeProcessor.java:267)
          at org.apache.cocoon.components.source.impl.SitemapSource.init(SitemapSource.java:333)
          at org.apache.cocoon.components.source.impl.SitemapSource.<init>(SitemapSource.java:215)
          at org.apache.cocoon.components.source.impl.SitemapSourceFactory.getSource(SitemapSourceFactory.java:68)
          at org.apache.excalibur.source.impl.SourceResolverImpl.resolveURI(SourceResolverImpl.java:208)
          at org.apache.cocoon.components.CocoonComponentManager.resolveURI(CocoonComponentManager.java:558)
          at org.apache.cocoon.components.CocoonComponentManager.resolveURI(CocoonComponentManager.java:558)
          at org.apache.cocoon.components.CocoonComponentManager.resolveURI(CocoonComponentManager.java:558)
          at org.apache.cocoon.components.CocoonComponentManager.resolveURI(CocoonComponentManager.java:558)
          at org.ametys.core.ui.dispatcher.DispatchGenerator._dispatchingSubRequest(DispatchGenerator.java:217)
          at org.ametys.core.ui.dispatcher.DispatchGenerator._dispatching(DispatchGenerator.java:142)
          at org.ametys.core.ui.dispatcher.DispatchGenerator.generate(DispatchGenerator.java:93

            Unassigned Unassigned
            lperier Laurence Perier
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: