IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Struts 1 Java Discussion :

Où trouver le fichier struts-html.tld ?


Sujet :

Struts 1 Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 73
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 263
    Points : 121
    Points
    121
    Par défaut Où trouver le fichier struts-html.tld ?
    A l'aide de l'IDE de NetBeans, je tente de créer ma première application Struts. J'ai une application J2SE - JSP - servlets - JBeans - conteneur web de Tomcat - JDBC - SQL qui fonctionne bien et je tente de la transformer pas à pas pour qu'elle devienne conforme à la méthodologie de Struts. Mon tutoriel est "Introduction à Struts par la pratique" de Serge Tahe (qui me semble d'ailleurs très bon). La classe ActionServlet et le fichier struts-config.xml semblent fonctionner comme il faut car au travers d'eux, à une URL entrante est associée une action qui appelle bien la page JSP correspondant à cette URL.
    La version Java qu'emploie mon IDE de NetBeans (v6.1) est J2SE et non J2EE (JDK 1.6.0_07). Et je dispose de Struts dans NetBeans du fait que j'ai déchargé le module (plug-in) de Struts (v1.2.9) à partir de NetBeans. Je n'ai donc pas déchargé Struts séparément, à partir du site de Apache Software Foundation, ni déchargé J2EE.
    Voici que j'arrive à l'étape où il faut employer des bibliothèques de balises JSP tout faits pour Struts ( <html:XX/> ). Il me faut m'assurer que mon NetBeans dispose bien du fichier 'struts-html.tld' . Je suis invité à en placer une copie dans le répertoire WEB-INF de mon application. Pas de chance : Alors que ce fichier est annoncé faisant partie de la distribution de Struts, je ne le trouve nulle part. Je ne trouve d'ailleurs aucun fichier '.tld' . Je m'attendais à le trouver dans '\Program Files\NetBeans 6.1\entreprise5\modules\ext\struts', mais non ! Quelqu'un peut-il me confirmer que le plug-in pour Struts installé par NetBeans ne contiendrait pas ces fichiers '.tld' ? (Impossible, il me semble).
    Je re-déchargerais bien le module contenant les '.tld' (v1.2.9 ou 1.3.10) du site 'http://struts.apache.org/download.cgi'. Quelqu'un peut-il me dire quel module contiendrait ces '.tld' ?
    Merci

  2. #2
    Membre du Club
    Inscrit en
    Septembre 2007
    Messages
    233
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 233
    Points : 67
    Points
    67
    Par défaut
    En effet tu dois avoir un fichier struts-html.tld placé dans ton répértoir WEB-INF .Pérsonnellment j'utilise l'EDI MyEclipse et j'ai pas eu à le crérer ou le copier dans mon répértoire WEB-INF il est très pratique surtout pour une première application struts .

    Avec eclipse tu copie les fichiers et c'est configuré automatiquement il suffit de telecharger le dossier struts il existe un tutorial la dessus sur le site .
    Sinon voila une partie de ce que peut contenir un fichier struts-html.tld :

    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
    22
    23
    24
    25
    26
    27
    28
    29
     
    <?xml version="1.0" encoding="UTF-8"?>
     
    <!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN" "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
    <taglib>
    <tlibversion>1.0</tlibversion>
    <jspversion>1.1</jspversion>
    <shortname>html</shortname>
    <uri>http://jakarta.apache.org/struts/tags-html</uri>
    <tag>
    <name>base</name>
    <tagclass>org.apache.struts.taglib.html.BaseTag</tagclass>
    <bodycontent>empty</bodycontent>
    <attribute>
    <name>target</name>
    <required>false</required>
    <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
    <name>server</name>
    <required>false</required>
    <rtexprvalue>true</rtexprvalue>
    </attribute>
    </tag>
    <tag>
    <name>button</name>
    <tagclass>org.apache.struts.taglib.html.ButtonTag</tagclass>
    <attribute>
    <name>accesskey</name>
    Cependant pour le cas de NetBeans j'ai jamais developpé d'application struts,
    esseye donc de telecharger ton fichier struts et configure ton application manuellement .

  3. #3
    Expert éminent

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Points : 7 778
    Points
    7 778
    Par défaut
    Les tlds sont dans le jar de Struts, sous META-INF/tlds.

    Si tu es en J2EE 1.4 (Servlet 2.4/JSP 2.0) ou plus, tu n'as pas besoin de les copier sous WEB-INF et de les référencer dans le web.xml parce que celles-ci seront automatiquement chargées par le serveur au lancement de l'application.

    Pour les utiliser, il suffit de les référencer via leurs uri dans la directive taglib.
    En Struts 1.2, les uri sont les suivantes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean" %>
    <%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html" %>
    <%@ taglib uri="http://jakarta.apache.org/struts/tags-logic" prefix="logic" %>

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 73
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 263
    Points : 121
    Points
    121
    Par défaut J2SE ou J2EE
    Merci, c_nvy.
    Mais je suis encore en J2SE.
    Venant de mettre en pratique mes premiers servlets, JavaBeans, Jscripts, JSP & JSTL, MVC, ... je me suis déjà senti poussé à employer J2EE. Comme je ne sais pas ce que cela implique pour l'IDE de NetBeans, je postpose. Peut être à tort. Me conseilles-tu de faire une application employant tous les différents aspects, outils et structure de J2EE avant d'aborder Struts ?
    Struts1 est-il à déconseiller avant d'avoir installé J2EE ?

    Comme j'emploie Struts 1.2.9, j'essayerai bientôt ton conseil :
    <%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html" %>
    mais je dois d'abord surmonter un autre obstacle (voir bientôt ma 2e question dans ce forum Struts).

    J'espère que cette question concernant 'Où trouver struts-html.tld ?' dans ce forum Struts intéressera d'autres débutants en Struts.
    Shoukran.

  5. #5
    Expert éminent

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Points : 7 778
    Points
    7 778
    Par défaut
    Je ne voudrais pas dire de bêtises mais pour pouvoir utiliser des jsp et des servlets, tu devrais être sur une plateforme J2EE.
    Peux-tu préciser la version de Tomcat que tu utilises et montrer le début de ton web.xml ?

  6. #6
    Membre habitué Avatar de medbouh
    Inscrit en
    Mars 2006
    Messages
    152
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Mars 2006
    Messages : 152
    Points : 171
    Points
    171
    Par défaut
    le probleme de tld au niveau de netbeans ne se pose pas parce que tu utilise le plugins amateras ( struts version 1.2.9) pour creer ton projet.
    sauf si tu utilise netbeans 5.5 (je ne suis pas sur).

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 73
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 263
    Points : 121
    Points
    121
    Par défaut
    Chers c_nvy, Mehoud et Viscapon,
    Merci pour votre empathie et votre temps.

    La version de Tomcat et autres que j'utilise : IDE NetBeans 6.1, le conteneur Apache-Tomcat Server 5.5.27, JDK 1.6.0._07, Struts 1.2.9, Servlet 2.4, JavaBeans 1.01, JSTL 1.1 .
    Mais je suivrai ton conseil dès que j'en ai le temps, c_nvy : installer J2EE.
    Mon 'web.xml' :
    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    <?xml version="1.0" encoding="UTF-8" ?>
    <!--
    <!DOCTYPE web-app
        PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
        "http://java.sun.com/dtd/web-app_2_3.dtd" >
    -->
    <web-app version="2.4" 
        	 xmlns="http://java.sun.com/xml/ns/j2ee" 
    	 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    	 xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
                                 http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
    >
        <servlet>
            <servlet-name>action</servlet-name>
            <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
            <init-param>
                <param-name>config</param-name>
                <param-value>/WEB-INF/struts-config.xml</param-value>
            </init-param>
        </servlet>
     
        <servlet-mapping>
    	<servlet-name>action</servlet-name>
    	<url-pattern>*.do</url-pattern>
        </servlet-mapping>
     
        <session-config>
            <session-timeout>30</session-timeout>
        </session-config>
     
        <welcome-file-list>
            <welcome-file>index.jsp</welcome-file>
        </welcome-file-list>
    </web-app>
    J'ai déchargé Struts 1.3.10 et y ai trouvé un (long) fichier struts-html.tld que j'ai copié dans le répertoire WEB-INF de mon application. Et ça a l'air de marcher comme il faut car, comme je l'explique dans ma question au forum intitulée "Le transfert de ma requête par 'ForwardAction' vers ma classe coince", la classe ForwardAction appelle bien l'un de mes objets si celui-ci est une page JSP (cas A) (et que 'struts-config.xml' la mentionne, bien entendu).

    Pourtant, j'avais fait le tour des FAQ's ... et le re-ferai cet après-midi, Medbouh.

    Obrigado

  8. #8
    Expert éminent

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Points : 7 778
    Points
    7 778
    Par défaut
    A partir du moment où tu mets ceci au début de ton web.xml :
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <web-app version="2.4" 
        	 xmlns="http://java.sun.com/xml/ns/j2ee" 
    	 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    	 xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
                                 http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    cela signifie que tu es en J2EE 1.4 (Servlet 2.4/JSP 2.0) et comme la version de Tomcat que tu utilises est la bonne, tu n'as donc pas besoin de copier la tld sous WEB-INF.

    De plus, je te déconseille d'utiliser la tld d'une version Struts supérieure à la tienne car il peut y avoir de nouveaux attributs qui ne fonctionneront pas avec ta version.

    Si tu tiens vraiment à copier la tld sous WEB-INF, prends donc celle qui est livrée avec la version 1.2.9.
    Comme je te l'ai déjà indiqué précédemment, les tlds sont dans le jar de Struts, sous META-INF/tlds.
    Il suffit donc d'extraire la tld struts-html.tld du jar et de la copier sous WEB-INF.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Wget - télécharger des fichiers non-html
    Par narmataru dans le forum Réseau
    Réponses: 10
    Dernier message: 14/07/2018, 16h20
  2. struts-html.tld, attribut form->type manquant
    Par befou dans le forum Struts 1
    Réponses: 2
    Dernier message: 24/01/2011, 23h26
  3. Réponses: 33
    Dernier message: 17/12/2007, 10h03
  4. probleme avec struts-html.tld
    Par kouts dans le forum Struts 1
    Réponses: 3
    Dernier message: 09/08/2006, 14h32
  5. Trouver un fichier contenant une chaine ?
    Par narmataru dans le forum Linux
    Réponses: 2
    Dernier message: 29/04/2004, 11h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo