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 :

Problème avec Tiles?


Sujet :

Struts 1 Java

  1. #1
    Invité
    Invité(e)
    Par défaut Problème avec Tiles?
    Bonjour,

    Depuis que j'ai voulu passé à la dernière version de Struts (et que j'ai galéré afin que les nouvelles librairies soient prises en compte), les pages qui utilisent Tiles (apparemment) ne marchent plus.
    Je pense que l'erreur vient de la non-reconnaissance de la librairie Tiles car l'erreur en question dit que les chemins commençant par ".quelquechose" ne sont pas valides. Les ".quelquechose" sont justement définis par Tiles.

    Je précise qu'avant de faire la mise à jour, mon projet NetBeans utilisait les librairies Struts intégrées.

    Voici l'erreur que j'obtiens:
    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
     
    type Rapport d'exception
     
    message
     
    description Le serveur a rencontré une erreur interne () qui l'a empêché de satisfaire la requête.
     
    exception
     
    javax.servlet.ServletException: Le chemin .home ne commence pas par le caractère "/"
    	org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
    	org.apache.struts.action.ActionServlet.process(ActionServlet.java:1858)
    	org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:459)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    	org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368)
    cause mère
     
    java.lang.IllegalArgumentException: Le chemin .home ne commence pas par le caractère "/"
    	org.apache.struts.chain.commands.servlet.PerformForward.handleAsForward(PerformForward.java:93)
    	org.apache.struts.chain.commands.servlet.PerformForward.perform(PerformForward.java:82)
    	org.apache.struts.chain.commands.AbstractPerformForward.execute(AbstractPerformForward.java:51)
    	org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:48)
    	org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
    	org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304)
    	org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
    	org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:280)
    	org.apache.struts.action.ActionServlet.process(ActionServlet.java:1858)
    	org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:459)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    	org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368)
    note La trace complète de la cause mère de cette erreur est disponible dans les fichiers journaux de Apache Tomcat/5.5.17.
    Voici mon fichier 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
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
     
    <?xml version="1.0" encoding="UTF-8"?>
    <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">
        <session-config>
            <session-timeout>
                30
            </session-timeout>
        </session-config>
        <welcome-file-list>
            <welcome-file>
                index.html
            </welcome-file>
            <welcome-file>
                index.htm
            </welcome-file>
            <welcome-file>
                index.jsp
            </welcome-file>
        </welcome-file-list>
        <listener>
            <listener-class>nist.bfrl.vcctl.application.VcctlServletContextListener</listener-class>
        </listener>
        <listener>
            <description>HttpSessionListener</description>
            <listener-class>nist.bfrl.vcctl.application.VcctlHttpSessionListener</listener-class>
        </listener>
        <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>
            <init-param>
                <param-name>application</param-name>
                <param-value>ApplicationResources.properties</param-value>
            </init-param>
            <load-on-startup>1</load-on-startup>
        </servlet>
        <servlet-mapping>
            <servlet-name>action</servlet-name>
            <url-pattern>*.do</url-pattern>
        </servlet-mapping>
    </web-app>
    Mon fichier struts-config.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
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
     
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE struts-config PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"
    "http://struts.apache.org/dtds/struts-config_1_2.dtd">
     
    <struts-config>
        <!-- ========== Form Bean Definitions ================= -->
        <form-beans>
            <form-bean name="loginForm"
                       type="nist.bfrl.vcctl.admin.LoginForm" />
            <form-bean name="generateMicrostructureForm"
                       type="nist.bfrl.vcctl.operation.microstructure.GenerateMicrostructureForm" />
        </form-beans>
     
        <!-- ========== Action Mapping Definitions ============ -->
        <action-mappings>
            <!-- ========== Action Mapping Definitions - Admin ============ -->
            <action path="/admin/login"
                    type="nist.bfrl.vcctl.admin.LoginAction"
                    name="loginForm"
                    scope="request">
                <forward name="success" path=".home" />
                <forward name="failure" path=".admin.login" />
            </action>
     
            <!-- ========== Action Mapping Definitions - Build Microstructure ============ -->
            <action path="/operation/mixing"
                    type="nist.bfrl.vcctl.operation.MixingAction"
                    name="generateMicrostructureForm"
                    scope="session">
                <forward name="success" path=".mixing" />
                <forward name="failure" path=".home" />
            </action>
     
            <action path="/operation/hydrate/distribute-clinker-phases"
                    type="nist.bfrl.vcctl.operation.microstructure.SetupDistributeClinkerPhasesAction"
                    name="generateMicrostructureForm"
                    scope="session">
            </action>
     
            <action path="/operation/distribute-clinker-phases/launch"
                    type="nist.bfrl.vcctl.operation.microstructure.DistributeClinkerPhasesAction"
                    name="generateMicrostructureForm"
                    scope="session">
                <forward name="update" path=".mixing" />
                <forward name="launch" path="/operation/build-microstructure/launch.do" />
            </action>
        </action-mappings>
     
        <message-resources parameter="MessageResources" null="false" />
     
        <!-- Use Tiles library -->
        <plug-in className="org.apache.struts.tiles.TilesPlugin" >
            <set-property property="definitions-config" value="/WEB-INF/tiles-defs.xml" />
            <set-property property="definitions-debug" value="2" />
            <set-property property="definitions-parser-details" value="2" />
            <set-property property="definitions-parser-validate" value="true" />
            <!-- Set Module-awareness to true -->
            <set-property property="moduleAware" value="true" />
        </plug-in>
     
    </struts-config>
    Et enfin mon fichier tiles-defs.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
     
    <?xml version="1.0" encoding="UTF-8"?>
     
    <!DOCTYPE tiles-definitions PUBLIC
    "-//Apache Software Foundation//DTD Tiles Configuration 1.1//EN"
    "http://struts.apache.org/dtds/tiles-config_1_1.dtd">
     
    <tiles-definitions>
    	<definition name=".default.layout" path="/layout/defaultLayout.jsp">
    		<put name="title" value="Virtual Cement and Concrete Testing Laboratory 7.0" />
    		<put name="header"   value="/common/header.jsp" />
    		<put name="menu" value="/common/menubar.jsp" />
    		<put name="content" value="/pages/home.jsp" />
    		<put name="footer" value="/common/footer.jsp" />
    	</definition>
     
    	<definition name=".home" extends=".default.layout" />
     
    	<definition name=".mixing" path="/pages/mixing.jsp" />
     
    	<definition name=".admin.login" path="/index.jsp"/>
     
    </tiles-definitions>
    Merci d'avance.
    Dernière modification par Invité ; 05/02/2007 à 20h41.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Ayant bataillé des heures sans trouver de réponse, je suis revenu sur la version 1.2.9 et (presque) tout est rentré dans l'ordre…

    J'ai pourtant suivi les instructions de mise-à-jour en version 1.3.5 sur cette page mais rien à faire…

    Si vous avez une idée…

  3. #3
    Membre expérimenté Avatar de maxf1
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 229
    Points : 1 371
    Points
    1 371
    Par défaut
    Ton probleme venait peut-etre du faite que tes tiles commencait par un "."
    Une solution a été apporté pour résoudre votre problème alors vous aussi faites en profitez les autres grâce au tag qui se trouve tout en bas de la page....

    Merci de ne pas utiliser les messages privés pour un problème sauf si je vous l'ai explicitement demandé.

    -- Maxf1 --

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par maxf1
    Ton probleme venait peut-etre du faite que tes tiles commencait par un "."
    Je ne pense pas car cela marche très bien avec la version 1.2.9. De plus, je ne suis pas le seul à utiliser des tiles commençant par un ".".

Discussions similaires

  1. Problème avec Tile mapping
    Par helio500 dans le forum SFML
    Réponses: 5
    Dernier message: 31/08/2014, 21h53
  2. Problèmes avec Tiles et Struts
    Par The Spaniard dans le forum Struts 1
    Réponses: 1
    Dernier message: 07/08/2008, 11h43
  3. problème avec struts-tiles
    Par osman.amine dans le forum Struts 1
    Réponses: 1
    Dernier message: 17/04/2007, 10h23
  4. Réponses: 1
    Dernier message: 04/02/2007, 23h40
  5. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

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