Buscar

Java Web com Servlets e JSPs BEAN REC

Prévia do material em texto

Java Web com Servlets e JSPs
Avaliação
Parte superior do formulário
1) Considerando que m é um java.util.Map, o que é possível afirmar sobre a execução da expressão ${m.xpto}?
* Marque todas as alternativas que respondem o enunciado da questão
	
	É uma expressão inválida que poderia ser corrigida mudando-a para ${xpto} (alternativa incorreta)
	
	Se a expressão fosse escrita como ${m["xpto"]} o resultado seria o mesmo. (alternativa correta)
	
	É uma expressão inválida, já que o método getXpto() não existe no java.util.Map. (alternativa incorreta)
	
	É uma expressão inválida, já que o método xpto() não existe no java.util.Map. (alternativa incorreta)
	
	É uma expressão válida, e retorna como resultado o valor da chave xpto inserida no mapa. (alternativa correta)
	
	Resposta correta!
A expressão em questão é válida e retorna o valor da chave xpto inserida no mapa. Esta expressão é equivalente à expressão ${m["xpto"]}, portanto ambas podem ser usadas. Quando trabalhamos com mapas em EL, o que vem depois do ponto (.) é a chave de um dos pares do mapa, e não um indicativo de que um método será invocado.
2) O que é correto afirmar sobre a tag <c:forEach>?
* Marque todas as alternativas que respondem o enunciado da questão
	
	É utilizada para iterar sobre os elementos de uma coleção de dados. (alternativa correta)
	
	A lista onde estão os dados pode ser referenciada através de uma expressão EL. (alternativa correta)
	
	Possui o atributo var, que referencia o item corrente da iteração. (alternativa correta)
	
	É uma das diversas tags presentes na biblioteca JSTL. (alternativa correta)
	
	Possui o atributo list, que referencia a lista onde a iteração será realizada. (alternativa incorreta)
	
	Resposta incorreta!
A tag <c:forEach> é uma tag JSTL que permite iterar sobre elementos de uma coleção. Esta coleção pode ser referenciada por uma expressão EL, o que permite obtê-la através de um atributo da request, por exemplo. Os atributos principais desta tag são o var, que referencia o item corrente; e o items, que referencia a coleção.
3) O que é verdadeiro sobre a tag <jsp:setProperty>?
* Marque todas as alternativas que respondem o enunciado da questão
	
	Os atributos name e property da tag são opcionais. (alternativa incorreta)
	
	Ela permite que as propriedades do bean sejam alteradas. (alternativa correta)
	
	O atributo property da tag indica o método setter que será chamado. Por exemplo, para chamar o método setNome() o valor deste atributo deve ser setNome. (alternativa incorreta)
	
	Permite popular um bean automaticamente com os parâmetros vindos da request. (alternativa correta)
	
	O atributo name da tag indica o nome do bean que terá a propriedade alterada. Este nome deve corresponder ao que foi definido pela tag <jsp:useBean>. (alternativa correta)
	
	Resposta correta!
A tag <jsp:setProperty> permite a alteração de propriedades de um bean. Para alterar a propriedade nome, por exemplo, o atributo value da tag pode ser nome. Isto fará com que o método setNome() seja invocado no bean. Os atributos name e property são obrigatórios.
4) Sobre a expressão ${pessoa.cpf}, o que é possível afirmar?
* Marque todas as alternativas que respondem o enunciado da questão
	
	Trata-se de uma expressão EL para ler o CPF de uma pessoa. (alternativa correta)
	
	O método setCpf() será invocado no objeto pessoa. (alternativa incorreta)
	
	Uma string cujo valor é pessoa existe em algum escopo. (alternativa incorreta)
	
	Um objeto cujo nome é pessoa existe em algum escopo. (alternativa correta)
	
	O método getCpf() será invocado no objeto pessoa. (alternativa correta)
	
	Resposta correta!
A expressão em questão é uma expressão EL usada para ler o CPF de uma pessoa. Para que ela funcione, algum dos escopos (request, session, application ou page) deve ter um objeto cujo nome seja pessoa e este objeto deve possuir o método getCpf(), que será invocado pelo EL.
5) O que é correto afirmar sobre a tag <c:if>?
* Marque todas as alternativas que respondem o enunciado da questão
	
	Possui o atributo test, que indica o teste a ser realizado. (alternativa correta)
	
	Um problema desta tag é que o teste a ser realizado não pode ser escrito com o uso de uma expressão EL. (alternativa incorreta)
	
	Se o objetivo é escolher uma opção dentre várias com base no resultado do teste, a tag <c:choose> é mais indicada. (alternativa correta)
	
	Permite que um teste seja realizado. Se o resultado do teste for verdadeiro, o corpo da tag é renderizado. Caso contrário, ele é ignorado. (alternativa correta)
	
	Pode ser utilizada em conjunto com a tag <c:else> para simular o comportamento de uma estrutura if/else. (alternativa incorreta)
	
	Resposta correta!
A tag <c:if> permite renderizar o corpo da tag se o resultado de determinado teste for verdadeiro. O teste é definido no atributo test e expressões EL podem ser utilizadas. A tag <c:else> não existe. Em situações onde é preciso escolher uma opção dentre várias, a tag <c:choose> é mais indicada.
Parte inferior do formulário

Continue navegando