Dando um resultado json vazio ao executar struts 2 classe de ação
Estou tentando recuperar dados do banco de dados usando o ORM de hibernação e obter o resultado como json usando o Struts2. Tudo funciona até a recuperação de dados do banco de dados, mas para o resultado json, recebo apenas{}
.
Eu acho que fiz algo errado com minha codificação. Mas precisa de ajuda para descobrir.
Aqui está a minha classe Action:
@ParentPackage("json-default")
public class SocialIconsAction extends ActionSupport {
private List<TiendayaCurrencies> _currency;
public List<TiendayaCurrencies> getCurrency() {
return _currency;
}
public void setCurrency(List<TiendayaCurrencies> _currency) {
this._currency = _currency;
}
@Action(value = "currencies", results = {
@Result(name = "success", type = "json", params = {"includeProperties",
"_currency\\[\\d+\\]\\..*"})})
@Override
public String execute() {
_currency = loadCurrencies();
/*Nothing wrong with the DB results.Just to test everything works fine.*/
//for (TiendayaCurrencies _currency1 : _currency) {
// System.out.println("Title - "+_currency1.getTitle());
// }
return SUCCESS;
}
private List<TiendayaCurrencies> loadCurrencies() {
Session session = com.tiendaya.connection.HibernateUtil.
getSessionFactory().openSession();
List<TiendayaCurrencies> cList = session.
createCriteria(TiendayaCurrencies.class).list();
return cList;
}
}
Classe Pojo:
public class TiendayaCurrencies{
private Integer id;
private String title;
private String code;
private String symbolLeft;
private String symbolRight;
private char decimalPlace;
...
Existe algo de errado com as includeProperties? (Apenas o lugar em que consigo pensar ..) Alguém pode sugerir uma maneira ... Tentei de tudo ...
Editar:
public class SocialIconsAction extends ActionSupport {
private List<TiendayaCurrencies> _currency=new ArrayList<>();
private String sample="working";
public String getSample() {
return sample;
}
public void setSample(String sample) {
this.sample = sample;
}
...
@Action(value = "currencies", results = {
@Result(name = "success", type = "json", params = {"includeProperties", "sample"})})
...
Como saída json, ele me dá:{"sample": "working"} o que significa que funciona bem. Então, por que não está funcionando com oArrayList??