Utilisation de Seam 2.2.2.Final et Richfaces 3.3.3.Final.Utilisation de l'onglet tabPanel de l'onglet richfaces
Je dois effectuer une action lorsque l'utilisateur quitte un onglet, et cette action ne peut avoir lieu qu'après que toute la page soit chargée, il y a un certain bean init qui a lieu sur chaque contenu d'onglet. Alors je suis allé lire.
Le problème est, avec 3 onglets, par exemple, lorsque chaque onglet est rendu et que le rendu passe pour le suivant, la commande est déclenchée. Pas bon, haricot non initialisé et je me suis pointé nullpointer sur moi!
De toute façon pour éviter ce comportement sur cette étiquette? Comme je fais une amélioration sur une très grande application, j'essaie de déranger le code déployé aussi peu que possible.
Merci d'avance pour jeter un oeil. Voici un exemple de code pour ma page:
<?xml version="1.0" encoding="ISO-8859-1"?>
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:s="http://jboss.com/products/seam/taglib"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:a="http://richfaces.org/a4j"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:rich="http://richfaces.ajax4jsf.org/rich"
template="/WEB-INF/xhtml/templates/frameTemplate.xhtml">
<ui:param name="pageTitle" value="Elaborar relatório, voto e ementa" />
<ui:define name="title">#{pageTitle}</ui:define>
<ui:param name="home" value="#{sessionProcess}" />
<ui:define name="frameBody">
<rich:jQuery query="hide()" selector="#update" timing="onload"/>
<s:div id="allTabs">
<rich:tabPanel title="Tab1" switchType="ajax" style="width: 100%;">
<rich:tab label="Report"
rendered="#{!sessionProcess.hideReport}"
title="Report" style="width: 100%;"
action="#{sessionProcess.setReport()}" immediate="true" ontableave="#{sessionProcess.writeDraftReport()}">
.
.
.
<rich:tabPanel title="Tab2" switchType="ajax" style="width: 100%;">
<rich:tab label="Vote"
rendered="#{!sessionProcess.hideVote}"
title="Report" style="width: 100%;"
action="#{sessionProcess.setVote()}" immediate="true" ontableave="#{sessionProcess.writeDraftVote()}">
.
.
.
Oui, thankx, thats it. Je dois regarder les cycles de vie pour de vrai, sinon j'abandonne tout ça ... –