Problemas com acentuação

11 respostas
C

Olá Pessoal,

Estou com o seguinte problema no código abaixo. Quando acesso a página, ela esta com a configuração toda correta na acentuação e caracteres especiais, mas quando abro o p:dialog, para utilizar a função de busca e fechar clicando no commandLink abaixo, os campos p:inputText ficam todos desconfigurados.

<h:commandLink action="#{participanteFace.doConfirmaBuscaCondPag}" onclick="dlgcondpag.hide();"> 
                        <p:graphicImage value="#{pageContext.servletContext.contextPath}/resources/imagens/confirmar.png" width='15' height="15"/>
                        <f:setPropertyActionListener target="#{participanteFace.selectedBuscaCondPag}" value="#{item}"/>                                 
                    </h:commandLink>
<?xml version='1.0' encoding='ISO-8859-1' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns:c="http://java.sun.com/jsp/jstl/core">    
    <ui:composition xmlns:ui="http://java.sun.com/jsf/facelets"
                    xmlns:p="http://primefaces.org/ui"
                    template="#{pageContext.servletContext.contextPath}/templates/padraoTemplate.xhtml"
                    xmlns:f="http://java.sun.com/jsf/core"
                    xmlns:h="http://java.sun.com/jsf/html">
        <ui:define name="conteudo">  
            <f:view contentType="text/html; charset=ISO-8859-1"> 
            <h:body>
                <h:form id="fmEditar"  >
                    <p:panel header="Editar participante - #{participanteFace.selectedBean.nomefantasia}" style="background-color: #dddddd">
                        <table>
                            <tr>
                                <td>
                                    <h:commandLink action="#{participanteFace.doFinishEditParticipante()}" title="Salvar" id="bt_salvar">
                                        <p:graphicImage value="#{pageContext.servletContext.contextPath}/resources/imagens/confirmar.png" width="25" height="25" alt="Salvar" />
                                    </h:commandLink>
                                </td>                            
                                <td>
                                    &nbsp;                                                
                                    <h:commandLink immediate="true" action="#{participanteFace.doListParticipante()}" title="Cancelar" id="bt_cancelar">
                                        <p:graphicImage value="#{pageContext.servletContext.contextPath}/resources/imagens/cancelar.png" width="25" height="25" alt="Cancelar" />
                                    </h:commandLink>
                                </td>
                            </tr>
                        </table>
                        <h2>Dados de identificação</h2>                                
                        <table>
                            <tr>
                                <td>Código</td>
                                <td><h:outputText value="#{participanteFace.selectedBean.codigo}" style=" color: red"/></td>
                                <td>Nome</td>
                                <td><p:inputText  id="idCodigo"  value="#{participanteFace.selectedBean.razaosocial}" size="50"/></td>
                            </tr>
                            <tr>
                                <td>Nome Fantasia</td>
                                <td><p:inputText value="#{participanteFace.selectedBean.nomefantasia}" size="30"/></td>
                            </tr>
                        </table>
                        <h2>Dados gerais</h2>
                        <table>
                            <tr>
                                <td>Cond. de pagamento</td>
                                <td>
                                    <p:selectOneMenu id="idCondPag" style="width: 245px" value="#{participanteFace.selectedBean.condpagamento}">
                                        <f:selectItem itemValue=" " itemLabel=" " />
                                        <f:selectItems var="itemSel" itemLabel="#{itemSel.descricao}"  itemValue="#{itemSel}" value="#{participanteFace.allCondPagamento}"/>
                                        <f:converter converterId="condPagamentoConverter"/>
                                        <f:ajax event="change"   execute="@this"  render=":fmEditar:idCondPag"/>                                        
                                    </p:selectOneMenu>
                                    <p:commandLink onclick="dlgcondpag.show()" title="Buscar">
                                        <p:graphicImage value="#{pageContext.servletContext.contextPath}/resources/imagens/busca.png" width="15" height="15" alt="Buscar" />
                                    </p:commandLink> 
                                </td>
                            </tr>
                        </table>
                        <p:messages/>
                    </p:panel>
                </h:form>
        </h:body>  
        <p:dialog id="idBuscaCondPag" widgetVar="dlgcondpag" 
                header="Busca condição de pagamento" position="center" 
                width="700" height="400">
            <h:form style="color:dodgerblue "    >
                <p:dataTable var="item" value="#{condPagamentoFace.list}" paginator="true" rows="10"                            
                            emptyMessage="Não há registros a exibir"
                            style="font-size: 10px; background-color: lightblue">

                    <f:facet name="header">
                        Lista de condições de pagamento cadastradas
                    </f:facet>
                    <p:column sortBy="#{item.codigo}" filterBy="#{item.codigo}" style=" font-size: 10px" >
                        <f:facet name="header">
                            <h:outputText value="Código"/>
                        </f:facet>
                        <h:outputText value="#{item.codigo}"/>
                    </p:column>
                    <p:column sortBy="#{item.descricao}" filterBy="#{item.descricao}" style=" font-size: 10px">
                        <f:facet name="header">
                            <h:outputText value="Descrição"/>
                        </f:facet>
                        <h:outputText value="#{item.descricao}"/>
                    </p:column>                    
                <p:column style="width:30px">
                        <f:facet name="header">
                            <h:outputText value="Ação" style="font-size: 10px"/>
                        </f:facet>                         
                    <h:commandLink action="#{participanteFace.doConfirmaBuscaCondPag}" onclick="dlgcondpag.hide();"> 
                        <p:graphicImage value="#{pageContext.servletContext.contextPath}/resources/imagens/confirmar.png" width='15' height="15"/>
                        <f:setPropertyActionListener target="#{participanteFace.selectedBuscaCondPag}" value="#{item}"/>                                 
                    </h:commandLink>     
                    </p:column>                    
                </p:dataTable>
            </h:form>
        </p:dialog> 
        </f:view>                 
    </ui:define>
    </ui:composition>
</html>

Grato,

Cristiano Assis

11 Respostas

J

Olá, Cristiano.

Pode ser problema na configuração de mapa de caracteres do teu banco de dados. Como está?

C

Estou utilizando MySql 5, como verifico ?

Grato.

N

Certifique-se que tudo esteja com a mesma codificação (IDE, XHTML, BD).
Eu tive problemas com acentuação e resolvi configurando o Netbeans, servidor, xhtml e MySQL tudo para UTF-8.

J

Imagino que você usa algum front-end, certo? (phpmyadmin, mysql front-end, MySQL Workbench, etc).

Verifique lá se o mapa de caracteres da base e das tabelas está “latin1”.

C

Pois é nilsonuehara,

Antes eu utilizava UTF-8, mas comecei a ter alguns problemas e encontrei algumas literaturas orientando utilizar o ISO-8859-1 que é mais atual. E agora quanto tento voltar para UTF-8, as páginas ficam todas desconfiguradas. Ai fico na dúvida de qual codificação utilizar. Aproveitando, como verifico qual a codificação que esta o meu netbeans ?

Grato.

J

Cristiano, isso de mapa de caracteres DO ARQUIVO não importa muito não. A não ser em geradores de código como Rails, Grails e Play!. Todavia sempre recomendo usar o ISO-8859-1 mesmo.

O mais importante mesmo é como você configurou nos cabeçalhos dos XHTML (ou JSP se for o caso) e nas tag e no banco de dados.

R

Se não for incomodo, tenta trabalhar com accent tags e ve se ajuda.

http://www.javascripter.net/faq/accentedcharacters.htm

N

cristianoassis:
Pois é nilsonuehara,
como verifico qual a codificação que esta o meu netbeans ?

Clique com o direito no projeto > propriedades > código fonte

C

Obrigado jyoshiriro, vou revisar tudo e te aviso se consegui.

Grato.

C

Revisei todo o código e as configurações, alterei tudo para ISO-8859-1, mas o problema continua. Antes de abrir o “p:dialog” o campo esta assim ARRUELA DE PRESSÃO M10 após eu confirmar a pesquisa, fica assim ARRUELA DE PRESSÃ?O M10

:cry:

C

Resolvido Pessoal,

Substituindo

<h:commandLink action="#{itemFace.doConfirmaBuscaSubCat}" onclick="dlgsubcat.hide();">

por

<p:commandLink action="#{itemFace.doConfirmaBuscaSubCat}"  onclick="dlgsubcat.hide();" update=":fmEditar:idSubcat" >

Obrigado!

Criado 26 de setembro de 2012
Ultima resposta 26 de set. de 2012
Respostas 11
Participantes 4