Bonjour,
J'utilise actuellement Struts2 avec les Freemarker.
Mon but est d'obtenir le rendu d'un template dans une chaine de caractères (et pas directement en sortie pour le client). Je vous passe les détails de pourquoi je veux faire ça...
Jusqu'ici, j'ai réussi à le faire, de la manière suivante
Ca marche bien, sauf quand il y a des Struts Tags dans mon code FTL. Là, il me dit qu'il ne reconnait pas le "s", ce qui signifie que la librairie de tags n'est pas chargée. Cela me semble normal, je ne lui ai pas demandé.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 /** * Effectue le rendu d'un template Freemarker et renvoie le résultat sous la forme d'une chaine de caractère. * @param cheminTemplate Le chemin du template Freemarker. * @param variables Les variables utilisées pour le rendu du template. * @return Le rendu du template. */ public static String getTemplateEnString(String cheminTemplate, HashMap<String, Object> variables) throws Exception { String resultat = null; Configuration configuration = new Configuration(); Template template; configuration.setServletContextForTemplateLoading(ServletActionContext.getServletContext(), "/WEB-INF/pages"); template = configuration.getTemplate(cheminTemplate); StringWriter sortie = new StringWriter(); template.process(variables, sortie); resultat = sortie.getBuffer().toString(); return resultat; }
Ma question est donc : comment charger cette librairie Struts Tags ?
Merci pour votre aide
Partager