SóProvas


ID
659962
Banca
FCC
Órgão
TRE-CE
Ano
2012
Provas
Disciplina
Programação
Assuntos

No ciclo de vida do Java Server Faces trata-se da fase na qual o componente deve primeiro ser criado ou recuperado a partir do FacesContext, seguido por seus valores, que são geralmente recuperados dos parâmetros de request e, eventualmente, dos cabeçalhos ou cookies gerados. Trata-se da fase

Alternativas
Comentários
  • Apply Request Values Phase
    • O faces vai extrair todos os valores digitados pelo usuário e guardar esse valor nos seus respectivos componentes
    • se o valor digitado não "casar" com o componente, um erro vai ser adicionado na classe FacesContext e será mostrado na fase Render Response Phase.
    • Os eventos são lançados para os listeners de todos os componentes
  • Apply request values
    O propósito da fase apply request values é com cada componente recuperado. O componente precisa primeiro ser recuperado ou criado de um objeto FacesContext, seguido pelos seus valores. Os valores dos componentes são normalmente retornados da requisição de parâmetros, embora possam ser retornados dos cookies ou dos cabeçalhos.
    Se a propiedade de eventos do componete não estiver setada como ?true?, os valores serão apenas convertidos. Então se o campo estiver limitado a uma proprieade de Inteiros, o valor será convertido para inteiro. Se o conversão de valor falhar, uma mensagem de erro sera gerada e enfileirada no FacesContext, onde será mostrada durante a fase de resposta do render, com qualquer outro erro de validação.
    Se a propiedade de eventos do compenente estiver setada como true, os valores são convertidos paro o tipo validado apropriado. A conversão então é guardad no component. Se a conversão de valores ou a validação falhar, uma mensagem de erro será gerada e enfileirada na FacesContext, onde será mostrada durante a fase de resposta do render, junto com qualquer outro erro de validação.
  • O ciclo de vida do JSF é composto por 6 fases sequenciais:
    1. Restore View;
    2. Apply request values;
    3. Process Validation;
    4. Update model values;
    5. Invoke Application; e
    6. Render response.

    A partir deste pressuposto, seguem algumas considerações com relação à questão:

    a) Restore View. Recuperar tela ou visão: Nesta fase, o componente Controller recupera o ID da tela (determinado pelo nome da página JSP). Assim, o framework JSF cria três tipos de instâncias: Nova visão, visão de inicio e visão de retorno. Cada uma dessas instâncias recebe um tratamento diferenciado. (Alternativa incorreta)

    b) Apply Request Values. Aplicação dos valores recuperados: Esta etapa é promove o estado atual de cada componente. Por meio do FacesContext, os componentes são criados ou recuperados quer pelo método request quer pelos cookies. Uma segunda curiosidade, é que nesta fase são aplicados os "Converters" criados pelo usuários. (Alternativa correta)

    c) Process Validation. Processo de validação: Como o próprio nome sugere, é nesta fase que as validações são aplicadas nos valores de cada componente. (Alternativa incorreta)

    d) Update Model Values. Atualização dos valores do modelo: Neste estágio do ciclo de vida, os valores descritos na tela (Conteiner Cliente) serão atualizados no modelo do lado do servidor (J2EE Server). Sendo assim, as propriedades do managed beans serão atualizadas somente a nível de tela. Não cabe neste momento, aproximar à idéia de atualização de informações na base de dados. (Alternativa incorreta)

    e) Invoke Application. Invocar a aplicação: Nesta etapa, o Controller manipula o envio do formulário a fim de realizar as aplicações das regras de negócio. (Alternativa incorreta)

    Resposta da questão é a letra "b".

    Observação: Apesar da questão não mencionar nada a respeito do sexto passo do ciclo de vida do JSF (Render response - Retorno da resposta), discorro um breve complemento: Este estágio corresponde ao retorno da aplicação para a visão (Já que o processo encontrava-se no Conteiner Server) com todos os componentes em seu estado atual.

    Fonte http://www.ibm.com/developerworks/library/j-jsf2/, acessado em 23/03/2012 às 12:15

  • Já é a segunda questão sobre ciclo de vida JSF que mistura a primeira com a segunda fase