Spring 2 Setta propriedade Long como String! Como?!

1 resposta
F

Pessoal,

Tenho uma aplicação onde tenho uma classe

public class Pessoa extends FBaseEntity<Long>{
//propriedades de pessoa
//getter & setters
}

onde

public abstract class FBaseEntity<T>{
   priavte T id;

   //getter & setters
}

Quando a propriedade pessoa.id da minha action abaixo vem do JSP, vem como uma String!!

public class MyAction {

        Pessoa pessoa;
        //getters & setters

        @Action(value="entrar", results={
			@Result(location="/paginas/menu/menu.jsp", name="OK")
	})
        public String entrar() throws Exception{
                  return "OK";
        }  
}

JSP:

<input name="pessoa.id" type="text"/>
<input value="submit" type="submit"/>

Por que o Struts 2 retorna minha propriedade pessoa.id como String (Isso só acontece com essa propriedade que é heradada de outra classe como Generics)? E tem como resolver isso para o Struts ler como Long?

Grato
Filipe Pacheco

1 Resposta

F

Se um dia algume passar por essa eu achei a resposta:

Eu estava utilizando o ongl 2.6.1.

Esse é um BUG até a versão 2.7.2 da ongl, porém há um JAR onde esse bug está corrigido:

http://opencomponentry.com/repository/m2-snapshot-repo/ognl/ognl/2.7.3-SNAPSHOT/

Aqui funcionou, agora o Struts 2 converte corretamente Generics.

Grato,

Criado 1 de setembro de 2011
Ultima resposta 1 de set. de 2011
Respostas 1
Participantes 1