Formatar campo dinamicamente no JSF

Boa Tarde pessoal.

Tenho um campo chamado número, ele tem 20 posições mas quero deixar o usuário só dar input em caracteres numéricos. Pesquisei Jquery mas se eu defino o tamanho da máscara o usuário é obrigado a por aquele número.
Existe algum meio de usar o Jquery dinamicamente, se o usuário quiser digitar 4 caracteres ele so aceita numérico, se ele digitar 10 caracteres numéricos só aceitara numerico para esse campo.;

Meu código em JSF para CEP funciona, pois CEP tem quantidade de números fixos, já um campo de número de casa não precisa ter 5 números, pode ter 10 100 1000 e por ai vai

<h:inputText 	id="inCEP"
							value="#{DenunciaView.denuncia.denunEndereco.endCep}"
							disabled="#{DenunciaView.disableCep}" size="8" maxlength="8"
							required="true" 
							requiredMessage="Campo CEP obrigatório">
				<rich:jQuery 	selector="inCEP" 
								query="mask(99999-999)"
								timing="onload" />
				<f:converter 	converterId="converteCep"></f:converter>
				<a4j:support 	reRender="panelGroupEndereco" 
								event="onblur"
								action="#{DenunciaView.buscaPorCep}" 
								ajaxSingle="true"
								focus="inNumero">
				</a4j:support>
			</h:inputText>

Agora como fazer para esse campo, de aceitar somente caracteres numéricos mas sem definir mascara ou quantidade de dígitos:

<h:outputLabel id="outNumero" value="Número"> </h:outputLabel> <h:inputText id="inNumero" value="#{DenunciaView.denuncia.denunEndereco.endNumero}" disabled="#{DenunciaView.disableNumero}" required="true" requiredMessage="Campo Número obrigatório"> </h:inputText>

Valeu ae, começei a trampar com JAVA WEB e só sabia desktop e to me quebrando todo, mas to aprendendo pacas XD

De uma lida neste post acho que pode te ajudar.

O JSF já faz a validação automática se o campo for numerico no lado server, isso no submit do formulário, agora só permitir digitar numeros acho que teria de ser com javascript mesmo … montar uma função que só aceita determinado intervalo de caracteres …

Pessoal estou com uma dificuldade, tenho q entregar isso e arrumo um problema e me aparece outro ja to ficando indignado.

a tag de converter pra essa situação funciona. Para a outra nao.

FUNCIONA

<h:inputText 	id="inNumero"
							value="#{DenunciaView.denuncia.denunEndereco.endNumero}"
							disabled="#{DenunciaView.disableNumero}"
							required="true"
							requiredMessage="Campo Número obrigatório"
							converterMessage="Digite apenas número neste campo">
				<f:convertNumber  integerOnly="true"/>
			</h:inputText>

NAO FUNCIONA

			<h:inputText 	id="inCEP"
							value="#{DenunciaView.denuncia.denunEndereco.endCep}"
							disabled="#{DenunciaView.disableCep}" size="8" maxlength="8"
							required="true" 
							requiredMessage="Campo CEP obrigatório"
							converterMessage="Digite apenas número neste campo">
				<rich:jQuery 	selector="inCEP" 
								query="mask(99999-999)"
								timing="onload" />
				<f:converter 	converterId="converteCep"></f:converter>
				<f:convertNumber integerOnly="true"/>
				<a4j:support 	reRender="panelGroupEndereco" 
								event="onblur"
								action="#{DenunciaView.buscaPorCep}" 
								ajaxSingle="true"
								focus="inNumero">
				</a4j:support>
			</h:inputText>

alguem sabe pq o <f:convertNumber integerOnly=“true”/> funciona pra um e pra outro nao?

Só tem topico sem fechar no forum ou é impressão minha ?

enfim.

Alguem sabe uma forma facil com JSF 2.2 e Prime uma forma de mascarar o input depois que sai do componente?

tipo onblur…

vlw…

(Obs: se conseguir postarei o resultado…)

&lt;p:inputText id="tx_yourInput" value="#{yourController.valueOfNumber}"&gt; &lt;f:convertNumber pattern="#,##0.00" /&gt; &lt;p:ajax event="blur" update="tx_yourInput" partialSubmit="true"/&gt; &lt;/p:inputText&gt;

pronto, ajudando a melhorar o forum…
uma resposta…