Richfaces com jQuery não funciona!

2 respostas
R

Galera do guj, o problema é o seguinte, to começando a fazer um formulario de cadastro e me vi obrigado a utilizar mascaras, ai lendo um pouco pela net encontrei o tal do richfaces, que pelo que eu entendi vinha já com o jquery, criei um projeto de teste, entretanto a parte do rich:jquery num funciona nem a pau da um erro de javascript que pelo que me parece é classe não encontrada. será que alguém poderia me dar um help?

Obs: no html gerado esse caminho do jquery não existia ele parava em WebApplication2 não tinha “faces/a4j_3_2_1-SNAPSHOTorg” ai o resto tinha.

estava em outro lugar

WebApplication2\loader\org\richfaces\renderkit\html\scripts\jquery

página com o richfaces
pelos exemplos que eu vi era só fazer isso que ele pegava a mascara, com o a4j:support funciono no meu teste

<%@page contentType="text/html"%>
<%@page pageEncoding="UTF-8"%>

<%@taglib uri="http://richfaces.org/a4j" prefix="a4j"%>
<%@taglib uri="http://richfaces.org/rich" prefix="rich"%>

<%@taglib prefix="f" uri="http://java.sun.com/jsf/core"%>
<%@taglib prefix="h" uri="http://java.sun.com/jsf/html"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<%--
    This file is an entry point for JavaServer Faces application.
--%>

<f:view>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>
        <h1><h:outputText value="JavaServer Faces" /></h1>
            
            <h:form id="formulario">
                <h:outputText value="FONE"/>
                <h:inputText id="fone" value="">
                    <rich:jQuery query="mask('9999-9999')" selector="#fone"/>
                </h:inputText>
            </h:form>

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

Erro!

Valeu galera!

2 Respostas

T

O que está acontecendo é que vc não importou para o seu projeto as classe javascript que faz a máscara funcionar!
O que eu fiz aqui foi o seguinte:
Criei uma pasta chamada js dentro do view(Seam-gen) ou se vc estiver usando um projeto simples jsf ou spring é no local onde ficam as suas páginas.
Baixei a classe javascript que faz a conversão.
O nome da classe é jquery.maskedinput.js - vc deve achar esta classe no site da jquery.

O que vc tem que fazer na página alem do que vc já fez é adicionar:

<a4j:loadScript src="/js/jquery.maskedinput.js"></a4j:loadScript>

Isso vai importar esta classe para a sua página e vc vai conseguir usá-la com o jquery!

Falou!
Qualquer dúvida pode postar!

R

Thiago valeu heim, matou na mosca, a única diferença é que coloquei em vez de colocar dentro do a4j:loadScript</a4j:loadScript>.

Valeu cara.

Criado 4 de fevereiro de 2009
Ultima resposta 20 de fev. de 2009
Respostas 2
Participantes 2