JSF 2.0 passagem de Parametros + namedquery

Bom dia,

Tenho o seguinte .xhtml

<p:inputText 
  id="finalSorteio" 
  required="true"
  requiredMessage="Preencha o final do concurso"/>
<p:message for="finalSorteio"/>
<p:commandButton 
  update="messages"
  action="#{resultadoMB.calcularPorFinal(finalSorteio.value)}"
  value="Calcular"
  ajax="false"/>   

e o seguinte MB

public String calcularPorFinal(String finalSorteio){
 // calculos
}

eis a questão:

preciso passar o texto que esta no input text de id “finalSorteio” mas como esta ali ele até chama o método mas no Debug percebi que e passa uma String vazia.

precisava tambem fazer uma @NamedQuery para selecionar no banco segundo o final algo como EndsWith não achei nada parecido com o que eu quero e ja fiz algumas tentaivas,
derrepente seja até porque o String finalSorteio esta chegando vazio.

mas então resolvi me virar como eu sei peguei a List do @NamedQuery que eu utilizo no calculo geral e “filtrei” ela algo do tipo

for (int i = 0; i < listaResultados.size(); i++) {
  if(!String.valueOf(listaResultados.get(i).getConcurso()).endsWith(finalSorteio){
  listaResultados.remove(i);
}

sei que é uma gambi e não gosto disso.

então vamos as perguntas.

alguem sabe se tem como utlizar o ENDSWITH na @NamedQuery
e alguem sabe o porque não está passando o parametro no inputText ?

Att.

você sabe a finalidade de se usar uma @NamedQuery?

essa sua consulta é executada constantemente? se sim
não vejo pq usar @NamedQuery para isso.

ai vc vai cai na primeira pergunta que eu te fiz

Creio que seja para fazer consultas estáticas e pré definidas.

Preciso carregar um List filtrado primeiramente porque exibo ele na tela e depois utilizo uma Classe especifica que fiz para realizar os cálculos,
esta Classe recebe um List no construtor e armazena os valores dos cálculos que eu exibo juntamente com a seleção.

[quote]essa sua consulta é executada constantemente? se sim
não vejo pq usar @NamedQuery para isso.[/quote]

O usuário fará a consulta uma unica vez e trabalhará com esses resultados até que termine.

o que recomenda ?

ahan

esse tipo de calculo não vai sofrer alteração conforme o tempo eu digo na formula?

eu não usaria @NamedQuery nesse caso

não consigo ver um pq…entendeu

não, o calculo não muda.

mesmo que eu trabalhe com um List filtrado “na mão” sem fazer consulta ainda não consegui passar o valor do inputText para meu MB.

da algum erro?

se sim poste o log ai

não da erro nenhum simplesmente não passa nada quando debugo vejo que a string do método esta “vazia” tipo “”

<p:commandButton update="messages" action="#{resultadoMB.calcularPorFinal(finalSorteio.value)}" value="Calcular" ajax="false"/>