Facelets utilizando Tomahawk - Tags não renderizadas[RESOLVIDO]

21 respostas
felipeguerra

Gostaria de um auxílio no seguinte erro: utilizando o Facelets com o Tomahawk, tenho uma página que monta um menu, quer dizer, deveria montar.

Quando examino o código-fonte no browser, percebo que as tags não foram renderizadas corretamente, segue o que está sendo mostrado no browser.

form id="j_id2" name="j_id2" method="post" action="/carona-web/corpo.jsf" enctype="application/x-www-form-urlencoded">
				<t:inputHidden forceId="true" id="jscook_action"></t:inputHidden>

				<t:jscookMenu theme="hbr" layout="ThemeMiniBlack">
					<t:navigationMenuItems value="[org.apache.myfaces.custom.navmenu.NavigationMenuItem@3e97cd]"></t:navigationMenuItems>
				</t:jscookMenu><input type="hidden" name="j_id2_SUBMIT" value="1" /><input type="hidden" name="jsf_sequence" value="1" /><input type="hidden" name="javax.faces.ViewState" id="javax.faces.ViewState" value="BV4T1yvaPdNfIYmob3Qa0t80FLj1B4uC7oBmJYRWoLBr/yHL9NtF1u/jiysgmvPnl1KDBrQMQBGxzSCph4iL6w==" /></form>

Grato novamente pelas eventuais ajudas.

21 Respostas

felipeguerra

up!

felipeguerra

Kd a rapaziada que conhece, Urubatan, Leozin, etc?

felipeguerra

UP!

Ataxexe

Seu código (do facelet) deve ser escrito de acordo com este exemplo:

Tenta assim que funcionará!

felipeguerra

Mano, aquilo que eu postei é uma página “semi” renderizada!

Não fiz isso no meu código:

<input type="text" name="txt">
Ataxexe

Eu entendi o que você postou, mas tudo bem.

Posta o teu facelet só pra eu tirar uma dúvida sobre ele.

felipeguerra

Então, eu resolvi esse problema…sabe o que era?

O arquivo tomahawk.taglib.xml.

Entre outras coisas, o meu menu nesse momento não chama os links corretamente…tá complicado!

Z

Estou com o mesmo problema. Todas as tag do tomahawk não estaõ reinderizando corretamente!

Alguem consegui resolver isso?

Valeu a ajuda!

Z

achei umas lib no site :http://wiki.apache.org/myfaces/Use_Facelets_with_Tomahawk
e funcionaram perfeitamente!

link direto para as libs: http://code.google.com/p/tomahawk-facelets/

Valeu a ajuda!

Leozin

felipeguerra:
Então, eu resolvi esse problema…sabe o que era?

O arquivo tomahawk.taglib.xml.

Entre outras coisas, o meu menu nesse momento não chama os links corretamente…tá complicado!

você não tentou fazer isso? de colocar o tomahawk.taglib.xml?

e outra coisa, qual menu não está funcionao? JSCookMenu?

EDIT: nossa nem ví que o tópico foi meio que ressucitado. Mal ae :stuck_out_tongue:

conseguiu fazer funcionar o JSCookMenu?

Z

estou usando o JSCookMenu normalmente com as novas libs!

sobre o tomahawk.taglib.xml não testei. Achei a solução das libs mais facil e interessante.

felipeguerra

Leozin:

você não tentou fazer isso? de colocar o tomahawk.taglib.xml?

e outra coisa, qual menu não está funcionao? JSCookMenu?

EDIT: nossa nem ví que o tópico foi meio que ressucitado. Mal ae :stuck_out_tongue:

conseguiu fazer funcionar o JSCookMenu?

O projeto está em stand by, logo logo eu testo e te falo, ok?

Abraço!

felipeguerra

Leozin:

conseguiu fazer funcionar o JSCookMenu?

Então, para saberem como isso anda, agora estou com o seguinte erro na hora em que vou usar o Tomahawk com o Facelets:

SEVERE: Error Loading Library: /WEB-INF/tomahawk.taglib.xml java.io.IOException: Error parsing [jndi:/localhost/sample-facelets/WEB-INF/tomahawk.taglib.xml]: at com.sun.facelets.compiler.TagLibraryConfig.create(TagLibraryConfig.java:410) at com.sun.facelets.FaceletViewHandler.initializeCompiler(FaceletViewHandler.java:274) at com.sun.facelets.FaceletViewHandler.initialize(FaceletViewHandler.java:161) at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:522) at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:110) at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100) at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:595) Caused by: org.xml.sax.SAXParseException: The element type "facelet-taglib" must be terminated by the matching end-tag "&lt;/facelet-taglib&gt;". at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:236) at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:215) at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:386) at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:316) at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1438) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1219) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1685) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:368) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:834) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:764) at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:148) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1242) at javax.xml.parsers.SAXParser.parse(SAXParser.java:375) at javax.xml.parsers.SAXParser.parse(SAXParser.java:176) at com.sun.facelets.compiler.TagLibraryConfig.create(TagLibraryConfig.java:407) ... 22 more

felipeguerra

Superei o erro anterior, PORÉM, ainda não funciona, não aparece nada na tela:

JSPX &lt;?xml version=&quot;1.0&quot; encoding=&quot;ISO-8859-1&quot; ?&gt; &lt;jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:t="http://myfaces.apache.org/tomahawk" version="2.0"&gt; &lt;html xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;head&gt; &lt;title&gt;T I T U L O - X H T M L&lt;/title&gt; &lt;/head&gt; &lt;body&gt; &lt;f:view&gt; &lt;h:form id="formTeste"&gt; &lt;input type="hidden" name="jscook_action" id="jscook_action" /&gt; &lt;t:jscookMenu theme="hbr" layout="ThemeOffice" id="navMenu"&gt; &lt;t:navigationMenuItem action="/teste"&gt;ITEM&lt;/t:navigationMenuItem&gt; &lt;/t:jscookMenu&gt; &lt;/h:form&gt; &lt;/f:view&gt; &lt;/body&gt; &lt;/html&gt; &lt;/jsp:root&gt;
Saída do console:

25/01/2008 15:45:45 org.apache.myfaces.custom.navmenu.NavigationMenuUtils getNavigationMenuItemList SEVERE: Invalid child with id formTeste:j_id5of component with id : formTeste:j_id4 : must be UINavigationMenuItem or UINavigationMenuItems, is of type : com.sun.facelets.compiler.UIInstructions

De qualquer forma, quero agradecer o pessoa do GUJ, estou conseguindo usar o Facelets com code complete no Eclipse! :smiley:

felipeguerra
Não acredito, não funciona nem ferrando...agora eu vou olhar o source no browser e ele exibe tags não esperadas, além do que está reclamando do JavaScript.
&lt;?xml version=&quot;1.0&quot; encoding=&quot;ISO-8859-1&quot;?&gt;
&lt;jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.0"&gt;&lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;
	&lt;head&gt;
&lt;script type="text/javascript" src="/sample-facelets/faces/myFacesExtensionResource/org.apache.myfaces.renderkit.html.util.MyFacesResourceLoader/12018073/navmenu.jscookmenu.HtmlJSCookMenuRenderer/JSCookMenu.js;jsessionid=F786CA56EB7E38694E68B017D879C06D"&gt;&lt;!--

//--&gt;&lt;/script&gt;
&lt;script type="text/javascript" src="/sample-facelets/faces/myFacesExtensionResource/org.apache.myfaces.renderkit.html.util.MyFacesResourceLoader/12018073/navmenu.jscookmenu.HtmlJSCookMenuRenderer/MyFacesHack.js;jsessionid=F786CA56EB7E38694E68B017D879C06D"&gt;&lt;!--

//--&gt;&lt;/script&gt;
		&lt;title&gt;T I T U L O - X H T M L&lt;/title&gt;
		&lt;script language="JavaScript" src="jscookmenu/JSCookMenu.js"&gt;&lt;/script&gt;
		&lt;link rel="stylesheet" type="text/css" href="jscookmenu/ThemeOffice/theme.css" /&gt;
		&lt;script language="JavaScript" src="jscookmenu/ThemeOffice/theme.js"&gt;&lt;/script&gt;
	&lt;/head&gt;
	&lt;body&gt;
&lt;form id="formTeste" name="formTeste" method="post" action="/sample-facelets/index.jsf;jsessionid=F786CA56EB7E38694E68B017D879C06D" enctype="application/x-www-form-urlencoded"&gt;
&lt;input type="hidden" name="formTeste" value="formTeste" /&gt;

				&lt;input type="hidden" name="jscook_action" id="jscook_action" /&gt;&lt;script type="text/javascript"&gt;var formTeste_navMenu_menu =
[[null, 'Ok', 'formTeste_navMenu_menu:A]http://localhost:8080', 'formTeste', null]];&lt;/script&gt;&lt;div id="formTeste_navMenu_menu"&gt;&lt;/div&gt;
&lt;script type="text/javascript"&gt;	if(window.cmDraw!=undefined) { cmDraw ('formTeste_navMenu_menu', formTeste_navMenu_menu, 'ThemeOffice', cmhbl, 'hbl');}&lt;/script&gt;&lt;span id="id1"&gt;TESTE&lt;/span&gt;&lt;input type="hidden" name="javax.faces.ViewState" id="javax.faces.ViewState" value="H4sIAAAAAAAAAJVVXWgcVRQ+O5tt/qomDU0VCca21hZkNn+kS2Jp85/R2aRmt0XrQ3oze3dnkvlz5s7ubIViH1SwIII/IKZY0Mf2Rd98UMQHodBKA77oixRBBPVBhKoveu6d/UsyErwPlzu753z3fGe+78yNXyEVeND3orpOykQ2iV2Sl9fWqcYm37rz/Ic9/glTAghdAEj5HoxqjiX7gS0XiUZ9mbiuaWiEGY4t5xhhNEtsUqKeYrnm0bxH6ZJToH8UP/v85tDCF/s5TuU48DXIbwtrKIjpOja1mXxOOW/QyorjMIz1X4LLIFXGRMKR+ASdWaa8iNu841nQWcQ9T31G68nPYWoCph2vhLUSTaeyVa1hBD5DLjYpW9QO5HVfc5wNceRwM45lEbvwTG4Gf83ir9COkfxQR55BZAnG90Y+pyyRslESTeIACqMWpNZXjcJYHeu0qHIsDms7UxoyUd5ywNyA5fERkkZhOAw4Dl9S49TROHW6uPDd9Tbf8LTjmJTYtwe9V77d/Ps3CRIXIFUmZkBDNyGK6gaR0ydyAmaY8pTnkapq+Cy8sjXw/tfkWhISCrT5xiUq5AGVNtz2YUldi/msujo9lVNmGHSnDbtAQ2ywGyJgTxNQdTRi0st/9l7cHPrrFwnaFOjQia9rqBkV2jUnsJlXZXBASDPNC0/nmGfYpUkVOvhjgFrjxfZheJl4BrGZeAzdf3AxkKZXcHMZqmk7f8VmFGV64N71j+9feT0jcSY1/vUSRdxSYK1R77Ub7w50v/PD1boR9mE/G91NxPS+v9n7xr2C8iLSyxI31f7dl1/1X7ybBGkeukyHFOaJxhxPgU6me9TXHbMQuqfPCIh9lQ7+OvkFDB5u9Z9JmS9np1aeXVVmGXScLGo0MzI8HBc1dfasqszNYjXpXf8ZaFZ5lhZJYLL56MejU2jsat7ZoPbi5jezk/Z71yP3Htz2PpH9obvq8UwYuqzFfJz8Mb7t59sDLOpo3bzcqa7Q2IPIKRmphkE7tTVWdUXy43w7ErpxK6bdzVMq5tQp7npsVzcT4qZG34bGOYneBomJmt9Zw/mtjAZivNocFrxOEY2I3XmdWnS5WDQ0im7V18w9xNPTOLX/Xw6ja5zDQ00OYsqw2rRp1h91Eq2xvFGbDcfix6uY6YuoRurlSJl6L9z69NTbm7ezEkgqdGom8f0lYtU92OVjTEHkMOiPXGs46RxFZ5rGJbJm0slQXPfkLhFSnAe0RLRqljLdKUyjyNDoEK0EGlSFhMXgUYEapqmZjgLnQhcN4+NsRej/Qs6T0s7oOjKXtQePRPQxdGfcJ+lbV3+8P/amJOL6GnHNiI9efSP3+4Wtp8V0wAqeaJFGDKBqMOoR817qg9GF4e/v8Pt5+xYqJ+Cgzpg7kU6bfDDqjs8mMkOZodZ5FI2/nd/r2lC8uXX+p58HXl6ojykIK6Mw3GLXwTMjo0+dHB/EWYOFnDoce93hMNZtEKPUZIxSk3tqVtqu2ZEMOgwVq1GlwKCNefwb5EbftVbHHYpxHP8ACiGn8nO5/Fy9aJ6x9C8SkAtH2QgAAA==" /&gt;
&lt;/form&gt;
	&lt;!-- MYFACES JAVASCRIPT --&gt;

&lt;/body&gt;
&lt;/html&gt;

Tem alguém que pode dar uma força?

david.laks

felipeguerra:
Leozin:

conseguiu fazer funcionar o JSCookMenu?

Então, para saberem como isso anda, agora estou com o seguinte erro na hora em que vou usar o Tomahawk com o Facelets:

SEVERE: Error Loading Library: /WEB-INF/tomahawk.taglib.xml java.io.IOException: Error parsing [jndi:/localhost/sample-facelets/WEB-INF/tomahawk.taglib.xml]: at com.sun.facelets.compiler.TagLibraryConfig.create(TagLibraryConfig.java:410) at com.sun.facelets.FaceletViewHandler.initializeCompiler(FaceletViewHandler.java:274) at com.sun.facelets.FaceletViewHandler.initialize(FaceletViewHandler.java:161) at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:522) at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:110) at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100) at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:595) Caused by: org.xml.sax.SAXParseException: The element type "facelet-taglib" must be terminated by the matching end-tag "&lt;/facelet-taglib&gt;". at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:236) at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:215) at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:386) at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:316) at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1438) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1219) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1685) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:368) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:834) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:764) at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:148) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1242) at javax.xml.parsers.SAXParser.parse(SAXParser.java:375) at javax.xml.parsers.SAXParser.parse(SAXParser.java:176) at com.sun.facelets.compiler.TagLibraryConfig.create(TagLibraryConfig.java:407) ... 22 more

vc falou que superou esse erro, to tendo o mesmo problema, como vc resolveu ele?

o erro é: org.xml.sax.SAXParseException: The element type “facelet-taglib” must be terminated by the matching end-tag “</facelet-taglib>”

abraço

felipeguerra

Provavelmente uma tag aí no meio do código não está fechada…

J

Cara, você conseguiu resolver isso?
Estou tendo o mesmo problema…

Obrigado,
Jefferson

J

Galera,
estou usando My Faces (1.2.7), tomahawk 1.1.9.

Nesta página http://wiki.apache.org/myfaces/Use_Facelets_with_Tomahawk é dito que "Tomahawk releases starting from version 1.1.7 (released September 2008 ) automatically support Facelets".

Tenho um exemplo rodando, sem lançar exceção nenhuma, porém o menu (jscookmenu) não é renderizado quando uso facelets (funciona normalmente sem facelets).

Alguém consegue ajudar?

O que percebi vendo o código gerado é que este pedaço não é incluido na página (e no exemplo sem facelets é incluido).

<script type="text/javascript" src="/Menu/faces/myFacesExtensionResource/org.apache.myfaces.renderkit.html.util.MyFacesResourceLoader/12469722/navmenu.jscookmenu.HtmlJSCookMenuRenderer/JSCookMenu.js"><!--

//--></script>
<script type="text/javascript" src="/Menu/faces/myFacesExtensionResource/org.apache.myfaces.renderkit.html.util.MyFacesResourceLoader/12469722/navmenu.jscookmenu.HtmlJSCookMenuRenderer/effect.js"><!--

//--></script>
<script type="text/javascript" src="/Menu/faces/myFacesExtensionResource/org.apache.myfaces.renderkit.html.util.MyFacesResourceLoader/12469722/navmenu.jscookmenu.HtmlJSCookMenuRenderer/MyFacesHack.js"><!--

//--></script>
<script type="text/javascript"><!--
var myThemeOfficeBase='/Menu/faces/myFacesExtensionResource/org.apache.myfaces.renderkit.html.util.MyFacesResourceLoader/12469722/navmenu.jscookmenu.HtmlJSCookMenuRenderer/ThemeOffice/';
//--></script>
<script type="text/javascript" src="/Menu/faces/myFacesExtensionResource/org.apache.myfaces.renderkit.html.util.MyFacesResourceLoader/12469722/navmenu.jscookmenu.HtmlJSCookMenuRenderer/ThemeOffice/theme.js"><!--

//--></script>
<link rel="stylesheet" href="css/jscookmenu/ThemeOffice/theme.css" type="text/css" />

Abaixo os arquivos do projeto.

Obrigado,
Jefferson

template.xhtml

<?xml version='1.0' encoding='UTF-8' ?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        <title>Facelets - Template Example</title>
        <link href="./css/default.css" rel="stylesheet" type="text/css" />
    </head>
    
    <body>
        <h1>
            <ui:insert name="title">Default Title</ui:insert>
        </h1>
        <p>
            <ui:insert name="body">Default Body</ui:insert>
        </p>
    </body>
    
</html>
template-client.xhtml
<?xml version='1.0' encoding='UTF-8' ?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:t="http://myfaces.apache.org/tomahawk">
    <body>

        <ui:composition template="/template.xhtml">
            <ui:define name="title">
                <f:view>
                    <h:form>
                        <t:inputHidden forceId="true" id="jscook_action" />
                        <h1><h:outputText value="JavaServer Faces - Facelets" /></h1>

                        <t:jscookMenu layout="hbr" theme="ThemeOffice" styleLocation="css/jscookmenu">
                            <t:navigationMenuItems id="navitems" value="#{dynamicMenu.navItems}" />
                        </t:jscookMenu>
                    </h:form>
                </f:view>
            </ui:define>
            <ui:define name="body">
                Hello from the Facelets client template!
            </ui:define>
        </ui:composition>
    </body>
</html>
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
    <context-param>
        <param-name>com.sun.faces.verifyObjects</param-name>
        <param-value>true</param-value>
    </context-param>
    <context-param>
        <param-name>com.sun.faces.validateXml</param-name>
        <param-value>true</param-value>
    </context-param>
    <context-param>
        <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
        <param-value>.xhtml</param-value>
    </context-param>
    <context-param>
        <param-name>facelets.DEVELOPMENT</param-name>
        <param-value>false</param-value>
    </context-param>
    <context-param>
        <param-name>facelets.SKIP_COMMENTS</param-name>
        <param-value>true</param-value>
    </context-param>
    <filter>
        <filter-name>MyFacesExtensionsFilter</filter-name>
        <filter-class>org.apache.myfaces.webapp.filter.ExtensionsFilter</filter-class>
        <init-param>
            <description>Set the size limit for uploaded files.
            Format: 10 - 10 bytes
                    10k - 10 KB
                    10m - 10 MB
                    1g - 1 GB
            </description>
            <param-name>uploadMaxFileSize</param-name>
            <param-value>20m</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>MyFacesExtensionsFilter</filter-name>
        <servlet-name>Faces Servlet</servlet-name>
    </filter-mapping>
    <filter-mapping>
        <filter-name>MyFacesExtensionsFilter</filter-name>
        <url-pattern>*.jsf</url-pattern>
    </filter-mapping>
    <filter-mapping>
        <filter-name>MyFacesExtensionsFilter</filter-name>
        <url-pattern>/faces/*</url-pattern>
    </filter-mapping>
    <listener>
        <listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
    </listener>
    <servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet>
        <servlet-name>ExceptionHandlerServlet</servlet-name>
        <servlet-class>com.sun.errorhandler.ExceptionHandler</servlet-class>
        <init-param>
            <param-name>errorHost</param-name>
            <param-value>localhost</param-value>
        </init-param>
        <init-param>
            <param-name>errorPort</param-name>
            <param-value>24444</param-value>
        </init-param>
    </servlet>
    <servlet>
        <servlet-name>ThemeServlet</servlet-name>
        <servlet-class>com.sun.webui.theme.ThemeServlet</servlet-class>
    </servlet>
    <servlet>
        <servlet-name>log4j-init</servlet-name>
        <servlet-class>init.Log4jInit</servlet-class>
        <init-param>
            <param-name>log4j-init-file</param-name>
            <param-value>WEB-INF/classes/log4j.properties</param-value>
        </init-param>

        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.jsf</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>ExceptionHandlerServlet</servlet-name>
        <url-pattern>/error/ExceptionHandler</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>ThemeServlet</servlet-name>
        <url-pattern>/theme/*</url-pattern>
    </servlet-mapping>
    <session-config>
        <session-timeout>
            30
        </session-timeout>
    </session-config>
    <welcome-file-list>
        <welcome-file>forward.jsp</welcome-file>
    </welcome-file-list>
</web-app>
faces-config.xml
<?xml version='1.0' encoding='UTF-8'?>

<faces-config version="1.2"
    xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd">

    <navigation-rule>
        <from-view-id>*</from-view-id>
        <navigation-case>
            <from-outcome>manter_usuario</from-outcome>
            <to-view-id>/jsf-pages/ManterUsuarios.jsp</to-view-id>
            <redirect/>
        </navigation-case>
        <navigation-case>
            <from-outcome>gerar_senha</from-outcome>
            <to-view-id>/jsf-pages/GerarSenha.jsp</to-view-id>
            <redirect/>
        </navigation-case>
        <navigation-case>
            <from-outcome>trocar_senha</from-outcome>
            <to-view-id>/TrocarSenha.jsp</to-view-id>
            <redirect/>
        </navigation-case>
    </navigation-rule>
    
    <managed-bean>
        <managed-bean-name>dynamicMenu</managed-bean-name>
        <managed-bean-class>menu.DynamicMenu</managed-bean-class>
        <managed-bean-scope>application</managed-bean-scope>
    </managed-bean>
    
    <application>
        <view-handler>
            com.sun.facelets.FaceletViewHandler
        </view-handler>
    </application>

</faces-config>
felipeguerra

Qual o web-server?

J

Tomcat…

resolvi:
troquei jsp:forward por

<%

String novaURL = index.jsf;

response.sendRedirect(novaURL);

%>

Obrigado,
Jefferson

Criado 5 de dezembro de 2007
Ultima resposta 7 de jul. de 2009
Respostas 21
Participantes 6