Sur tomcat, j'ai une classe qui retourne une liste d'objets de la base de données, quelque chose comme ceci:Comment retourner une liste dans Apache Axis
List<Entity> list = null;
Connection con = null;
PreparedStatement pstm = null;
ResultSet rs = null;
try {
con = Connector.getConexion();
String sql = "SELECT * FROM some_table LIMIT 10;";
pstm = con.prepareStatement(sql);
rs = pstm.executeQuery();
list = new ArrayList<>();
EntityCrimesChicago ecc = null;
while (rs.next()) {
e = new Entity();
e.setID(rs.getString(1));
e.setCase_Number(rs.getString(2));
list.add(e);
}
return list;
catch { ... }
finally { ... }
L'entité et de la table ont tous les champs Chaîne/varchar , même l'ID.
Le service obtient la liste avec (ce qui est une méthode Web):
public List<Entity> someThing(String q) {
DAOThings controller = new DAOThings();
List<Entity> things = controller.getSomeThings(Integer.parseInt(q));
return things;
}
Ce retour
java.io.IOException: No serializer found for class Entity in registry [email protected]
Mais, si je change la méthode Web pour retourner un String
et j'utilise return things.toString();
qui renvoient les objets, mais pas le son contenu. Que puis-je faire pour renvoyer la liste correctement?
Je tente de retourner une liste de chaînes ajoutée manuellement et fonctionne correctement.