Piszę aplikację, w której tworzę serwisy internetowe. Tworzę operację (metodę), która pobiera wartości tabeli bazy danych z tabeli bazy danych w zestawie wyników. Dlatego nie możemy zwrócić wartości zestawu wyników bezpośrednio w usługach internetowych. Tworzę klasę, która przechowuje wartości z zestawu wyników. zamiast wynikowego Wracam Object [] nowo utworzonej klasy następująco:Jak zwrócić zestaw wyników z usługi internetowej w java
public HistoryInfoByUser[] get_HistoryInfoByUser(@WebParam(name = "email_Id")
String email_Id) throws Exception{
HistoryInfoByUser[] historyIn = null;
if (conn != null) {
CallableStatement cst = conn.prepareCall("{call sp_xxxx(?)}",ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
cst.setString(1, email_Id);
ResultSet resultSet = cst.executeQuery();
int rowCount = resultSet.getRow();
historyIn = new HistoryInfoByUser[rowCount];
while (resultSet.next())
{
historyIn[rowCounter].setId(rowCounter);
historyIn[rowCounter].setStartTime((java.util.Date)resultSet.getObject(1));
historyIn[rowCounter].setType((String) resultSet.getObject(2));
rowCounter++;
}
}
return historyIn;
}
ale podczas próby uzyskania dostępu do tych wartości w kliencie usług internetowych, to daje java.lang.NullPointerException.
tutaj jest kod, który używam w kliencie usług internetowych dostępu do wynikowego wartości:
public void get_HistoryInfoByUser(String email_Id)
{
service = new DBService();
port = service.getDBPort();
try {
List<HistoryInfoByUser> historyIn = port.getHistoryInfoByUser(email_Id);
Iterator iterator = historyIn.iterator();
while (iterator.hasNext()){
System.out.print(iterator.next()+" ");
}
} catch (Exception_Exception ex) {
Logger.getLogger(DataBaseWSHelper.class.getName()).log(Level.SEVERE, null, ex);
}
}
Próbowałem powrocie wartość małpa wiersz po powrocie obiekt (HistoryInfoByUser) nowo utworzonej klasie zamiast obiektu [] (HistoryInfoByUser []). Działa z jednym obiektem, ale daje wyjątek NullPointerException, gdy używam obiektu []. Nie dostaję żadnej drogi, która pomoże mi przezwyciężyć ten problem z dostępem do wartości zestawu wyników.
Z góry dziękuję wszystkim cennym sugestiom, które pomogą mi przezwyciężyć ten problem.
zaakceptować odpowiedzi na niektóre pytania koleś !! ........ –
O tak. Całkowicie zaniedbałem tę część. Dziękuję Srinivasowi za podpowiedź. –