Gianetti
Thread.start()
![[Avatar]](/images/avatar/287df135f28ed738bc5597bc9027a1e2.jpeg)
Membro desde: 06/05/2011 13:55:20
Mensagens: 41
Localização: São Paulo
Offline
|
A diferença de $ para # no JSF não levando em consideração se é 2.0 ou não, mas quero saber porque usarão o #, vi alguma coisa sobre uso em tempo de execução e compilação, a dúvida é esta?
This message was edited 1 time. Last update was at 31/01/2012 10:47:06
|
drsmachado
GUJ Expert
Membro desde: 25/09/2010 12:54:06
Mensagens: 3986
Localização: Curitiba / São José dos Pinhais - PR
Offline
|
Bom, primeiramente, precisamos entender a função do $ e do #.
Para o #, ele é um elemento chave que diz, quando há a compilação do código da jsp ou xhtml, que o conteúdo delimitado pelas chaves (#{conteudo}) deve ser interpretado, utilizando algo que existe ou não em um escopo (contexto, aplicação, sessão, requisição, página), seja uma variável (que pode ser objeto, coleção de objetos, etc) ou um método.
Já o $ é utilizado de N formas.
No JQuery e prototype são coringas para referenciar functions. No JSTL, é utilizado com a mesma função do # no JSF.
O struts, por exemplo, utiliza % no lugar de $ e # em algumas situações.
Em termos de funcionalidade, o # está um passo a frente do $. Isto, por que, enquanto o $ só mapeia unilateralmente (não é possível referenciar uma variável/método da servlet/bean utilizando o $), o # o faz de maneira bilateral (com o # se mapeia os métodos e variáveis do managedbean).
A entender:
Perceba que, ao submetermos ambos, teremos o envio do conteúdo digitado na textfield, porém, se não informassemos o atributo name do textfield html, a servlet desconheceria sua existência, no request, enquanto que, no JSF, isso não é preciso.
This message was edited 1 time. Last update was at 31/01/2012 07:25:38
|