Uploaded image for project: 'Jahia Community'
  1. Jahia Community
  2. JAHIA-4366

Incohérence entre la lecture et l'écriture des catégories dans les metadatas

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • Minor
    • xCM 5.0 SP6
    • xCM 5.0 SP5
    • None

    Description

      Bonjour,

      Il me semble avoir découvert un bug qui doit se trouver dans la méthode CategoryServiceImpl.removeObjectKeyFromCategory()

      Voici le scenario, ainsi que les résultats que je peux observer dans l'engine updatecontainer, dans la table jahia_links, et dans la table jahia_fields_data pour la metadata des catégories
      ( mes requêtes SQL avec l'id de mon container = 1400 :
      select * from jahia_link where left_oid like '%_1400' or right_oid like '%_1400'
      select value_jahia_fields_data, * from jahia_fields_data where id_jahia_obj = 1400 and type_jahia_fields_data = 14 order by workflow_state asc
      )

      [Etape 1] Création du container :

      • engine : aucune catégorie sélectionnée
      • jahia_links : 0 ligne pour le container
      • jahia_fields_data : 1 ligne avec worflow_state = 1 et value_jahia_fields_data = null
        => OK

      [Etape 2] Clic sur le lien qui permet d'exécuter addObjectKeyToCategory :

      • engine : la catégorie myCategory est sélectionnée
      • jahia_links : 1 ligne pour le container
      • jahia_fields_data :
        1 ligne avec worflow_state = 0 et value_jahia_fields_data = null
        1 ligne avec worflow_state = 1 et value_jahia_fields_data = myCategory
        => OK

      [Etape 3] Clic sur le lien qui permet d'exécuter removeObjectKeyToCategory :

      • engine : aucune catégorie sélectionnée
      • jahia_links : 0 ligne pour le container
      • jahia_fields_data :
        1 ligne avec worflow_state = 0 et value_jahia_fields_data = null
        1 ligne avec worflow_state = 1 et value_jahia_fields_data = myCategory
        => KO : il y a une incohérence entre le contenu de la table jahia_fields_data et le contenu de la table jahia_links
        Cette incohérence est visible sur le site :
        myCategory.getChildContentObjects() ne retrouve pas ce lien
        <query:equalTo propertyName="${queryConstants.DEFAULT_CATEGORY}" value="myCategory" metadata="true" multiValue="true" /> retrouve le lien

      [Etape 4] Clic sur le lien qui permet d'exécuter addObjectKeyToCategory :

      • engine * la catégorie myCategory est sélectionnée
      • jahia_links : 1 ligne pour le container
      • jahia_fields_data :
        1 ligne avec worflow_state = 0 et value_jahia_fields_data = null
        1 ligne avec worflow_state = 0 et value_jahia_fields_data = myCategory
        1 ligne avec worflow_state = 1 et value_jahia_fields_data = myCategory$$$myCategory

      Le problème semble venir du fait que j'utilise comme format pour la clef de ma catégorie xxx@@yyy et je me retrouve avec xxx#64;#64;yyy$$$xxx@@yyy

      Il semblerait donc qu'il y ait une incohérence entre les méthodes removeObjectKeyToCategory() et addObjectKeyToCategory().
      L'une effectuant une transformation du caractère "@" (et certainement d'autres) alors que l'autre méthode ne le fait pas.

      Cordialement,
      Sébastien

      TestRail: Results

        Attachments

          Activity

            People

              Unassigned Unassigned
              sdenef Sebastien De Nef
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:

                TestRail: Runs

                  TestRail: Cases

                    Packages

                      Version Package
                      xCM 5.0 SP6