Travaux effectués sur SweetWiki v21 laissée par Adil

De $1

Version de 18:15, 16 Avr 2024

cette version.

Revenir à liste des archives.

Voir la version actuelle

BUGS à voir

  • tester l'encodage des vidéos avec ffmepeg,
  • auto-complétion dans l'éditeur tag, interested by
  • requetes webs, pages dans editeur pour liens
  • Les menus web et page de la page search et de l'éditeur kupu provoquent un plantage dans jsp/process/link.jsp car on essaie de passer un paramètre à une feuille xsl via un tag des sem services.
  • Tous les appels à des  feuilles xslt + params merdent dans les semtags

Correction d'un bug d'encodage

Il a été nécessaire de convertir le format de certains fichiers jsp pour qu'ils soit en UTF8...

Insertion d'images, fichiers, vidéos

Lors de l'insertion d'une image, le fichier jsp/process/ProcessFileUpload.jsp appelait la fonction :

if("<%= sel %>"=="video"){
  		window.opener.notifyVideo(file, "<%= keywords %>");
   	}else{
  		window.opener.notifyImage(file, "/${pageContext.servletContext.servletContextName}/pub/" + name, "<%= keywords %>");
  	}
}

Et notifyImage est appelé par l'opener (jsp/kupu/edit.jsp en fait), la fonction notifyImage est dans jsp/kupu:kupuJScode.js

function notifyImage(name, keywords){
        var url = "/${pageContext.servletContext.servletContextName}/pub/" + name;
        var newnode = kupu.getInnerDocument().createElement('span');
        newnode.setAttribute('about', url);
        attachKeywords(keywords, 'Image', newnode, url, name);
        var image = kupu.getInnerDocument().createElement('img');
        image.setAttribute('src', url);
        image.setAttribute('alt', name);
        image.setAttribute('class', 'image-inline');
        newnode.appendChild(image);
        kupu.insertNodeAtSelection(image, 1);

      }

Bug identifié : l'url inséré dans le tag HTML contient

/${pageContext.servletContext.servletContextName}

qui ne peut être évalué dans du javascript. Dans la page en cours d'édition il est impératif d'insérer le path "réel" afin que l'image apparaisse bien. Néanmoins, lors de la sauvegarde de la page et afin qu'elle ne contienne pas en dur le path absolu, on remplace par la référence au contexte. Cela a lieu lors de la sauvegarde par la servlet Save.java qui exécute la feuille de style file/xsl/span2sew.xsl. Dans cette feuille de style on retrouve :

<!-- MB: This is for transforming all  /wiki or equivalent  into /${pageContext.servletContext.servletContextName} when going out from kupu -->
  <xsl:template match="*[starts-with(@src, $context) or starts-with(@href, $context) or starts-with(@about, $context)]">
    <xsl:copy>
      <xsl:for-each select="@*">
         <xsl:choose>
           <xsl:when test="(local-name(.) = 'src') or (local-name(.) = 'href') or (local-name(.) = 'about')">
             <xsl:attribute name="{local-name(.)}" namespace="{namespace-uri(.)}">/${pageContext.servletContext.servletContextName}<xsl:value-of select="substring-after(., $context)"/></xsl:attribute>
           </xsl:when>
           <xsl:otherwise>
             <xsl:copy-of select="."/>
           </xsl:otherwise>
         </xsl:choose>
      </xsl:for-each>
      <xsl:for-each select="*">
        <xsl:apply-templates select="."/>
      </xsl:for-each>
      <xsl:for-each select="text()">
        <xsl:copy-of select="."/>
      </xsl:for-each>
    </xsl:copy>
  </xsl:template>
  <xsl:template match="@*|*|text()|processing-instruction()|comment()">
    <xsl:copy>
      <xsl:apply-templates
        select="*|@*|text()|processing-instruction()|comment()" />
      </xsl:copy>
    </xsl:template>

CORRECTION DU BUG : passer l'URL absolu lors de l'appel à notifyImage :

Fichiers impactés :

  • jsp/process/ProcessFileUpload.jsp (utilisé pour l'upload d'images, de vidéos ou de fichiers)
  • jsp/Process/ProcessLinkVideo.jsp (utilisé pour les insertions de vidéos externes)
  • jsp/kupu/kupuJScode.js (contient les notifiers qui insèrent à la volée dans le dom les spans, les tags img, les tags video

Correction : auto-complétion des tags dans kupu

Il s'agit de l'auto-complétion des tags dans l'éditeur de kupu. NON CORRIGE

Correction des erreurs CXF au démarrage du contexte

Solution : mettre le bon spring.jar de la version 2.0.8 et virer les autres spring-2.0.8.*