Bonjour

J'ai un converter dans un selectOneMenu
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
<p:remoteCommand name="setTab_#{ss.level}" action="#{planMediaControllerInternet.affecterLigneCalcul(ss)}"/>  
<p:selectOneMenu id="supportForRegieInternet" value="#{ss.supportInternet}"  converter="supportInternetConverter" onkeydown="setTab_#{ss.level}" onchange="setTab_#{ss.level}" >
                <f:selectItem itemLabel="-----"  />
                <f:selectItems value="#{planMediaControllerInternet.lstSupportForFournisseurItem()}" />
                <p:ajax event="valueChange" listener="#{planMediaControllerInternet.affecterLigneCalcul(ss)}" update="typePW,nbVisU,classAx,prestationForSupportInternet,supportForRegieInternet"/>
                                </p:selectOneMenu>
voici le converter

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
 
@FacesConverter(value="supportInternetConverter")
@RequestScoped
public class SupportInternetConverter implements Converter{
@Inject
RegieController regieController;
@Inject
SessionController sessionController;
@Inject
PlanMediaControllerInternet planMediaControllerInternet;
 
@Override
public Object getAsObject(FacesContext context, UIComponent component, String value) {
PlanMediaInternetLigneCalcul pmilc = planMediaControllerInternet.getPlanMediaInternetLigneCalculSelected();
RegieInternet regieInternet = pmilc.getRegieInternet();
if (regieInternet != null) {
    for(SupportInternet r : regieInternet.getLstSupportInternet()) {
    if(r.getNameSupport().equals(value)){
        return r;
    }
    }
}
    return null;
}
 
@Override
public String getAsString(FacesContext context, UIComponent component, Object value) {
    if(value != null){
    SupportInternet r = (SupportInternet)value;
    return r.getNameSupport();
    }
    return "";
}
mon problème est que dans le code de selectOneMenu la méthode de getAsObject du converter est appelée avant la méthode affecterLigneCalcul. Comment faire pour que l'appel soit fait premièrement par la méthode affecterLigneCalcul.

Merci