JSF - #{...} not allowed in a template text body

8 respostas
M

Colegas,

Estou seguindo um tutorial de facelets porém recebo esse erro:
[color=red]#{...} not allowed in a template text body[/color]
na linha [color=green]ICEfaces Facelets Tutorial - #{pageTitle}
[/color]

Onde está o meu erro?

Muito obrigado,

PS: Estou usando o netbeans e icefaces

Marques
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:ice="http://www.icesoft.com/icefaces/component">

<ice:outputDeclaration doctypeRoot="HTML"
                       doctypePublic="-//W3C//DTD XHTML 1.0 Strict//EN"
                       doctypeSystem="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" />
<head>
    <!-- page title param passed in by param -->
    <title>ICEfaces Facelets Tutorial - #{pageTitle}</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <meta http-equiv="Content-Language" content="en" />
    <meta http-equiv="imagetoolbar" content="no" />
    <meta name="keywords" content="" />
    <meta name="description" content="" />
    <link href="css/default.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div class="page">
    <div class="header">
        <ui:include src="/WEB-INF/inc-content/header.jspx"/>
    </div>
    <div class="navigation">
        <ui:include src="/WEB-INF/inc-content/navigation.jspx"/>
    </div>
    <div class="content">
        <ui:insert name="content">
            Default Content
        </ui:insert>
    </div>
    <div class="footer">
        <ui:include src="/WEB-INF/inc-content/footer.jspx"/>
    </div>   
</div>
</body>
</html>

8 Respostas

S

Olá Marques

Tente colocar assim

ICEfaces Facelets Tutorial - "#{pageTitle}"
M

Prezado shyricosai,

Já tenteí porém o erro continua…

[]s,

Marques

R

cara… tem que estar dentro de <f:view> </f:view>

beleza?

D

Eu tive o mesmo problema. Vou postar a solução encontrada no meu caso.

O problema estava no ‘#’ da linha 11 (ICEfaces Facelets Tutorial - #{pageTitle} )
Utilizar o sustenido (#) somente dentro de tags JSF, se for fora como é o caso dele, utilizar o $ (dolar) assim: ${pageTitle}

P

E quando o problema persiste mesmo quando o # esta dentro da tag do JSF? Netbeans aponta a mensagem na linha 18

<%@ page contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="f" uri="http://java.sun.com/jsf/core"%>
<%@ taglib prefix="h" uri="http://java.sun.com/jsf/html"%>
<html>
    <head>
        <title>Consulta de contas- ${pageTitle}</title>
        <link rel="stylesheet" type="text/css" href="../CSS/estilo.css" />
    </head>
    <body>
        <f:view>
            <h:form id="frm">
                <h1><h:outputText value="Consulta de contas" /></h1>

                <h:messages layout="table" showSummary="true" showDetail="false"
                            globalOnly="true" styleClass="msgErro" infoClass="msgInfo"
                            style="font-weight: bold" />

            <rich:dataTable value="#{consultaContaBean.contas}" var="item" width="790px">

                <rich:column sortBy="#{item.tipo}" width="20px" style="text-align: center">
                    <f:facet name="header">
                        <h:outputText value="Tipo"/>
                    </f:facet>
                    <h:graphicImage value="/imagens/receita.png" title="Conta a receber" rendered="#{item.tipo eq 'RECEITA'}"/>
                    <h:graphicImage value="/imagens/despesa.png" title="Conta a pagar" rendered="#{item.tipo eq 'DESPESA'}"/>
                </rich:column>

                <rich:column sortBy="#{item.pessoa.nome}" width="200px">
                    <f:facet name="header">
                        <h:outputText value="Pessoa"/>
                    </f:facet>
                    <h:outputText value="#{item.pessoa.nome}"/>
                </rich:column>

                <rich:column sortBy="#{item.descricao}">
                    <f:facet name="header">
                        <h:outputText value="Descrição"/>
                    </f:facet>
                    <h:outputText value="#{item.descricao}"/>
                </rich:column>

                <rich:column sortBy="#{item.valor}" width="100px" style="text-align: center">
                    <f:facet name="header">
                        <h:outputText value="Valor"/>
                    </f:facet>
                    <h:outputText value="#{item.valor}" style="color: #{item.tipo eq 'RECEITA' ? 'blue' : 'red'}">
                        <f:convertNumber minFractionDigits="2" currencyCode="BRL" type="currency"/>
                    </h:outputText>
                </rich:column>

                <rich:column sortBy="#{item.dataVencimento}" width="100px" style="text-align: center">
                    <f:facet name="header">
                        <h:outputText value="Vencimento"/>
                    </f:facet>
                    <h:outputText value="#{item.dataVencimento}">
                        <f:convertDateTime pattern="dd/MM/yyyy"/>
                    </h:outputText>
                </rich:column>

                <rich:column width="80px" style="text-align: center">
                    <f:facet name="header">
                        <h:outputText value="Aberta"/>
                    </f:facet>
                    <h:outputText value="#{item.dataBaixa == null ? 'Sim' : 'Não'}"/>
                </rich:column>

                <rich:column width="40px" style="text-align: center">
                    <f:facet name="header">
                        <h:outputText value="Ações"/>
                    </f:facet>
                    <h:commandLink action="#{consultaContaBean.excluir}">
                        <f:setPropertyActionListener value="#{item}" target="#{consultaContaBean.contaExclusao}"/>
                        <h:graphicImage value="/imagens/excluir.png" title="Excluir" styleClass="imagemLink"/>
                    </h:commandLink>
                    <h:commandLink action="cadastroConta">
                        <f:setPropertyActionListener value="#{item}" target="#{cadastroContaBean.contaEdicao}"/>
                        <h:graphicImage value="/imagens/editar.png" title="Editar" styleClass="imagemLink"/>
                    </h:commandLink>
                </rich:column>

            </rich:dataTable>

            <br />

            <h:commandLink action="#{cadastroContaBean.inicializar}" styleClass="linkComEspaco">
                <h:outputText value="Nova conta" />
            </h:commandLink>
            <h:commandLink action="menu">
                <h:outputText value="Menu do sistema" />
            </h:commandLink>
        </h:form>
    </f:view>
</body>
</html>
D

Mostra o erro que fica mais facil de ajudar =D
E se puder mostra os teus beans e classe controladora

T

O meu também dá o mesmo problema, tento setar os value's dos componentes à serem renderizados. Segue o meu código!

<?xml version="1.0" encoding="ISO-8859-1"?>

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:p="http://primefaces.prime.com.tr/ui"
      xmlns:f="http://java.sun.com/jsf/core">
    <f:view>
        <h:head>
            <title>Restaurar Documentos</title>
            
        </h:head>
        <h:body>
            <h:form>
                <p:panel style="font-size:12px;" >

                    Contrato: <h:outputText value ="4609" />
                    <img src= "" width="20" hspace="550" alt="">
                    <p:commandButton id="restaurar" value="Restaurar Documento" action="#{Manager.confirma}" />
                    <img src= "" width="20" hspace="10" alt="">
                    <p:commandButton id="atualizar" value="Atualizar Tela" />

                </p:panel>

                <body bgcolor="silver">
                    <p>
                        <b>Escolha o seu tema: <p:themeSwitcher height="500" /><p>


                            <p:panel style="font-size:12px;" header="Filtros de Busca - Documentos Excluidos"
                                     toggleable="true" toggleSpeed="10" >

                                <h:outputLabel value="Buscar: " />
                                <h:inputText tabindex="0" size="65" id="filtro" value="#{Manager2.text}">
                                </h:inputText>

                                <img src= "" width="20" hspace="30" alt="  " >
                                <%--  --%>
                                Unidade de Projeto:
                                <h:selectOneMenu id="unidade" value="#{Manager2.unidadeSelecionada}" tabindex="1" >
                                    <f:selectItems value="#{Manager2.listaUnidade}" />
                                </h:selectOneMenu> <p>

                                    Disciplina:
                                <h:selectOneMenu id="disciplina" value="#{Manager2.disciplinaSelecionada}" tabindex="2">
                                    <f:selectItems value="#{Manager2.listaDisciplina}" />
                                </h:selectOneMenu> <img src= "" width="20" hspace="30" alt="  ">

                                Status:
                                <h:selectOneMenu id="status" value="#{Manager2.statusSelecionado}" tabindex="3">
                                    <f:selectItems value="#{Manager2.listaStatus}"  />
                                </h:selectOneMenu> <img src= "" width="20" hspace="30" alt="  ">

                                Tipo de Documento:
                                <h:selectOneMenu id="tipoDoc" value="#{Manager2.tipoDocSelecionado}" tabindex="4" >
                                    <f:selectItems value="#{Manager2.listaTipoDocs}" />
                                </h:selectOneMenu> <img src= "" width="20" hspace="30" alt="  ">

                                <p:commandButton id="cmdFiltrar" value="Filtrar" action="#{Manager2.smartFilter}"
                                                 update="DocExc" />
                            </p:panel>

                            <p:dataTable var="doc" value="#{Manager2.listaDocumentosExcluidos}" id="DocExc"
                                         selection="#{Manager2.selectedRow}" selectionMode="single"
                                         rows="10" paginator="true" paginatorPosition="top" dynamic="false"
                                         style="text-align:center;font-size:12px;" binding="#{Manager2.table}"
                                         emptyMessage="Nenhum documento encontrado neste contexto"
                                         onselectStart="" update="DocExc"  >

                                <p:column sortBy="#{doc.nDoc}" id="ColunaNDoc"
                                          headerText="No. Projectus" > <font size="1">
                                        <h:outputText value = "#{doc.nDoc}" />
                                </p:column>

                                <p:column sortBy="#{doc.nCliente}" id="ColunaNCliente"
                                          headerText="No. Cliente"> <font size="1">
                                        <h:outputText value = "#{doc.nCliente}" />
                                </p:column>

                                <p:column sortBy="#{doc.status}" id="colunaStatus"
                                          headerText="Status"> <font size="1">
                                        <h:outputText value = "#{doc.status}" />
                                </p:column>

                                <p:column sortBy="#{doc.titulo}" id="colunaTitulo"
                                          headerText="Titulo"> <font size="1">
                                        <h:outputText value = "#{doc.titulo}" />
                                </p:column>

                                <p:column sortBy="#{doc.tipoDocumento}" id="colunaTipoDoc"
                                          headerText="Tipo de Documento"><font size="1">
                                        <h:outputText value = "#{doc.tipoDocumento}" />
                                </p:column>

                                <p:column sortBy="#{doc.disciplina}" id="colunaDisciplina"
                                          headerText="Disciplina"><font size="1">
                                        <h:outputText value = "#{doc.disciplina}" />
                                </p:column>

                                <p:column sortBy="#{doc.unidadeProjeto}" id="colunaUnidadeProjeto"
                                          headerText="Unidade de Projeto"><font size="1">
                                        <h:outputText value = "#{doc.unidadeProjeto}" />
                                </p:column>

                                <p:column sortBy="#{doc.eap}" id="colunaEap"
                                          headerText="EAP"><font size="1">
                                        <h:outputText value = "#{doc.eap}" />
                                </p:column>

                            </p:dataTable>
            </h:form>

        </h:body>
    </f:view>
</html>
D

cola a mensagem de erro ai…

Criado 1 de junho de 2008
Ultima resposta 17 de dez. de 2010
Respostas 8
Participantes 6