You are not logged in.
Encore un détail : y-a-t-il un moyen d'affecter automatiquement ce service à un gabarit sans passer par une manipulation via l'ihm ?
Merci encore.
Bonjour,
Merci pour ces indications. Je vais les mettre en oeuvre de suite.
Bonjour,
La redirection me semble demander une structure de site difficilement compréhensible pour l'utilisateur... et ne remplit pas toutes les contraintes (le fil d'ariane)
Comment fait-on pour créer un service non-cachable qui ne fait rien ?
En l'etat, l'ideal serait de désactiver le cache et de n'utiliser que des pages dynamiques pour ce site, quitte à lui donner plus de cpu et de mémoire côté CMS si le nombre d'utilisateur est trop important.
Sinon, j'ai vu des jars ehacache dans le projet, et sur cette page cela semble indiquer que l'on peut cacher des pages avec url paramètres inclus :
Ne serait-ce pas plus simple d'utiliser cela ?
Le problème est que je ne sais pas ou modifier l'utilisation du cache dans le code...
Merci
Le besoin de départ est d'avoir un site qui permet de lister des services informatiques disponibles, et ce d'une façon générique (la totalité des services) ET de façon profilée en fonction du type d'utilisateur et de son appartenance à un département.
Il y a des services dont la description est commune à tous les profils, d'autres qui possèdent une description particulière en fonction du profil (type d'utilisateur + département donc)
Ce que je voulais faire, et qui fonctionne tant que l'on reste dans le CMS et non en version site, c'est utiliser des url de genre où les paramètres sont utilisés dans la xsl d'un gabarit chargé de lister les services adéquats. Les pages décrivant des services sont donc etiquetées par deux jeux d'etiquettes qui correspondent aux valeur des paramètres utilisateur et département
Le but était d'éviter de crééer autant de gabarit différents qu'il y a de combinaisons entre ces deux paramètres (18 pour l'instant mais qui vont être appelées à augmenter), et donc dix-huit gabarits avec juste des filtres qui différent.
D'autant que cette solution ne résout pas les problèmes de cohérence de la navigation :
il faut pouvoir retourner à cette page taggée listant les services depuis les pages décrivant les services remontées par le gabarit - or les pages communes n'ont pas les tags permttant d'identifier la page racine.
Mais tout ceci n'est peut-être pas réalisable à cause da la couche statique utilisée lors de la publication du site ?
Les seules solutions que je suis capable d'envisager :
-En faisant du rewriting sur les url avec paramètres ne pourrait-on faire en sorte que le cache stocke en filesystem une version différente de la page pour chaque combinaison de paramètres ?
- ou en créant un service qui remonte des pages filtrées sur plusieurs tag... mais le temps m'est compté, je ne sais pas si ce srait long ?
J'espère avoir été un peu plus clair...
Merci pour toute piste supplémentaire...
Bonjour,
J'ai effectivement un problème avec le RequestParameterInputData : le cache des sites publiés ne prends pas en compte les paramètres d'url
En dehors du fait de créer un service non-cachable, n'y-a-t-il pas moyen de modifier le cache pour qu'il prenne en comptes les paramètres, c'est-à-dire que pour qu'il cache un contenu différent quand les paramètres d'url changent ?
Sinon, comment faut-il faire car en suivant vos recommandantions pour l'InputData je n'ai pas déclaré de nouveaux services ?
Merci
Je pensais qu'il existait peut-être un mécanisme de compilation intégré dans le process de déploiement...
Il me faut donc déployer la classe compilée dans Eclipse sur mon poste de dev, dans le WEB-INF du serveur. A part ce petit bémol, tout fonctionne bien en suivant vos inidications.
Pour infos, l'usage que je fait de ce mécanisme : changer le comportement de la xsl en utilisant certains paramètres d'url afin d'avoir un semblant de vue profilée (contenu afficher selectivement selon la valeur des paramètres)
Je me pose cependant la question : est-ce que le cache du site publié va utiliser ces paramètres afin de distinguer les différentes pages ? Je n'ai pas encore eu l'occasion de tester...
Merci !
Bonjour,
J'ai essayé de suivre ces indications mais j'ai un ClassNotFound, (alors que ma classe est bien dans les sources du plugin) :
Caused by: org.apache.avalon.framework.configuration.ConfigurationException: Unable to instanciate class 'com.anwrt.inpt.siteweb.inpt.RequestParametersInputData' for plugin 'dsi_alert' / 'inputdata.requestparams' @file:///home/cms/Ametys_CMS/application/v1_0_0RC3/cms/plugins/dsi_alert/plugin.xml:94:87 at org.ametys.runtime.plugin.component.AbstractThreadSafeComponentExtensionPoint.addExtension(AbstractThreadSafeComponentExtensionPoint.java:142) at org.ametys.runtime.plugin.PluginsManager._loadExtensions(PluginsManager.java:1077) at org.ametys.runtime.plugin.PluginsManager._loadFeatures(PluginsManager.java:1030) at org.ametys.runtime.plugin.PluginsManager.initExtensions(PluginsManager.java:472) at org.ametys.runtime.cocoon.TreeProcessor.compose(TreeProcessor.java:65) ... 38 more Caused by: java.lang.ClassNotFoundException: com.anwrt.inpt.siteweb.inpt.RequestParametersInputData at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1516) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1361) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:169) at org.ametys.runtime.plugin.component.AbstractThreadSafeComponentExtensionPoint.addExtension(AbstractThreadSafeComponentExtensionPoint.java:138) ... 42 more
Faut-il placé cette classe ailleurs ?
Merci
Merci pour ces indications et cette réponse rapide. Nous testerons ce mécanisme d'inputdata.
Bonjour,
Travaillant sur un nouveau skin pour le CMS Ametys, je voudrais savoir s'il est possible de récupérer au niveau des xsl de la skin des paramètres de requetes http ?
Je crois qu'il existe au niveau de cocoon un générateur dont le namespace est
Est-il intégré dans les pipelines ametys ? Sinon, où l'intégrer ?
L'idée est de modifier les élements affichés dans un template xsl en fonction de paramètres dynamiquement choisis et transmis dans l'url, pour profiler le contenu.
Merci