Duvida JSF + XHTML

Vi o seguinte codigo html em uma apostila de JSF , (ignorem a marcacao lateral do numero da linha).

Gostaria de saber o porque deste H , na frente de todas as tags? porque sempre que usei HTML , nunca usei este H , na frente…

Na apostila eles simplesmente mandam fazer assim…mas sei la nao acho legal este metodo , acho mais interessante saber o que estou fazendo.

é algo do JSF mesmo ? é inutil?

&#65532;&#65532; 2 &#65532; &#65532; "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 4 &#65532; &#65532; <html xmlns="http://www.w3.org/1999/xhtml" 5 &#65532; &#65532; xmlns:h="http://java.sun.com/jsf/html"> 6 7 &#65532; &#65532; <h:head> 8 &#65532; &#65532; <title>Gerador de Apostas</title> 9 &#65532; &#65532; </h:head> 10 &#65532; &#65532; <h:body> 11 &#65532; &#65532; <h:form> 12 &#65532; &#65532; <h:panelGrid> 13 &#65532; &#65532; <h:outputLabel value="Quantidade total de números:"/> 14 &#65532; &#65532; <h:inputText value="#{geradorDeApostasBean.quantidadeDeNumeros}"/> 16 &#65532; &#65532; <h:outputLabel value="Quantidade de números por aposta:"/> 17 &#65532; &#65532; <h:inputText value="#{geradorDeApostasBean.tamanhoDaAposta}"/> 18 19 &#65532; &#65532; <h:outputLabel value="Quantidade de apostas:"/> 20 &#65532; &#65532; <h:inputText value="#{geradorDeApostasBean.quantidadeDeApostas}"/> 22 &#65532; &#65532; <h:commandButton action="#{geradorDeApostasBean.geraApostas}" 23 &#65532; &#65532; value="Gerar"/> 24 &#65532; &#65532; </h:panelGrid> 25 &#65532; &#65532; </h:form> 26 &#65532; &#65532; </h:body> 27 &#65532; &#65532; </html>

Você nunca viu o H: no html, porque isso não é HTML.

O h se refere a taglib h do JSF, declarada no header como http://java.sun.com/jsf/html

Recomendação: Estudar Servlet, JSP, JSTL antes de JSF, isso vai ajudar a entender o porque das coisas.

Então cara eu tenho conhecimento nas coisas que vc citou, conheco JSTL , Servlet…so gostaria de entender o por que do H , vi que era uma declaracao do JSF no head, mas nao especificam qual a utilidade nem nada do genero…o seletor tb e diferente das taglibs #{} ao inves de ${}

Quando ao seletor, é apenas para diferenciar. Funciona do mesmo modo.

Quanto ao H, você como conhece JSTL não tem que colocar alguma coisa: e a função? Por exemplo, c:if.

O JSF funciona por componente, por isso ele tem o h:head por exemplo. Ele irá entender que aquele é um componente JSF.

Por isso que todas as tags JSF tem esse h: na frente por padrão. [=

A sim , entendo…valeu pela explicacao…h "Mapeia "o componente para oJSF e o seletor e so para diferenciar.