Boa noite amigo, sou programador a mais de 5 anos em PHP, DELPHI e C#.
Porem estou estudando o java Web EE e estou com umas Dúvidas e gostaria que pudessem me ajudar.
estou implementando o JSF no NetBeans 7 e as duvidas são:
1º Por que as paginas não ficam com a extensão *.jsf, quando crio elas ou elas ficam com a estensao xhtml ou jsp
2º Todos os tutoriais falam que devo abrir o faces-config.xml porém o NetBenas 7.1 não cria existe arquivo.
3º Por que ao invés de usar o comandos ou padrão do html eu tenho que trabalhar com <h:head> <h:body><h:form> ou seja sempre tem um prefixo na frente ou h ou p ou f etc
3 - Você pode usar JSP sim, porém, o padrão para construção de facelets (java server faces) é o eXtensible Hypertext Markup Language ou xhtml.
2 - Faces-config.xml era o arquivo de configuração padrão para mapeamento de todos os managed-beans e redirecionamentos. Provavelmente você esteja usando a versão 2.x e, devido ao uso de annotations, o faces-config.xml pode ser ignorado.
1 - O padrão de url do facelets permite que se determine a extensão .jsf ou .xhtml mesmo, depende de como você define isso nas configurações do mesmo.
Como citou o colega acima, a extensão da página é algo configurável, sendo que pode ser considerado como detalhe.
Soobre os prefixos, é porque o que voce excreve é um XML que vai virar um HTML, logo estas tags quando compiladas para html tem algumas propriedades que se não são obrigatórias são formente recomendadas, pois estas propriedades contribuem para otimização ou organização da página em si, por exemplo, o <h:form> modifica o id final de seus filhos anexando seu nome nele ficando nomeDoForm:nomeDoComponente, evitando assim que ao retulizar componentes de outra páginas, voce tenha nome iguais entre eles.
Os prefixos são os namespaces do xml, definidos no cabeçalho, e servem pra indicar qual o fonte daqueles componentes, como é comum em XML’s.
[quote=drsmachado]3 - Você pode usar JSP sim, porém, o padrão para construção de facelets (java server faces) é o eXtensible Hypertext Markup Language ou xhtml.
2 - Faces-config.xml era o arquivo de configuração padrão para mapeamento de todos os managed-beans e redirecionamentos. Provavelmente você esteja usando a versão 2.x e, devido ao uso de annotations, o faces-config.xml pode ser ignorado.
1 - O padrão de url do facelets permite que se determine a extensão .jsf ou .xhtml mesmo, depende de como você define isso nas configurações do mesmo.[/quote]
Nossa agora ficou mais claro. Sobre em determinar a extensão .jsf ou .xhtml aonde eu faço isso no netbeans 7?
Muito obrigado pelas Grandes informações!
[quote=cleciusjm]Como citou o colega acima, a extensão da página é algo configurável, sendo que pode ser considerado como detalhe.
Soobre os prefixos, é porque o que voce excreve é um XML que vai virar um HTML, logo estas tags quando compiladas para html tem algumas propriedades que se não são obrigatórias são formente recomendadas, pois estas propriedades contribuem para otimização ou organização da página em si, por exemplo, o <h:form> modifica o id final de seus filhos anexando seu nome nele ficando nomeDoForm:nomeDoComponente, evitando assim que ao retulizar componentes de outra páginas, voce tenha nome iguais entre eles.
Os prefixos são os namespaces do xml, definidos no cabeçalho, e servem pra indicar qual o fonte daqueles componentes, como é comum em XML’s.[/quote]
Obrigado Clecius por mais uma informação importante!!
Boa noite amigo estou com um erro no NetBeans, seguindo as dicas acimas, olha com estar o codigo
[code]<?xml version='1.0' encoding='UTF-8' ?>
Facelet Title
OK
//na proxima linha o netbeans estar me informando um erro: "Fatal error: o prefixo "p" do elemento p:selectCheckboxMenu não estar vinculado"
#{movie}
</h:form>
[/code]
na linha 16 estar aparecendo a seguinte mensagem de erro "Fatal error: o prefixo "p" do elemento p:selectCheckboxMenu não estar vinculado"
Como resolver isso.
Grato pela ajuda
da referencia ao framework primefaces, você tem que adicionar o jar do primefaces na biblioteca do seu projeto, faça o download do jar www.primefaces.org depois adiciona na tag da sua pagina xmlns:p="http://primefaces.org/ui aí já poderá utilizar os componentes