sto scrivendo un'applicazione in cui sto creando servizi web. Sto creando un'operazione (metodo) che recupera i valori della tabella del database dalla tabella del database in resultset. Quindi non possiamo restituire il valore dei risultati direttamente nei servizi web. Sto creando una classe che contiene i valori di resultset. invece di di risultati Sto tornando oggetto [] di classe appena creata come segue:Come restituire i risultati dal servizio Web in 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;
}
ma durante il tentativo di accedere a tali valori nel client di servizi web, che sta dando java.lang.NullPointerException.
Ecco il codice che sto utilizzando in client di servizi web per l'accesso ResultSet valori:
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);
}
}
Ho provato a restituire un valore di riga singe restituendo un oggetto (HistoryInfoByUser) di classe appena creata, invece di oggetto [] (HistoryInfoByUser []). Funziona bene con un singolo oggetto ma dà NullPointerException quando sto usando object []. Non sto ottenendo alcun modo che mi aiuterà a superare questo problema di accesso al valore del resultset.
Ringrazio in anticipo tutti i preziosi suggerimenti che mi aiuteranno a superare questo problema.
accettare le risposte per alcune domande amico !! ........ –
Oh sì. Ho completamente trascurato questa parte. Grazie Srinivas per il suggerimento. –