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 :

Problème d'affichage avec rich:modal et session timeOut


Sujet :

JSF Java

  1. #1
    Futur Membre du Club
    Inscrit en
    Novembre 2010
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 26
    Points : 5
    Points
    5
    Par défaut Problème d'affichage avec rich:modal et session timeOut
    Bonjour à tous,

    J'ai rencontré un problème assez étrange.

    En naviguant sur mon application, lorsque la session expire, je suis redirigé vers une page d'authentification.

    Normal donc.

    Mais si au moment de l'expiration une fenêtre rich:modal était ouverte, en retournant sur la page contenant cette modal, la page ne s'affiche plus comme avant.

    Il n'y a plus de style sur la page et le contenu des fenêtres modals est affiché.

    Je ne sais pas si je me suis bien fait comprendre

    Merci

  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
    Points : 5 059
    Points
    5 059
    Par défaut
    Non pas trop

    avec un bout de code et le détail de ton environnement technique serait le bienvenue.

  3. #3
    Futur Membre du Club
    Inscrit en
    Novembre 2010
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 26
    Points : 5
    Points
    5
    Par défaut
    Merci beaucoup de répondre en tout cas,

    Mon environnement technique :
    - Rich:faces 3.3
    - JSF 1.2
    - Spring Security


    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
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
     
     
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
    	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
    	version="2.5">
    	<display-name>Citylife Back Office</display-name>
    	<context-param>
    		<param-name>webAppRootKey</param-name>
    		<param-value>Citylife-bo</param-value>
    	</context-param>
    	<context-param>
    		<param-name>log4jConfigLocation</param-name>
    		<param-value>classpath:log4j.properties</param-value>
    	</context-param>
    	<context-param>
    		<param-name>javax.faces.DEFAULT_SUFFIX</param-name>
    		<param-value>.xhtml</param-value>
    	</context-param>
    	<context-param>
    		<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
    		<param-value>client</param-value>
    	</context-param>
    	<context-param>
    		<param-name>facelets.DEVELOPMENT</param-name>
    		<param-value>false</param-value>
    	</context-param>
    	<context-param>
    		<param-name>contextConfigLocation</param-name>
    		<param-value>classpath:appContext.xml</param-value>
    	</context-param>
    	<context-param>
    		<param-name>org.ajax4jsf.VIEW_HANDLERS</param-name>
    		<param-value>com.sun.facelets.FaceletViewHandler</param-value>
    	</context-param>
    	<filter>
    		<filter-name>MyFacesExtensionsFilter</filter-name>
    		<filter-class>org.apache.myfaces.webapp.filter.ExtensionsFilter</filter-class>
    		<init-param>
    			<description>Set the size limit for uploaded files.
    				Format: 10 - 10
    				bytes
    				10k - 10 KB
    				10m - 10 MB
    				1g - 1 GB
            </description>
    			<param-name>uploadMaxFileSize</param-name>
    			<param-value>50m</param-value>
    		</init-param>
    	</filter>
    	<filter>
    		<display-name>RichFaces Filter</display-name>
    		<filter-name>richfaces</filter-name>
    		<filter-class>org.ajax4jsf.Filter</filter-class>
    		<init-param>
    			<param-name>createTempFiles</param-name>
    			<param-value>true</param-value>
    		</init-param>
    		<init-param>
    			<param-name>maxRequestSize</param-name>
    			<param-value>70000000</param-value>
    		</init-param>
    	</filter>
    	<filter-mapping>
    		<filter-name>richfaces</filter-name>
    		<servlet-name>FacesServlet</servlet-name>
    		<dispatcher>REQUEST</dispatcher>
    		<dispatcher>FORWARD</dispatcher>
    		<dispatcher>INCLUDE</dispatcher>
    	</filter-mapping>
    	<filter-mapping>
    		<filter-name>MyFacesExtensionsFilter</filter-name>
    		<servlet-name>FacesServlet</servlet-name>
    	</filter-mapping>
    	<filter-mapping>
    		<filter-name>MyFacesExtensionsFilter</filter-name>
    		<url-pattern>/faces/myFacesExtensionResource/*
    		</url-pattern>
    	</filter-mapping>
    	<listener>
    		<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    	</listener>
    	<listener>
    		<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
    	</listener>
    	<listener>
    		<listener-class>com.sun.faces.config.ConfigureListener</listener-class>
    	</listener>
    	<servlet>
    		<servlet-name>FacesServlet</servlet-name>
    		<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    		<load-on-startup>1</load-on-startup>
    	</servlet>
    	<servlet-mapping>
    		<servlet-name>FacesServlet</servlet-name>
    		<url-pattern>*.jsf</url-pattern>
    	</servlet-mapping>
    	<welcome-file-list>
    		<welcome-file>/index.jsp</welcome-file>
    	</welcome-file-list>
    	<resource-ref>
    		<description>DB Connection</description>
    		<res-ref-name>jdbc/socle_db</res-ref-name>
    		<res-type>javax.sql.DataSource</res-type>
    		<res-auth>Container</res-auth>
    	</resource-ref>
    	<filter>
    		<filter-name>springSecurityFilterChain</filter-name>
    		<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
    	</filter>
    	<filter-mapping>
    		<filter-name>springSecurityFilterChain</filter-name>
    		<url-pattern>/*</url-pattern>
    		<dispatcher>FORWARD</dispatcher>
    		<dispatcher>REQUEST</dispatcher>
    	</filter-mapping>
     
    	<error-page>
    		<error-code>403</error-code>
    		<location>/admin/error/forbidden.jsf</location>
    	</error-page>
    	<error-page>
    		<error-code>500</error-code>
    		<location>/admin/error/error.jsf</location>
    	</error-page>
    	<error-page>
    		<exception-type>java.lang.Exception</exception-type>
    		<location>/admin/error/error.jsf</location>
    	</error-page>
     
    	<mime-mapping>
    		<extension>flv</extension>
    		<mime-type>video/x-flv</mime-type>
    	</mime-mapping>
     
    	<security-constraint>
    		<web-resource-collection>
    			<web-resource-name>no-xhtml-access</web-resource-name>
    			<url-pattern>*.xhtml</url-pattern>
    		</web-resource-collection>
    		<auth-constraint>
    			<description>No direct access to xhtml</description>
    		</auth-constraint>
    	</security-constraint>
    </web-app>
    Exemple de page où je rencontre ce problème:

    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
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
     
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <f:view xmlns="http://www.w3.org/1999/xhtml"
    	xmlns:f="http://java.sun.com/jsf/core"
    	xmlns:h="http://java.sun.com/jsf/html"
    	xmlns:ui="http://java.sun.com/jsf/facelets"
    	xmlns:a4j="http://richfaces.org/a4j"
    	xmlns:t="http://myfaces.apache.org/tomahawk"
    	xmlns:rich="http://richfaces.org/rich"
    	xmlns:s="http://jboss.com/products/seam/taglib" contentType="text/html">
     
     
     
     
    	<rich:modalPanel id="usermanagementCreateModal" autosized="true" width="450">
    		<f:facet name="header">
    			<h:outputText value="#{bundle.bo_theme_label_new_modal_title}"/>
    		</f:facet>
    		<f:facet name="controls">
    			<h:panelGroup>
    				<h:graphicImage value="/img/close.png" styleClass="hidelink"
    					id="hidelink_create" />
    				<rich:componentControl for="usermanagementCreateModal" attachTo="hidelink_create"
    					operation="hide" event="onclick" />
    			</h:panelGroup>
    		</f:facet>
    		<ui:include src="usermanagementCreateModal.xhtml" />
    	</rich:modalPanel>
     
     
    	<rich:modalPanel id="usermanagementDeleteModal" autosized="true" width="450">
    		<f:facet name="header">
    			<h:outputText value="#{bundle.bo_user_management_modal_label_delete_title}"/>
    		</f:facet>
    		<f:facet name="controls">
    			<h:panelGroup>
    				<h:graphicImage value="/img/close.png" styleClass="hidelink"
    					id="hidelink_delete" />
    				<rich:componentControl for="usermanagementDeleteModal" attachTo="hidelink_delete"
    					operation="hide" event="onclick" />
    			</h:panelGroup>
    		</f:facet>
    		<ui:include src="usermanagementDeleteModal.xhtml" />
    	</rich:modalPanel>
     
    	<rich:modalPanel id="usermanagementEditModal" autosized="true" width="450">
    		<f:facet name="header">
    			<h:outputText value="#{bundle.bo_user_management_modal_label_edit_title}"/>
    		</f:facet>
    		<f:facet name="controls">
    			<h:panelGroup>
    				<h:graphicImage value="/img/close.png" styleClass="hidelink"
    					id="hidelink_update" />
    				<rich:componentControl for="usermanagementEditModal" attachTo="hidelink_update"
    					operation="hide" event="onclick" />
    			</h:panelGroup>
    		</f:facet>
    		<ui:include src="usermanagementEditModal.xhtml" />
    	</rich:modalPanel>
     
    	<h1><h:outputText value="#{bundle.bo_menu_item_user_management}" /></h1>
     
    	<h:form id="frmMain">
     
    			<h:panelGroup id="errorId">
    				<div style="margin-bottom: 5px">
    				<h:message id="commonError" for="commonError" styleClass="statusError"/>
    				</div>
    			</h:panelGroup>
     
    			<rich:dataTable id="dtbUserBO" value="#{userBOList.allUsers}"
    				var="varUser" rowKeyVar="row" rows="10" styleClass="default" captionClass="captiontitle">
     
    				<f:facet name="caption">
    					<h:outputText value="#{bundle.bo_user_management_label_list_title}" />
    				</f:facet>
     
    				<rich:column sortBy="#{varUser.login}" filterBy="#{varUser.login}"
    					filterEvent="onkeyup">
    					<f:facet name="header">
    						<h:outputText value="#{bundle.bo_user_management_label_login}" />
    					</f:facet>
    					<h:outputText id="login" value="#{varUser.login}" />
    				</rich:column>
     
    				<rich:column sortBy="#{varUser.lastname}"
    					filterBy="#{varUser.lastname}" filterEvent="onkeyup">
    					<f:facet name="header">
    						<h:outputText value="#{bundle.bo_user_management_label_lastname}" />
    					</f:facet>
    					<h:outputText id="lastname" value="#{varUser.lastname}" />
    				</rich:column>
     
    				<rich:column sortBy="#{varUser.firstname}"
    					filterBy="#{varUser.firstname}" filterEvent="onkeyup">
    					<f:facet name="header">
    						<h:outputText value="#{bundle.bo_user_management_label_firstname}" />
    					</f:facet>
    					<h:outputText id="firstname" value="#{varUser.firstname}" />
    				</rich:column>
     
    				<rich:column sortBy="#{varUser.group.label}"
    					filterBy="#{varUser.group.label}" filterEvent="onkeyup">
    					<f:facet name="header">
    						<h:outputText value="#{bundle.bo_user_management_label_role}" />
    					</f:facet>
    					<h:outputText id="role" value="#{varUser.group.label}" />
    				</rich:column>
     
    				<rich:column>
    					<f:facet name="header">
    						<h:outputText
    							value="#{bundle.bo_user_management_label_column_action_title}" />
    					</f:facet>
    					<div class="center">
    						<a4j:commandLink id="editUser" ajaxSingle="true" 
    							title="#{bundle.bo_user_management_tooltip_edit}"
    							oncomplete="#{rich:component('usermanagementEditModal')}.show();" styleClass="btn-action modif">
    							<f:setPropertyActionListener value="#{varUser}"
    								target="#{userBOList.currentUser}" />
    							<f:setPropertyActionListener value="#{varUser.password}"
    								target="#{userBOList.oldPassword}" />
    						</a4j:commandLink>
    						<a4j:commandLink ajaxSingle="true" id="deleteUser" 
    							title="#{bundle.bo_user_management_tooltip_delete}"
    							oncomplete="#{rich:component('usermanagementDeleteModal')}.show();" styleClass="btn-action delete" >
    							<f:setPropertyActionListener value="#{varUser}" target="#{userBOList.currentUser}" />
    						</a4j:commandLink> 
    					</div>
    				</rich:column>
    				<f:facet name="footer">
    					<rich:datascroller renderIfSinglePage="false" maxPages="5" />
    				</f:facet>
    			</rich:dataTable>
     
    		<div class="button-wrapper" >
    			<a4j:commandLink ajaxSingle="true" styleClass="button" 
    				oncomplete="#{rich:component('usermanagementCreateModal')}.show();">
    				<span><h:outputText value="#{bundle.bo_user_management_modal_label_add_title}" /></span>
    			</a4j:commandLink>
    		</div>
     
    		<rich:spacer />
     
     
    	</h:form>
     
    </f:view>

    Une partie de mon fichier context :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
     
    <form-login login-processing-url="/j_spring_security_check"
    			login-page="/admin/login/login.jsf" default-target-url="/admin/index.jsf"
    			authentication-failure-url="/admin/login/login.jsf" always-use-default-target="true"/>
    		<remember-me />
    		<logout logout-success-url="/admin/login/login.jsf" />
    Désolé pour l'explication confuse, mais j'ai du mal à expliquer ce problème.

  4. #4
    Futur Membre du Club
    Inscrit en
    Novembre 2010
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 26
    Points : 5
    Points
    5
    Par défaut
    La page avant l'expiration de la session :




    Cette même page après un timeout et une réauthentification :




    Mais seulement si au moment du Time-out j'étais sur une Pop-up. (qui s'affichent quand on appuie sur modifier, ajouter ...).

  5. #5
    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
    Points : 5 059
    Points
    5 059
    Par défaut
    Citation Envoyé par anthony22 Voir le message
    Bonjour à tous,


    Mais si au moment de l'expiration une fenêtre rich:modal était ouverte, en retournant sur la page contenant cette modal, la page ne s'affiche plus comme avant.


    Merci
    Pourquoi revenir sur la même page lors de l'expiration de session, normalement tu dois redirigé vers la page de login, si la session expire, l'utilisateur n'est plus authentifié donc il n'a pas accès au ressources protégées.

  6. #6
    Futur Membre du Club
    Inscrit en
    Novembre 2010
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 26
    Points : 5
    Points
    5
    Par défaut
    En fait lors de la fin de la session, je suis bien redirigé vers une page de login. Après l'authentification login-mdp, je suis redirigé vers une page de bienvenue et c'est seulement après que je retourne sur la page et que je me retrouve avec cette page étrange.

  7. #7
    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
    Points : 5 059
    Points
    5 059
    Par défaut
    Citation Envoyé par anthony22 Voir le message
    En fait lors de la fin de la session, je suis bien redirigé vers une page de login. Après l'authentification login-mdp, je suis redirigé vers une page de bienvenue et c'est seulement après que je retourne sur la page et que je me retrouve avec cette page étrange.
    change le javax.faces.STATE_SAVING_METHOD à server..

  8. #8
    Futur Membre du Club
    Inscrit en
    Novembre 2010
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 26
    Points : 5
    Points
    5
    Par défaut
    Ok merci, je test ça.

  9. #9
    Futur Membre du Club
    Inscrit en
    Novembre 2010
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 26
    Points : 5
    Points
    5
    Par défaut
    Alors, en fait j'ai désormais une exception lors de mon retour sur cette page :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
    GRAVE: JSF1054: (Phase ID: RESTORE_VIEW 1, View ID: ) Exception thrown during phase execution: javax.faces.event.PhaseEvent[source=com.sun.faces.lifecycle.LifecycleImpl@4b3c7b]
    25 nov. 2010 09:45:02 org.apache.catalina.core.StandardWrapperValve invoke
    GRAVE: "Servlet.service()" pour la servlet FacesServlet a généré une exception
    javax.faces.application.ViewExpiredException: viewId:/admin/content/usermanagement.jsf - View /admin/content/usermanagement.jsf could not be restored.
    En effet, lorsque je suis dans la modal et que la session est finie, je lance une requête. Et c'est à ce moment qu'il me redirige vers la page d'authentification.

  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
    Points : 5 059
    Points
    5 059
    Par défaut
    Citation Envoyé par anthony22 Voir le message
    Alors, en fait j'ai désormais une exception lors de mon retour sur cette page :



    En effet, lorsque je suis dans la modal et que la session est finie, je lance une requête. Et c'est à ce moment qu'il me redirige vers la page d'authentification.
    Comment tu détecte l'expiration de la session et comment tu fais la redirection?

    Sinon ajoute
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <context-param>
      <param-name>org.ajax4jsf.handleViewExpiredOnClient</param-name>
      <param-value>true</param-value>
     </context-param>
    un exemple de gestion de l'expiration de session avec Richfaces est ici..

  11. #11
    Futur Membre du Club
    Inscrit en
    Novembre 2010
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 26
    Points : 5
    Points
    5
    Par défaut
    Comment tu détecte l'expiration de la session et comment tu fais la redirection?
    La détection se fait via Sring Security.

    Je vais jeter un coup d'oeil à ton lien.

    Sinon j'ai testé org.ajax4jsf.VIEW_HANDLERS. Désormais la page sur lequel je reviens est blanche.

  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
    Points : 5 059
    Points
    5 059
    Par défaut
    Citation Envoyé par anthony22 Voir le message

    Sinon j'ai testé org.ajax4jsf.VIEW_HANDLERS. Désormais la page sur lequel je reviens est blanche.
    le code source de la page blanche?? c'est une ressource protégé par spring??

  13. #13
    Futur Membre du Club
    Inscrit en
    Novembre 2010
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 26
    Points : 5
    Points
    5
    Par défaut
    Voici le code source de la page blanche :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <?xml version="1.0" encoding="UTF-8"?>
    <html xmlns="http://www.w3.org/1999/xhtml"><head><meta name="Ajax-Response" content="true" /><meta name="Ajax-Expired" content="View state could't be restored - reload page ?" /></head></html>
    Je ne suis pas sur de bien comprendre lorsque tu parles de ressource protégé par Spring.

  14. #14
    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
    Points : 5 059
    Points
    5 059
    Par défaut
    comme la page de login par exemple, on peut y accéder sans authentification.

    Le mieux c'est que tu utilise la méthode de Richfaces pour l'expiration de session, sinon au lieu de faire la redirection vers un lien jsf, tu peux le faire sur un simple lien html et faire le submit du form avec du javascript.

  15. #15
    Futur Membre du Club
    Inscrit en
    Novembre 2010
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 26
    Points : 5
    Points
    5
    Par défaut
    donc ce n'est pas une ressource protégé par Spring, il faut être connecté pour pouvoir y accéder.

    Le mieux c'est que tu utilise la méthode de Richfaces pour l'expiration de session, sinon au lieu de faire la redirection vers un lien jsf, tu peux le faire sur un simple lien html et faire le submit du form avec du javascript.
    Ce serait une modification assez lourde. Cette page n'est qu'un exemple parmi les autres de l'application où je rencontre ce problème. En fait toutes les pages contenant des rich:modalPanel ont le même problème.

    J'espère pouvoir faire autrement.

  16. #16
    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
    Points : 5 059
    Points
    5 059
    Par défaut
    le traitement l'expiration de session n'est pas lourd avec Richfaces, il suffit d'ajouter le script dans le template,
    sinon je ne comprend pas pourquoi tu parles de toutes les modalPanels, la page blanche est celle de l'authentification ou après authentification?

  17. #17
    Futur Membre du Club
    Inscrit en
    Novembre 2010
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 26
    Points : 5
    Points
    5
    Par défaut
    Ah désolé de ne pas avoir été plus précis.

    La page blanche est celle que je montre dans les images.

  18. #18
    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
    Points : 5 059
    Points
    5 059
    Par défaut
    ouii il semble que les fichiers css ne sont pas pris en compte..

    et si tu enlève les css des fichiers autorisés ainsi que les ressources a4j

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <sec:intercept-url pattern="/css/*" filters="none" />
    <sec:intercept-url pattern="/a4j_resource/*">
    a4j_resource et le suffixe des ressources tu peux mettre celui par défaut ou le déclarer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <context-param>
      <param-name>org.ajax4jsf.RESOURCE_URI_PREFIX</param-name>
      <param-value>a4j_resource</param-value>
     </context-param>

  19. #19
    Futur Membre du Club
    Inscrit en
    Novembre 2010
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 26
    Points : 5
    Points
    5
    Par défaut
    Je vais tester ça.

    Les 2 balise que tu m'as montré doivent être placées dans la page des images ci-dessus ou alors dans la page de login ?

  20. #20
    Futur Membre du Club
    Inscrit en
    Novembre 2010
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 26
    Points : 5
    Points
    5
    Par défaut
    En ajoutant ces 2 balises, j'ai une exception spécifiant que ces tags sont inconnus.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    GRAVE: JSF1054: (Phase ID: RENDER_RESPONSE 6, View ID: /admin/login/login.xhtml) Exception thrown during phase execution: javax.faces.event.PhaseEvent[source=com.sun.faces.lifecycle.LifecycleImpl@1f81b9e]
    25 nov. 2010 13:35:02 org.apache.catalina.core.StandardWrapperValve invoke
    GRAVE: "Servlet.service()" pour la servlet FacesServlet a généré une exception
    com.sun.facelets.tag.TagException: /admin/login/loginArea.xhtml @13,54 <sec:intercept-url> Tag Library supports namespace: http://www.springframework.org/security/facelets/tags, but no tag was defined for name: intercept-url

Discussions similaires

  1. Problème d'affichage avec rich:inplaceSelect
    Par fastdeath124 dans le forum JSF
    Réponses: 2
    Dernier message: 04/04/2012, 12h04
  2. Réponses: 0
    Dernier message: 14/01/2011, 09h17
  3. Problème d'affichage avec rich:modal et session timeOut
    Par anthony22 dans le forum Développement Web en Java
    Réponses: 0
    Dernier message: 24/11/2010, 15h44
  4. Réponses: 6
    Dernier message: 19/10/2004, 13h46
  5. Problème d'affichage avec trace
    Par WriteLN dans le forum Flash
    Réponses: 10
    Dernier message: 22/10/2003, 16h59

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