Duvida Com InputMask (resolvido)

boa tarde…
eu estou usando primefaces pela primeira vez por isso estou apanhando um pouco…rs
o meu promebla desta vez e o seguinte:
eu tenho um campo long onde guardo vários tipos de informações entre elas pode ser uma data;

ex:

[code]private long Campo;

public long getCampo() {
return Campo;
}

public void setCampo(long campo) {
this.Campo = campo;
}
[/code]

em um .xhtml
quando esta campo precisa ser preenchido por uma data eu utilizo o seguinte:

<p:inputMask value={"#controle.Campo"}
mask=“99/99/9999” />

como faco para pegar apenas os números nesta data… pois o jsf não valida
da a mensagem: ‘14/05/1967’ deve ser um número formado por um ou mais dígito
onde o 14/05/1967 e o valor digitado

O campo deve ser uma data e não um long

Aqui uso assim

<p:inputMask id="data" mask="99/99/9999"
									converterMessage="Formato de data inválido."
									value="#{mb.dtSolicitacao}">
									<f:convertDateTime pattern="dd/MM/yyyy" type="date"
										dateStyle="short" timeZone="GMT-3" />
								</p:inputMask>

rockcentauro, eu sei que deve ser uma data
mas e um problema que eu tenho pra resolver…
e tem exatamente esta situacao…
eu poderia criar no managedbean ate
uma maneira de tratar isso…
eu quero achar um geito de usar apenas a mascara
e poder tratar o campo sem as barras… entendeu…
se vc tiver uma ideia eu te agradeco…

Dá pra usar um converter…


@FacesConverter("maskConverter")
public class MaskConverter implements Converter {

	@Override
	public Object getAsObject(FacesContext arg0, UIComponent arg1, String arg2) {
		
		if (arg2 != null && !arg2.isEmpty()) {
			
			return arg2.replaceAll("\\.|/|-|\\(|\\)|\\s", "");
		}
		
		return null;
	}	

	@Override
	public String getAsString(FacesContext arg0, UIComponent arg1, Object arg2) {
		
		if (arg2 != null && arg2 instanceof String) {
			return (String) arg2;
		}
		
		return null;
	}

}

Mas ainda não entendo o motivo deste campo ser um long…

rockcentauro, te agradeco… vou testar…

centaurock muito obrigado…
deu certo