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

Tomcat et TomEE Java Discussion :

War différent sur Mac et Windows


Sujet :

Tomcat et TomEE Java

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2011
    Messages : 5
    Points : 6
    Points
    6
    Par défaut War différent sur Mac et Windows
    Bonjour à tous,

    Je développe actuellement une application web en J2EE avec frameworks Struts 2 et Hibernate.

    Lorsque je déploie mon war sous Mac OS avec Tomcat 7.0, aucun problème, l'application marche parfaitement.

    En revanche, lorsque je déploie le MÊME war sous Windows (XP ou 7) avec Tomcat 7.0 également, lorsque je remplis un formulaire, j'ai une erreur sur un champ.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    19/juil./2011 09:55:39 -- 17765 ["http-apr-8080"-exec-2] WARN com.opensymphony.
    xwork2.ognl.OgnlValueStack - Error setting expression 'aptitude.responsable' with value '[Ljava.lang.String;@168be1b' ognl.MethodFailedException: Method "setResponsable" failed for object a [java.lang.NoSuchMethodException: beans.Aptitude.setResponsable([Ljava.lang.String;)]
    En gros, je suppose qu'il me dit qu'il ne trouve pas la méthode setResponsable(String) de la classe Aptitude qui pourtant existe ! (Pour preuve, sous MacOS, aucun problème)

    L'attribut responsable est de type User en réalité, mais j'ai créé un setter prenant en paramètre un String car Struts utilise les setters des attributs des beans avec les données remplies par les formulaires sous forme de String, du coup j'ai 2 setters :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    public void setResponsable(String responsable) {
    		String[] tab = responsable.split(" :");
    		String resp = tab[0];
    		this.responsable = ManagerFactory.getInstance().createUserManager().getByLogin(resp);
    	}
     
    	public void setResponsable(User responsable) {
    		this.responsable = responsable;
    	}
    Si vous avez des idées !

    D'avance merci,
    Kigou.

  2. #2
    Membre expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 938
    Points : 3 938
    Points
    3 938
    Par défaut
    Renomme un peu cette méthode voir en ce que tu veux et retestes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    public void setResponsable(User responsable) {
    		this.responsable = responsable;
    	}
    , il doit peut être se perdre dans la surcharge de méthode, ce qui serait surprenant ma foi, mais elimines déjà cette piste, on verra.
    Vous avez peut être hâte de réussir et il n'y a rien de mal à cela...
    mais la patience est aussi une vertu; l'échec vous l'enseignera certainement..."

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2011
    Messages : 5
    Points : 6
    Points
    6
    Par défaut
    J'ai trouvé une solution à mon problème en le contournant.

    J'ai déplacé la méthode setResponsable(String) dans mon Action, du coup, la JSP ne va plus utiliser directement le setter du bean mais va d'abord passer par la méthode setResponsable(String) de l'Action qui va transformer le tout pour ensuite appeler la vraie méthode du bean setResponsable(User). Du coup, comme il n'y a plus 2 setters dans le bean, ça marche.

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

Discussions similaires

  1. Skype est désormais disponible en version finale sur Mac et Windows
    Par Stéphane le calme dans le forum Actualités
    Réponses: 3
    Dernier message: 08/11/2014, 11h57
  2. [jedit] parametrage sur mac et windows
    Par thug85 dans le forum Autres Logiciels
    Réponses: 0
    Dernier message: 09/07/2009, 09h53
  3. [OS] Installation de windows sur Mac iBook G4
    Par abidi_niz dans le forum Apple
    Réponses: 4
    Dernier message: 04/02/2008, 14h32
  4. installer windows 98 sur mac
    Par eon-of-the-scorn dans le forum Apple
    Réponses: 9
    Dernier message: 15/09/2006, 10h45

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