JSF 1.2 - Problema

8 respostas
marcelohonsa

Estava utilizando o JSF 1.1 sem problemas, agora estou mexendo no 1.2, mas estou com um problema aqu que não estou conseguindo solucionar.

o Código da Minha página index.jsp é o seguinte:

<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.0" 
          xmlns:f="http://java.sun.com/jsf/core" 
          xmlns:h="http://java.sun.com/jsf/html"
          xmlns:t="http://myfaces.apache.org/tomahawk"> 
<jsp:text> 
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta>
<title>.:: DATASHEARCH ::.</title>
<link href="./scripts/data.css" rel="stylesheet" type="text/css"></link>
<script type="text/javascript" src="./scripts/scripts.js"></script>
</head>
<f:view>
<h:form>
<body>
<table width="722" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td> </td>
    <td> </td>
    <td> </td>
  </tr>
  <tr>
    <td><h:graphicImage value="img/topo01.gif" width="204" height="100"></h:graphicImage></td>
    <td><h:graphicImage value="img/topo02.gif" width="500" height="100"></h:graphicImage></td>
    <td><h:graphicImage value="img/topo03.gif" width="18" height="100"></h:graphicImage></td>
  </tr>
</table>
<table width="722" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td background="img/barrameuback.gif"><h:graphicImage value="img/nada.gif" width="10" height="23"></h:graphicImage></td>
  </tr>
</table>
<table width="722" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td background="img/fundoback.jpg"><table width="722" border="0" cellspacing="0" cellpadding="0">
        <tr>
          <td width="10"><h:graphicImage value="img/nada.gif" width="10" height="260"></h:graphicImage></td>
          <td><table width="702" border="0" cellspacing="0" cellpadding="0">
            <tr>
              <td><h:graphicImage value="img/nada.gif" width="22" height="260"></h:graphicImage></td>
              <td valign="top" bgcolor="#F8F8F8"><h:graphicImage value="img/nada.gif" width="156" height="50"></h:graphicImage>
              <br>
                <table width="156" border="0" cellspacing="2" cellpadding="0">
                  <tr>
                    <td><h:graphicImage value="img/login.gif" width="61" height="12"></h:graphicImage></td>
                  </tr>
                  <tr>
                    <td><div align="center">
					<h:inputText id="nome" styleClass="campobusca" size="23" value="#{autenticacao.nome}" />
                    </div></td>
                  </tr>
                  <tr>
                    <td><h:graphicImage value="img/senha.gif" width="12" height="61"></h:graphicImage></td>
                  </tr>
                  <tr>
                    <td><div align="center">
					<h:inputSecret id="senha" styleClass="campobusca" size="23" value="#{autenticacao.senha}" />
                    </div></td>
                  </tr>
                  <tr>
                    <td>            
                    <h:commandLink action="#{autenticacao.getAutenticacao}">
	                     <t:graphicImage id="imagedetalhe" border="0" value="img/ok.gif" width="125" height="12" />
                    </h:commandLink>
                    </td>
                  </tr>
                </table>


                <br></td>
              <td valign="middle"><h:graphicImage value="img/nada.gif" width="524" height="1"></h:graphicImage><br>
                <table width="400" border="0" align="center" cellpadding="0" cellspacing="0">
                  <tr>
                    <td class="textocinza"></td>
                  </tr>
                </table></td>
            </tr>
          </table></td>
          <td width="10"><h:graphicImage value="img/nada.gif" width="20" height="260"></h:graphicImage></td>
        </tr>
      </table>      </td>
  </tr>
</table>
<table width="722" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td><h:graphicImage value="img/rodape1.gif" width="722" height="69"></h:graphicImage></td>
  </tr>
</table>
</body>
</h:form>
</f:view>
</html>
</jsp:text> 
</jsp:root>

E este é o log de erro :

27/02/2007 09:44:31 com.sun.facelets.FaceletViewHandler handleRenderException
SEVERE: Error Rendering View[/index.jsp]
com.sun.facelets.FaceletException: Error Parsing /index.jsp: Error Traced[line: 70] The element type "br" must be terminated by the matching end-tag "</br>".
	at com.sun.facelets.compiler.SAXCompiler.doCompile(SAXCompiler.java:234)
	at com.sun.facelets.compiler.Compiler.compile(Compiler.java:104)
	at com.sun.facelets.impl.DefaultFaceletFactory.createFacelet(DefaultFaceletFactory.java:192)
	at com.sun.facelets.impl.DefaultFaceletFactory.getFacelet(DefaultFaceletFactory.java:141)
	at com.sun.facelets.impl.DefaultFaceletFactory.getFacelet(DefaultFaceletFactory.java:93)
	at com.sun.facelets.FaceletViewHandler.buildView(FaceletViewHandler.java:503)
	at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:553)
	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
	at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:248)
	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
	at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
	at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
	at java.lang.Thread.run(Unknown Source)
27/02/2007 09:44:33 com.sun.facelets.FaceletViewHandler handleRenderException
SEVERE: Error Rendering View[/index.jsp]
com.sun.facelets.FaceletException: Error Parsing /index.jsp: Error Traced[line: 70] The element type "br" must be terminated by the matching end-tag "</br>".
	at com.sun.facelets.compiler.SAXCompiler.doCompile(SAXCompiler.java:234)
	at com.sun.facelets.compiler.Compiler.compile(Compiler.java:104)
	at com.sun.facelets.impl.DefaultFaceletFactory.createFacelet(DefaultFaceletFactory.java:192)
	at com.sun.facelets.impl.DefaultFaceletFactory.getFacelet(DefaultFaceletFactory.java:141)
	at com.sun.facelets.impl.DefaultFaceletFactory.getFacelet(DefaultFaceletFactory.java:93)
	at com.sun.facelets.FaceletViewHandler.buildView(FaceletViewHandler.java:503)
	at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:553)
	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
	at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:248)
	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
	at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
	at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
	at java.lang.Thread.run(Unknown Source)
27/02/2007 09:44:33 com.sun.facelets.FaceletViewHandler handleRenderException
SEVERE: Error Rendering View[/index.jsp]
com.sun.facelets.FaceletException: Error Parsing /index.jsp: Error Traced[line: 70] The element type "br" must be terminated by the matching end-tag "</br>".
	at com.sun.facelets.compiler.SAXCompiler.doCompile(SAXCompiler.java:234)
	at com.sun.facelets.compiler.Compiler.compile(Compiler.java:104)
	at com.sun.facelets.impl.DefaultFaceletFactory.createFacelet(DefaultFaceletFactory.java:192)
	at com.sun.facelets.impl.DefaultFaceletFactory.getFacelet(DefaultFaceletFactory.java:141)
	at com.sun.facelets.impl.DefaultFaceletFactory.getFacelet(DefaultFaceletFactory.java:93)
	at com.sun.facelets.FaceletViewHandler.buildView(FaceletViewHandler.java:503)
	at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:553)
	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
	at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:248)
	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
	at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
	at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
	at java.lang.Thread.run(Unknown Source)
27/02/2007 09:44:33 com.sun.facelets.FaceletViewHandler handleRenderException
SEVERE: Error Rendering View[/index.jsp]
com.sun.facelets.FaceletException: Error Parsing /index.jsp: Error Traced[line: 70] The element type "br" must be terminated by the matching end-tag "</br>".
	at com.sun.facelets.compiler.SAXCompiler.doCompile(SAXCompiler.java:234)
	at com.sun.facelets.compiler.Compiler.compile(Compiler.java:104)
	at com.sun.facelets.impl.DefaultFaceletFactory.createFacelet(DefaultFaceletFactory.java:192)
	at com.sun.facelets.impl.DefaultFaceletFactory.getFacelet(DefaultFaceletFactory.java:141)
	at com.sun.facelets.impl.DefaultFaceletFactory.getFacelet(DefaultFaceletFactory.java:93)
	at com.sun.facelets.FaceletViewHandler.buildView(FaceletViewHandler.java:503)
	at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:553)
	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
	at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:248)
	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
	at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
	at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
	at java.lang.Thread.run(Unknown Source)

Algueém sabe o que pode ser o problema?

8 Respostas

nbluis

Que bizzarro…

E se tu colocar as tuas tags br assim?

&lt br/ &gt
urubatan

o esquema não é com JSF 1.2 é o facelets que exige que seja gerado um XML válido

e tu ainda esta usando JSP Document que também exige que seja usado um XML válido

então, todas as tags tem que ser fechadas, inclusive o BR

então quando tu quiser escrever
tem que escrever

marcelohonsa

Beleza, resolvido…

Tenho outra pergunta, existe alguma vantagem em escrever os arquivos como xhtml ou invés de JSP?

Outra dúvida, quando o webdesigner nos envia os arquivos em html puro, geralmente tags como
, , etc, não são fechadas…
Essa convenção que o Facelets utiliza não seria uma dificuldade a mais para a manutenção do código devido a isso?

Se sim, alguem sabe alguma maneira de diminuir ou acabar com essa dificuldade?

nbluis

Não entendi o xhtml ou jsp. xhtml é o tipo de documento, que faz com que o browser entenda seu código no formato dele.

o web desginer é o cara que tinha que estar mais preocupado com essas tags pela padronização de código, validadores de código te indicam sobre esses problemas, e ferramentas de web design também ajudam com isso…

marcelohonsa

Seguinte, perguntei se existe alguma diferença entre você escrever seus arquivos como por exemplo index.jsp ou index.xhtml.

Sobre os webdesigner, pelo menos a maioria que conheço, não se preocupa com fechamento de tags html, por isso a pergunta sobre a necessidade dessa padronização.

Com relação ao postagem anterior, ja resolvi o problema, apenas adicionei a tag <?xml version="1.0" encoding="iso-8859-1"?> no inicio dos arquivos para definir o encoding utilizado. A Partir daí, palavras com acento podem ser utilizadas sem problemas…

nbluis

blza…
cara a extensão dos arquivos é configuravel no seu servidor… nao faz diferença…

e sim… as tags devem ser fechadas, tal como um XML…

bebad

Xml é conhecida por ser uma padronização, que deixa mais veloz a interpretação do browsver!

CARA VC COMECA UMA CLASSE COM JAVA SEM FEXAR AS CHAVES ?

CLASS TESTE {

oq é que acontece ?

então agora pensa, se vc fizer seus files para o browsver (IE que eh uma anda quadrada) todo toscamente, abrindo sem fexar, colocando coisas erradas oque tende a acontecer ???

e agora se vc criar um padrao (xHtml, Xml) com tags padronizadas no wc3, sempre seguindo a risca, oque tende a acontecer??

acho que vc mesmo se respondeeu. :wink:

see ya.

Tava olhando seu codigo, e mas ta toskinho eim cara…

usa o NetBeans.
abrrass

marcelohonsa

Blz, valeu pela opinião…

Boto fé que seus códigos são melhores do que o do Deitel…

Criado 27 de fevereiro de 2007
Ultima resposta 8 de mar. de 2007
Respostas 8
Participantes 4