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 :

erreur au niveau du tag html:text


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juillet 2009
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 15
    Par défaut erreur au niveau du tag html:text
    Bonjour tout le monde ,
    je veux en fait tester la validation d'un champs text .
    Mon action form:
    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
    package com.yourcompany.struts.form;
    import javax.servlet.http.HttpServletRequest;
     
    import org.apache.struts.action.ActionErrors;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionMapping;
    import org.apache.struts.action.ActionMessage;
    public class MyForm extends ActionForm {
    	private String login;
     
    	public String getLogin() {
    		return login;
    	}
     
    	public void setLogin(String login) {
    		this.login = login;
    	}
     
     
     
    	public ActionErrors validate(ActionMapping mapping,
    			  HttpServletRequest request) {
     
     
     
    			  // Check for mandatory data
    			  ActionErrors errors = new ActionErrors();
    			  if (login == null || login.equals("")) {
    			  errors.add("login", new ActionMessage("error.login"));
    			  }
     
    			  return errors;
     
    			  }
     
     
     
    }
    MOn action :
    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
    package com.yourcompany.struts.action;
     
    import java.io.File;
    import java.util.Collections;
     
    import javax.servlet.http.HttpServletRequest;   
    import javax.servlet.http.HttpServletResponse; 
     
    import org.apache.struts.action.Action;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionForward;
    import org.apache.struts.action.ActionMapping;
     
    import com.yourcompany.struts.form.MyForm;
    public class MyAction extends Action{
     
     
    	 public ActionForward execute(ActionMapping mapping, ActionForm form,   
    	            HttpServletRequest request, HttpServletResponse response)   
    	            throws Exception 
    	     {   
     
    	    	String target = null;   
    	    	MyForm authForm= (MyForm)form;   
    	        String login=authForm.getLogin();
    	        if(login.equals("salma"))
    	        {
    	        	  return mapping.findForward("successAuth");
    	        }
     
    	        else
     
    	    return mapping.findForward("failureAuth");
     
     
     
     
     
     
    	    }   
     
     
     
     
     
    }
    mon fichier 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
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">
     
    <struts-config>
      <data-sources />
     <form-beans>  
            <form-bean name="MyForm"  
                type="com.yourcompany.struts.form.MyForm"/>  
       </form-beans> 
      <global-exceptions />
      <global-forwards />
      <action-mappings >
      <action path="/log" name="MyForm" validate="true" input="/index.jsp"  
                type="com.yourcompany.struts.action.MyAction">  
           <forward name="successAuth" path="/success.jsp"/>  
           <forward name="failureAuth" path="/failure.jsp"/>      
        </action> </action-mappings>
      <message-resources parameter="MessageResource" />
    </struts-config>
    mon fichier MessageResource:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    error.login=login required
    Pourtant ça genere une erreur meme que le tout semble etre logique ,voila l'erreur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    exception 
     
    org.apache.jasper.JasperException: javax.servlet.ServletException: javax.servlet.jsp.JspException: Cannot find bean login in any scope
    	org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:541)
    	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:417)
    	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
    	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
     
     
    cause mère
    j'ai besoin de vos remarques parce que là je sèche

  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
    Par hasard, tu n'aurais pas coder le tag html:text comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <html:text name="login"/>
    au lieu de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <html:text property="login"/>
    Enfin, avec le code de la jsp, ce serait plus facile de t'aider.

  3. #3
    Membre averti
    Inscrit en
    Juillet 2009
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 15
    Par défaut
    j'ai oublié de poster mon index le voila :
    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
    <%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
    <%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    %>
    <%@ 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" %>
    <%@ taglib uri="http://jakarta.apache.org/struts/tags-tiles" prefix="tiles" %>
    <%@ taglib uri="http://jakarta.apache.org/struts/tags-template" prefix="template" %>
    <%@ taglib uri="http://jakarta.apache.org/struts/tags-nested" prefix="nested" %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <base href="<%=basePath%>">
     
        <title>My JSP 'index.jsp' starting page</title>
    	<meta http-equiv="pragma" content="no-cache">
    	<meta http-equiv="cache-control" content="no-cache">
    	<meta http-equiv="expires" content="0">    
    	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    	<meta http-equiv="description" content="This is my page">
    	<!--
    	<link rel="stylesheet" type="text/css" href="styles.css">
    	-->
      </head>
     
      <body>
      <html:form method="GET" action="log"> 
     
     
      login: <html:text  name="login"></html:text> </br>
      <html:submit value="valider" property="submit"></html:submit>
     
     
    </html:form>
     
      </body>
    </html>

  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
    Comme je l'ai dit précédemment, remplace :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <html:text  name="login"/>
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <html:text  property="login"/>

  5. #5
    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
    Tu peux également supprimer ceci au début de la jsp :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    %>
    et remplacer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        <base href="<%=basePath%>">
    par :

  6. #6
    Membre averti
    Inscrit en
    Juillet 2009
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 15
    Par défaut
    Au fait quand j'essaie d'enlever property il me signale comme quoi cet attribut est obligatoire

  7. #7
    Membre averti
    Inscrit en
    Juillet 2009
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 15
    Par défaut
    Ya plus d'erreur
    Sauf que la page JSP que j'obtiens ne contient ni l'element texte ni le boutton , j'arrive pas à les voir :
    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
    <%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
     
     
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <html:base/>
     
        <title>My JSP 'index.jsp' starting page</title>
    	<meta http-equiv="pragma" content="no-cache">
    	<meta http-equiv="cache-control" content="no-cache">
    	<meta http-equiv="expires" content="0">    
    	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    	<meta http-equiv="description" content="This is my page">
    	<!--
    	<link rel="stylesheet" type="text/css" href="styles.css">
    	-->
      </head>
     
      <body>
      <html:form method="GET" action="log"> 
     
     
      login: <html:text property="login" value="sss"></html:text> </br>
      <html:submit value="valider" property="submit"></html:submit>
     
     
    </html:form>
     
      </body>
    </html>

  8. #8
    Membre averti
    Inscrit en
    Juillet 2009
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 15
    Par défaut
    j'ai oublié ce tag :
    <%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html" %>
    Mon objectif c'est de tester la validation sauf quand je laisse le texte vide et je clique sur le bouton , je vois rien qui s'afiiche .
    NOrmalement on doit voir Login required!(au niveau de la jsp)

Discussions similaires

  1. Réponses: 8
    Dernier message: 20/12/2013, 15h16
  2. Réponses: 1
    Dernier message: 20/08/2008, 13h49
  3. Réponses: 8
    Dernier message: 24/09/2007, 15h39
  4. Réponses: 1
    Dernier message: 08/09/2007, 19h06
  5. [STRUTS] utilisation de plusieurs tags <html:subm
    Par Super Castor dans le forum Struts 1
    Réponses: 6
    Dernier message: 23/06/2004, 11h42

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