12
votes

Comment désactiver le cache de portlet de Liferay?

Je développe un Portlet pour portail de perte de vie .

J'ai désactivé CSS et JavaScript Caching par Utilisation de ces codes dans Portal-Developer.Properties Fichier: P>

theme.css.fast.load=false
theme.images.fast.load=false
javascript.fast.load=false
javascript.log.enabled=true
layout.template.cache.enabled=false
last.modified.check=false
velocity.engine.resource.manager.cache.enabled=false
com.liferay.portal.servlet.filters.cache.CacheFilter=false
com.liferay.portal.servlet.filters.layoutcache.LayoutCacheFilter=false


1 commentaires

Je cherche à faire quelque chose de similaire, sauf lorsque je modifie certaines données, les données précédentes sont mises en cache jusqu'à ce qu'une nouvelle actualisation soit faite. Fondamentalement, certaines modifications sont effectuées dans les préférences du portlet, et elles ne s'affichent pas tant que la page se rafraîchit, au lieu de montrer les modifications apportées à la page de la page.


7 Réponses :


1
votes

J'ai eu de tels problèmes avec des horloges mal alignées: lorsque vous modifiez le JSP via un montage réseau et votre ordinateur croit qu'il est 10h00 tandis que le serveur croit, qu'il est déjà 10h05, c'est ce qui pourrait arriver: < / p>

  • Vous changez le JSP à 10h01
  • Le Tomcat voit et compile - tout fonctionne comme prévu, mais la page compilée a un horodatage de 10:06
  • Vous changez à nouveau le JSP à 10h03
  • Tomcat voit l'horodatage modifié et la compare avec l'horodatage de la page compilée: la page compilée est plus récente (horodatamp-wise), donc aucune compilation n'est effectuée et la page ne reflète pas votre mise à jour
  • Vous êtes frustré, redémarrez Tomcat, qui prend 2 minutes
  • Vous corrigez une autre erreur dans la page, maintenant c'est horodatage 10:07
  • Tomcat le ramasse, compile-le ...

    En outre, je pense que je me souviens de mémoriser une configuration "context" permettant de modifier le comportement de traduction JSP. Travaillez-vous sur un ensemble inchangé de la vie / Tomcat? Est-ce que la même chose se produit lorsque vous travaillez sur une seule machine? Est-ce que la même chose se produit lorsque vous prenez un nouveau paquet, décompressez et réessayez?


0 commentaires

0
votes

Pourquoi redémarrez-vous Tomcat? Déployez simplement votre portlet dans le répertoire de déploiement. C'est le plus rapide. Et si vous exécutez la perte de vie d'Eclipse IDE, je pense que les modifications sont ramassées automatiquement.


1 commentaires

Parce que le rechargement de la vie est la merde et ne fonctionne souvent pas correctement (conditions de course de fichiers Galore).



1
votes

Utilisez la ligne suivante dans la méthode DOVIEW: ABCOUTIL.CLEARCACHE () et peut également utiliser 0 dans la vôtre descripteur de déploiement de portlet.


1 commentaires

@ user718609 - quelle ligne suivante? Bienvenue, mais veuillez noter le Mise en forme de marquage Aide et FAQ sur les signatures dans les messages - Utilisez Votre page de profil ou vos réponses sont susceptibles d'être marquées comme spam.



1
votes

J'ai trouvé la solution utilise multivoolutil.clear ();


0 commentaires

1
votes

Une des choses qui tend à visser le rechargement de JSP est une différence de fuseau horaire qui provoque un effet comme celui de l'OLAF Kock décrit. Habituellement, vous pouvez repérer cela dans les fichiers journaux car il dira quelque chose comme "XXX a été modifié à l'avenir".

En raison de ces horodatages vissés, le nouveau fichier ne sera-t-il pas correctement détecté et utilisé. Cela peut être facilement résolu en modifiant le fuseau horaire dans le fichier setenv.bat / setenv.sh de Tomcat vers une valeur appropriée.


0 commentaires

5
votes

Avec la dernière version, Liferay 6.2 Vous pouvez activer le mode de développement.

Lorsque vous utilisez l'IDE Liferay
  1. Allez sur la vue Serveurs et double-cliquez sur le serveur

    Entrez la description de l'image ici

    1. Sélectionnez le mode de développement, enregistrez la configuration et redémarrez le serveur

      Entrez la description de l'image ici

      Lorsque vous n'utilisez pas l'IDE Liferay
      1. Edit Setenv.sh ou Setenv.Bat (pour Windows) en $ liferay_dir / $ tomcat_dir / bin /
      2. Ajouter -dexternal-properties = portail-developer.properties au catalina_opts

        référence: https://www.liferay.com/documentation/liferay-portal/6.2/development/-/ai/us-developer-mode-with-themes-liferay-portal-6-2-dev- guide-09-fr


0 commentaires

0
votes

Mon problème était que le déploiement ne modifie pas les changements de réfectification que je me suis mis à la source JavaScript.

Créer un fichier nommé: p> xxx pré>

spécifiquement dans le répertoire: p>

rd /q /s \liferay-portal-6.2-ce-ga4\jboss-7.1.1\standalone\tmp\work\jboss.web\default-host\my-portlet
rd /q /s \liferay-portal-6.2-ce-ga4\jboss-7.1.1\standalone\deployments\my-portlet.war
rd /q /s \liferay-portal-6.2-ce-ga4\liferay-plugins-sdk-6.2\portlets\my-portlet\docroot\WEB-INF\classes
ant.bat


0 commentaires