2016-04-08 12 views
0

Ich versuche, ein JSON-Array mit Java EE 7-Bibliotheken zu erstellen.Erstellen Sie JSON-Array mit Java EE 7

import javax.json.Json; 
import javax.json.JsonArray; 
import javax.json.JsonObject; 

jsonregistration=(JsonArray) Json.createArrayBuilder() 
    .add("APA91bE58Q") 
    .add("APA91bGT_sd") 
    .build(); 

funktioniert völlig in Ordnung ich habe Tonnen Unter der Annahme, die Liste der erstellen, und es wird von der Datenbank gelesen. Wenn ich versuchte, den Code zu iterieren, funktioniert es nicht.

jsonregistration=(JsonArray) Json.createArrayBuilder(); 
while(rs.next()) 
{ 
    jsonregistration.add(rs.getString(1)); 
} 
jsonregistration.build(); 

Funktioniert nicht.

+1

Was nicht funktioniert? Es fügt nichts zum Array hinzu? Wenn dies der Fall sein könnte, fügen Sie nichts hinzu. – Sanjeev

+0

Nein mein Resultset gibt einen Wert zurück. nur, wenn jsonregistration.add (rs.getString (1)); es gibt einen Fehler zurück Keine passende Methode gefunden für add (String) Methode Collection.add (JsonValue) ist nicht anwendbar (Argument stimmt nicht überein; String kann nicht in JsonValue konvertiert werden) –

Antwort

1

Json.createArrayBuilder() gibt ein Objekt vom Typ JSONArrayBuilder so müssen Sie Ihren Code wie diesen schreiben und es wird funktionieren

JsonArrayBuilder jsonregistration= Json.createArrayBuilder(); 
while(rs.next()) 
{ 
    jsonregistration.add(rs.getString(1)); 
} 
JsonArray jsonArray = jsonregistration.build();