Ajax не работает на основных лицах - PullRequest
0 голосов
/ 05 марта 2019

Я пытаюсь использовать простые выражения selectManyCheckBox с ajax и конвертером, но ajax не сработал.Если я не использовал конвертер, может быть запущен Ajax.Что-то не так с моим конвертером?

<div class="form-group">
    <p:outputLabel value="Atur Grade Pinjaman" for="gradePinjaman"/>        
    <p:selectManyCheckbox id="gradePinjaman" value="#{autoInvestController.param.grades}" converter="companyGradeConverter">
        <f:selectItems value="#{autoInvestController.grades}" var="grade" itemLabel="#{grade.id}" itemValue="#{grade}"/>                        
        <p:ajax update="selectAll estimation" listener="#{autoInvestController.valueChange}"/>
    </p:selectManyCheckbox>                
    <p:message for="gradePinjaman"/>
</div>

Вот мой код бина поддержки

public void valueChange() {     
    if (param.getGrades() != null && !param.getGrades().isEmpty()) {
        checkAll = param.getGrades().size() == grades.size();
        calculateCollectEstimation();
    }
}

Вот мой конвертер

@Override
public Object getAsObject(FacesContext context, UIComponent component, String value) {        
    if (Strings.isNullOrEmpty(value)) {
        return null;
    } else {
        try {
            PlatformService platformService = (PlatformService) CDI.current().select(PlatformService.class).get();
            Map<String, Object> param = new HashMap<>();
            param.put("id", value);
            CompanyGradeResponse companyGrade = platformService.getCompanyGrade(param).get(0);                
            return companyGrade;
        } catch (EndpointException e) {
            LOG.error(e.getMessage(), e);
            return null;
        }            
    }
}

@Override
public String getAsString(FacesContext context, UIComponent component, Object value) {        
    if (value != null) {
        return ((CompanyGradeResponse) value).getId();
    } else {
        return null;
    }
}

Я думаю, что мой конвертер работаетхорошо, но почему ajax не сработает, когда я поставлю галочку?

Спасибо

...