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

JSF Java Discussion :

Passage d'une appli richfaces de Tomcat 6 à 5.5


Sujet :

JSF Java

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2009
    Messages : 16
    Par défaut Passage d'une appli richfaces de Tomcat 6 à 5.5
    Bonjour,

    J'ai une appli JSF/Richfaces qui fonctionne très bien avec Tomcat 6.

    Je dois malheureusement la migrer sur un serveur Tomcat 5.5.
    Cela m'a contraint à créer un nouveau projet sous Eclipse et à passer à JSF 1.1 et richfaces 3.1.6.

    Lorsque je lance, le serveur, aucune exception dans le log. Pourtant lorsque je cherche à afficher une page, tout ce qui est tag JSF et RichFaces ne s'affiche pas.

    Exemple d'une page (seul "test" s'affiche mais pas "test2").

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml"
          xmlns:ui="http://java.sun.com/jsf/facelets"
          xmlns:h="http://java.sun.com/jsf/html"
          xmlns:f="http://java.sun.com/jsf/core">
     
    	<ui:composition>
    		test
    		<h:outputText value="test2" />
    	</ui:composition>
    </html>
    Et voici le 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
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
     
    <?xml version="1.0"?>
    <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">
     
       <display-name>TestProject</display-name>
     
    	<context-param>
    		<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
    		<param-value>server</param-value>		
    	</context-param>
     
    	<context-param>
    		<param-name>contextConfigListener</param-name>
    		<param-value>classpath:applicationContext.xml</param-value>
    	</context-param>
     
    	<!-- Faces Servlet -->
    	<listener>
    		<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    	</listener>
     
    	<servlet>
    		<servlet-name>Faces Servlet</servlet-name>
    		<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    		<load-on-startup>1</load-on-startup>
    	</servlet>
     
    	<servlet-mapping>
    		<servlet-name>Faces Servlet</servlet-name>
    		<url-pattern>*.jsf</url-pattern>
    	</servlet-mapping>
     
    	<context-param>
    		<param-name>javax.faces.DEFAULT_SUFFIX</param-name>
    		<param-value>.xhtml</param-value>
    	</context-param>
     
    	<!-- Plugging the "Blue Sky" skin into the project -->
    	<context-param>
       		<param-name>org.richfaces.SKIN</param-name>
    	  	<param-value>blueSky</param-value>
    	</context-param>
     
    	<!-- Making the RichFaces skin spread to standard HTML controls -->
    	<context-param>
    		<param-name>org.richfaces.CONTROL_SKINNING</param-name>
    		<param-value>enable</param-value>
    	</context-param>
     
     	<!-- Defining and mapping the RichFaces filter -->
    	<filter> 
    		<display-name>RichFaces Filter</display-name> 
    		<filter-name>richfaces</filter-name> 
    		<filter-class>org.ajax4jsf.Filter</filter-class> 
    	</filter> 
     
    	<filter-mapping> 
    		<filter-name>richfaces</filter-name> 
    	    <servlet-name>Faces Servlet</servlet-name>
    		<dispatcher>REQUEST</dispatcher>
    		<dispatcher>FORWARD</dispatcher>
    		<dispatcher>INCLUDE</dispatcher>
    	</filter-mapping>
     
    </web-app>
    Et pour finir, voici le faces-config.xml

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?xml version="1.0"?>
    <!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
                                  "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
    <faces-config>
     
    	<application>
    		<variable-resolver>org.springframework.web.jsf.DelegatingVariableResolver</variable-resolver>
    	</application>
     
    </faces-config>
    Je réalise que j'ai peu de chances d'obtenir une réponse... mais on ne sait jamais.

    En tout cas, merci d'avance à ceux qui s'y seront intéressé.

    Chris

  2. #2
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    tu as ajouté le jar des EL dans l'appli?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2009
    Messages : 16
    Par défaut
    Il y avait effectivement un souci à ce niveau.
    Merci !

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2009
    Messages : 16
    Par défaut
    Par contre, j'ai quelque chose de bizarre.

    J'ai un formulaire avec des radio-boutons (voir ci-dessous) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <h:selectOneRadio id="reponse" value="#{questionCtrl.selectedAnswer}" layout="pageDirection" required="false">
    	<f:selectItems value="#{questionCtrl.answerList}"/> 
    </h:selectOneRadio>
    Le submit du formulaire (et passage à la page suivante) est uniquement possible lorsque je sélectionne un radio-bouton. J'ai ce problème avec Tomcat 5.5 alors qu'avec Tomcat 6 c'est ok. Comment faire pour que le choix d'un radio-bouton ne soit pas obligatoire ?

    Est-ce que quelqu'un aurait une idée ???

    Merci d'avance.

    Chris

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2009
    Messages : 16
    Par défaut
    j'ai oublié de préciser que j'ai des librairies RichFaces 3.3 sur l'appli déployée sous Tomcat 6 et des librairies RichFaces 3.1.6 sur l'appli déployée sous Tomcat 5.5

  6. #6
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    Je ne suis pas sur que ce soit un problème de tomcat ou Richfaces.
    Est ce que dans les deux cas tu as bien

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <h:selectOneRadio required="true" ... />
    Il me semble que ce n'est pas le cas dans le code que tu as posté.

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2009
    Messages : 16
    Par défaut
    Si je mets required="true", cela veut dire que la valeur est obligatoire. Je veux justement le contraire : ne pas avoir à sélectionner un radio-bouton.

    J'ai quand même essayé avec required="true" et avec required="false", ça ne fonctionne pas. Quand je clique sur le bouton de submit, rien ne se passe. Il faut que je clique sur un radio bouton préalablement pour que cela fonctionne :-(

    Merci quand même d'avoir essayé de m'apporter ton aide.

  8. #8
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    tu dois avoir une autre erreur de validation ou de conversion.

    ajoutes pour voir d'où ça vient.

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2009
    Messages : 16
    Par défaut
    J'ai ajouté <h:messages /> mais bizarrement rien ne s'affiche.....

  10. #10
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    Essae avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <rich:messages ajaxRendered="true" showSummary="true" showDetail="true" />
    De toute façon, ce n'est pas un problème lié au passage de tomcat6 au tomcat 5.

    Sinon tu peux loguer les phases JSF pour mieux comprendre ce qui se passe..

  11. #11
    Membre averti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2009
    Messages : 16
    Par défaut
    Excellent, j'obtiens enfin un message d'erreur "Une erreur de conversion est survenue".

    Que se passe-t-il lorsqu'aucun radio bouton est sélectionné et que je "submit" la page. Est-ce qu'il essaye de passer une valeur null à setSelectedAnswer(int) ???

    En tout cas, merci bcp à Sniper37 !!!!!

    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
    public List<SelectItem> getAnswerList() {
    	if (answers == null) {
    		answers = new ArrayList<SelectItem>();
    		for (Answer a : getQuestion().getAnswerList()) {
    			answers.add(new SelectItem(a.getId(), a.getTexte()));
    		}
    	}
    	return answers;
    }
     
    public int getSelectedAnswer() {
    	return selectedAnswer;		
    }
     
    public void setSelectedAnswer(int selectedAnswer) {
    	this.selectedAnswer= selectedAnswer;		
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <h:selectOneRadio id="sr" value="#{questionCtrl.selectedAnswer}" layout="pageDirection" required="false">
    	 <f:selectItems value="#{questionCtrl.answerList}"/>
    </h:selectOneRadio>

  12. #12
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    tu peux ajouter un choix par défaut,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <h:selectOneRadio id="sr" value="#{questionCtrl.selectedAnswer}" layout="pageDirection" required="false">
    <f:selectItem itemValue="0" itemLabel="No answer"/>	 
    <f:selectItems value="#{questionCtrl.answerList}"/>
    </h:selectOneRadio>

Discussions similaires

  1. [Linq to Sql] Passage d'une appli web utilisant Linq sur serveur
    Par cereal59 dans le forum Accès aux données
    Réponses: 2
    Dernier message: 02/11/2008, 13h15
  2. Passage d'une appli VB6 sous l'IDE Visual Studio 2005
    Par abby59 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 03/02/2008, 15h09
  3. executer une appli java sous tomcat..
    Par Nemesys dans le forum Tomcat et TomEE
    Réponses: 7
    Dernier message: 29/01/2007, 19h41
  4. [TomcaT]Config une appli J2EE avec tomcat/apache sous linux
    Par kameha dans le forum Tomcat et TomEE
    Réponses: 1
    Dernier message: 31/03/2006, 15h05
  5. Réponses: 6
    Dernier message: 10/08/2005, 17h28

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