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 :

[Tiles] Error - tag.getAsString : component context is not defined. Check tag


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Développeur informatique
    Inscrit en
    Janvier 2008
    Messages
    38
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 38
    Par défaut [Tiles] Error - tag.getAsString : component context is not defined. Check tag
    je suis entrain de développer une application web attachée à une base de données, en utilisant les frameworks hibernate et struts et comme IDE netbeans 6.5, après j'ai essayé de faire une séparation des champs (header, footer, ...) alors après une recherche j'ai trouvé que struts-tiles un bon outil pour moi, et j'ai utilisé comme tutoriel:
    http://www.laliluna.de/tutorial/firs...s_tutorial.pdf
    j'ai suivi tous les étapes mais j'ai pas arrivé au résultat prévu par le tutoriel, mais j'en ai cette exception:
    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
     
    org.apache.jasper.JasperException: javax.servlet.ServletException: javax.servlet.jsp.JspException: Error - tag.getAsString : component context is not defined. Check tag syntax
    	org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:522)
    	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:398)
    	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
    	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    	org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
     
    cause m�re
     
    javax.servlet.ServletException: javax.servlet.jsp.JspException: Error - tag.getAsString : component context is not defined. Check tag syntax
    	org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:852)
    	org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:781)
    	org.apache.jsp.siteLayout_jsp._jspService(siteLayout_jsp.java:77)
    	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
    	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
    	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    	org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
     
    cause m�re
     
    javax.servlet.jsp.JspException: Error - tag.getAsString : component context is not defined. Check tag syntax
    	org.apache.struts.taglib.tiles.GetAttributeTag.doEndTag(GetAttributeTag.java:155)
    	org.apache.jsp.siteLayout_jsp._jspx_meth_tiles_005fgetAsString_005f0(siteLayout_jsp.java:172)
    	org.apache.jsp.siteLayout_jsp._jspx_meth_html_005fhtml_005f0(siteLayout_jsp.java:103)
    	org.apache.jsp.siteLayout_jsp._jspService(siteLayout_jsp.java:70)
    	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
    	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
    	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    	org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
     
    note La trace compl�te de la cause m�re de cette erreur est disponible dans les fichiers journaux de Apache Tomcat/6.0.18.
    Apache Tomcat/6.0.18
    j'ai passé toute la journée de chercher une solution mais
    j'en ai besoin de votre aide, car ce projet est prévu comme projet de fin d'étude.

  2. #2
    Expert confirmé

    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
    Par défaut
    Généralement, on a ce message d'erreur lorsqu'on appelle directement une page jsp contenant un tag tiles:getAsString sans être passé par une Action.
    Est-ce le cas ?

  3. #3
    Membre averti
    Développeur informatique
    Inscrit en
    Janvier 2008
    Messages
    38
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 38
    Par défaut
    bonjour,

    Tout a fait, vous avez raison, et c'est la même chose pour les autres tag de tiles.
    Mais je sais pas pourquoi, ça ne marche pas avec les tags de tiles, alors que ça ne pose pas ce genre de problème avec les autres tagLib par exemple Layout.
    Je serais tellement ravi si vous me donniez une petite explication.
    Et, merci d'avance

  4. #4
    Expert confirmé

    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
    Par défaut
    A ma connaissance, le context Tiles est chargé par le controller TilesRequestProcessor, celui que tu as défini dans le struts-config.xml. Or, le TilesRequestProcessor est exécuté lorsqu'un forward est effectué.
    Donc, si, pour lancer ton appli, tu appelles directement une jsp contenant des tags tiles sans passer par un forward, le context Tiles n'est pas chargé, ce qui explique le message d'erreur.

  5. #5
    Membre averti
    Développeur informatique
    Inscrit en
    Janvier 2008
    Messages
    38
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 38
    Par défaut
    Salut c_nvy, et merci pour votre explication.
    je voudrais pas vous déranger mais, par exemple j'ai travaillé avec Layout qui se charge par LayoutRequestProcessor, et j'ai pu lancer directement les jsp contenant ses tags, sans aucun problème.
    Donc, qu'est ce qui pousse TilesRequestProcessor à avoir besoin de cette exécution préalable?

  6. #6
    Expert confirmé

    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
    Par défaut
    Le LayoutRequestProcessor n'est utile que lorsque tu utilises les Tiles avec Struts-Layout.
    Dans une application dans laquelle tu n'as que Struts-Layout, tu n'en as pas besoin.
    La différence entre les Tiles et Struts-Layout, c'est que pour les Tiles, il y a des définitions à charger dans le contexte (celles définies dans le tiles-def.xml) alors que pour Struts-Layout, ce sont simplement des tags avec des javascript et css chargés automatiquement via ces tags.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 15/04/2010, 02h17
  2. Réponses: 0
    Dernier message: 05/02/2009, 12h14
  3. Réponses: 18
    Dernier message: 06/04/2008, 20h57
  4. [VBA-W] Error! Bookmark not defined
    Par zahui_eric dans le forum VBA Word
    Réponses: 5
    Dernier message: 26/04/2007, 13h25
  5. ERROR 1314 (0A000): LOAD DATA is not allowed in stored proce
    Par pointe dans le forum SQL Procédural
    Réponses: 7
    Dernier message: 17/11/2005, 12h50

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