Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Listen bzw. Arrays als Rückgabe von Webservices

Empfohlene Antworten

Veröffentlicht

Hallo,

ich würde für ein kleines Testprojekt gerne einen Webservice schreiben, der mir als Rückgabedatentyp eine List (z.B. Arraylist) oder einfach nur ein normales Array liefert. Application Server ist ein JBoss 5.x

Wenn ich das gewünschte EJB nun deploye und auf den Clients mit WSCreate die Endpoints erstelle, erhalte ich aber auch jeweils einen eigenen Datentyp mitgeliefert.

Als grobes Beispiel:

@WebMethod

public java.util.ArrayList<String> getStringList(){

ArrayList<String> liste = new ArrayList<String>();

liste.add.......

.....

return liste;

}

Wenn ich den Webservice nun in meinem Client ansprechen will, liefert mir die getStringList()-Methode des endpoints keine java.util.ArrayList zurück, sondern eine <package_des_clients>.ArrayList. Und dieser Datentyp hat keine Methoden, um den Inhalt einzusehen.

Ich denke mir schon dass das keine Frage ist die man mit 2 Zeilen beantworten kann, ich wäre aber zumindest froh wenn mir jemand ein paar Stichpunkte nennen könnte, mit denen ich weiter an der Sache arbeiten kann. Im Moment bin ich von den Tausenden Seiten JBoss-Tutorial einfach etwas erschlagen und weiss gar nicht mehr wo ich anfangen soll :)

(Vllt noch kurz: Der JBoss Server läuft, deployen von EJBs funktioniert, auch ein Aufruf der Webservices ist kein Problem, und wenn die Webservices nur primitive Datentypen oder normale Instanzen von erstellten Klassen zurückgeben, funktioniert auch alles. Nur eben bei Collections und Arrays werden die Typen umgewandelt).

Ich bin kein Experte für Web Services aber ich versuche einfach mal weiter zu helfen.

Hast du schon mal probiert einfach einen Array zu verschicken? Du kannst ja aus einer List mit toArray() einen Array machen. Mit Arrays.asList() kannst du aus einem Array eine List machen. Am besten so:

Object[] array = new Object[3];

List<Object> list = new LinkedList<Object>(Arrays.asList(array));

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.