Mostrar exceptions ou erros no primefaces

6 respostas
furacao123

Estou desenvolvendo com primefaces JSF2 e Spring e estou com problemas ao utilizar o PickList, para ser mais claro no Converter, quando eu adiciono o componente na minha view…

<p:pickList value="#{usuarioController.listaEmpresas}" var="empresa" iconOnly="true" effect="drop" itemLabel="#{empresa.nomeFantasia}" itemValue="#{empresa}" converter="empresaPickListConverter" showSourceControls="true" showTargetControls="true"> <f:facet name="sourceCaption">Disponivel</f:facet> <f:facet name="targetCaption">Selecionadas</f:facet> </p:pickList>

e mando salvar o mesmo nao salva nenhuma alteracao no objeto, e tambem nao dispara nenhuma exception ou erro, ja setei o primefaces para DEBUG e nao producao mas mesmo assim nada eh mostrado, como faço para verificar todas as saidas do primefaces?

6 Respostas

Hebert_Coelho

Coloca essa configuração no web.xml:

<context-param> <param-name>javax.faces.PROJECT_STAGE</param-name> <param-value>Development</param-value> </context-param>

furacao123

Entao ja esta com essa config no web.xml, mas mesmo assim nao dispara nada quando tento usar o pickList

Hebert_Coelho

Então altera a configuração do LOG do teu servidor para DEBUG.

furacao123

vou verificar o log, pois no console nao mostrou nada.

verifiquei o log, nada de exception, simplesmente nao chama o metodo salvar no meu MB

furacao123

apaguei tudo a parte da empresa e estou fazendo a relacao com outro objeto, nao consigo fazer esse picklist funcionar

estou fazendo o converter da seguinte maneira

@FacesConverter(value = "roleConverter", forClass = Role.class)
public class RoleConverter implements Converter {

    private static Map&lt;Integer, Role&gt; cache = new HashMap&lt;Integer, Role&gt;();

    @Override
    public Object getAsObject(FacesContext context, UIComponent component, String value) {
        if (value == null && value.equals("0")) {
            return null;
        }
        try {
            return cache.get(Integer.parseInt(value));
        } catch (NumberFormatException e) {
            throw new ConverterException("Invalid value: " + value, e);
        }
    }

    @Override
    public String getAsString(FacesContext context, UIComponent component, Object object) {
        Role role = (Role) object;
        Integer id = role.getId();
        if (id != null) {
            cache.put(id, role);
            return String.valueOf(id.intValue());
        } else {
            return "0";
        }
    }

esta aparecendo os dados corretamente, mas na hora de salvar verifico a lista de selecionados e nao ha mudança, mas pelo menos agora esta chamando o salvar

furacao123

vou abrir um outro post falando sobre o pickList

Criado 12 de dezembro de 2011
Ultima resposta 12 de dez. de 2011
Respostas 6
Participantes 2