Externe Rest API konsumieren

tom.j85

Mitglied
Hallo liebe Community,

ich versuche gerade eine Rest API zu Reisewarnungen im Backend einzubinden (FYI die hier). Das json Format sollte eigentlich so aussehen:

JSON:
{
          "api_status": {
            "request": {
              "item": "de"
            },
            "reply": {
              "cache": "renewed",
              "code": 200,
              "status": "ok",
              "note": "The api works, we could match requested country code.",
              "count": 1
            }
          },
          "data": {
            "DE": {
              "iso_alpha2": "DE",
              "name": "Germany",
              "continent": "EU",
              "advisory": {
                "score": 1.5,
                "sources_active": 4,
                "message": "Germany has a current risk level of 1.5 (out of 5). We Advise: Travelling Germany is (relatively) safe.",
                "updated": "2019-02-12 19:53:38",
                "source": "https:\/\/www.travel-advisory.info\/germany"
              }
            }
          }
        }

Jetzt habe ich die Struktur nachgebaut, um mit einem GetMapping auf Spring die Daten abzuholen. Meine Objekte sind einfach gehalten:


Java:
package com.savetravel.SaveTravel.TravelWarning;

import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

@NoArgsConstructor
@Getter
@Setter
public class TravelWarningObject {

    
    private Api_status api_status;
    private Data data;
    
}

Java:
package com.savetravel.SaveTravel.TravelWarning;

import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

@NoArgsConstructor
@Getter
@Setter
public class Api_status {

    private Request request;
    private Reply reply;
    
    }

Java:
package com.savetravel.SaveTravel.TravelWarning;

import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

@NoArgsConstructor
@Getter
@Setter
public class Reply {

    private String cache;
    private int code;
    private String status;
    private String note;
    private int count;
    
    }

Java:
package com.savetravel.SaveTravel.TravelWarning;

import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

@NoArgsConstructor
@Getter
@Setter
public class Request {
    
    private String item;
    
    }

Java:
package com.savetravel.SaveTravel.TravelWarning;

import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

@NoArgsConstructor
@Getter
@Setter
public class Data {

    private CountryCode DE;
}

Java:
package com.savetravel.SaveTravel.TravelWarning;

import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

@NoArgsConstructor
@Getter
@Setter
public class CountryCode {

    private String iso_alpha_2;
    private String name;
    private String continent;
    private Advisory advisory;
    
    }

Und der Controller:

Java:
package com.savetravel.SaveTravel;

import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import com.savetravel.SaveTravel.TravelWarning.TravelWarningObject;

import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JsonMappingException;

import org.springframework.web.client.RestTemplate;

@RestController
@RequestMapping("/gettravelwarnings")
public class TravelWarningController {

    @GetMapping
    public TravelWarningObject getTravelWarnings()
            throws JsonMappingException, JsonProcessingException {
        
        RestTemplate restTemplate= new RestTemplate();
        TravelWarningObject newTravelWarning = new TravelWarningObject();
        ResponseEntity<TravelWarningObject> responseEntity = restTemplate.getForEntity(
                "https://www.travel-Advisory.info/api?countrycode=DE",
                TravelWarningObject.class);
        newTravelWarning = responseEntity.getBody();
        return newTravelWarning;
    }
        
}

Grundsätzlich scheint das zu funktionieren, allerdings kommt nur die Hälfte an. Wenn ich die get Methode mit Postman abrufe, erhalte ich:

JSON:
{
    "api_status": {
        "request": {
            "item": "de"
        },
        "reply": {
            "cache": "cached",
            "code": 200,
            "status": "ok",
            "note": "The api works, we could match requested country code.",
            "count": 1
        }
    },
    "data": {
        "de": null
    }
}

Aufällig ist, dass das Objekt Country Code (DE) in Kleinbuchstaben dasteht. Ich vermute den Fehler hier, da json case sensitive ist, es ist mir aber ein Rätsel, wie ich das Ändern könnte.

Zweitens, stehe ich auch auf dem Schlauch, wie man die Daten aller Länder vernünftig abrufen kann (FYI, die API gibts hier). Das scheint mir nämlich ein Monsterobjekt^TM zu sein, in dem ein Objekt api_status und ungefähr 180 Objekte mit Ländercodes stehen. Irgendwie scheint das alles nicht so zu funktionieren, wie ich es aus kleineren APIs gewohnt bin...hat jemand einen Tipp / Link / Hinweis, wie ich das Lösen kann?

Vielen Dank
Tom
 

mrBrown

Super-Moderator
Mitarbeiter
Statt Data wäre vermutlich eine Map<String /*Oder enum CountryCode [1], CountryCode> passender :)

[1] das wäre dann der ISO-3166 Country-Code, Benennen kollidiert dann natürlich mit deiner eigenen Klasse, aber das kann man ja lösen :)
 

mihe7

Top Contributor
Aufällig ist, dass das Objekt Country Code (DE) in Kleinbuchstaben dasteht. Ich vermute den Fehler hier, da json case sensitive ist, es ist mir aber ein Rätsel, wie ich das Ändern könnte.
Wenn ich einen GET-Request per curl absetze:
Code:
curl https://www.travel-advisory.info/api?countrycode=DE
kommt
JSON:
{"api_status":{"request":{"item":"de"},"reply":{"cache":"cached","code":200,"status":"ok","note":"The api works, we could match requested country code.","count":1}},"data":{"DE":{"iso_alpha2":"DE","name":"Germany","continent":"EU","advisory":{"score":3.100000000000000088817841970012523233890533447265625,"sources_active":8,"message":"","updated":"2020-07-10 07:22:48","source":"https:\/\/www.travel-advisory.info\/germany"}}}}
zurück.

EDIT: LOL, das scheint mir eine lustige API zu sein. Zuvor kam im Browser
JSON:
{"api_status":{"request":{"item":"tr"},"reply":{"cache":"renewed","code":200,"status":"ok","note":"The api works, we could match requested country code.","count":1}},"data":{"TR":{"iso_alpha2":"TR","name":"Turkey","continent":"AS","advisory":{"score":3.600000000000000088817841970012523233890533447265625,"sources_active":9,"message":"Turkey has a current risk level of 3.6 (out of 5). We advise: Please reconsider your need to travel to Turkey.","updated":"2020-07-10 07:22:48","source":"https:\/\/www.travel-advisory.info\/turkey"}}}}
auch eine Message mit - jetzt nicht mehr.
 

handshake45

Bekanntes Mitglied
:rolleyes:
Hier mal die ersten 10 Länder alphabetisch:
Java:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.URL;
import java.util.Collections;
import java.util.LinkedList;
import java.util.List;

import org.json.JSONObject;

public class TravelAdvisory {
	public static List<String> getCountrycodes() throws IOException {
		LinkedList<String> codes = new LinkedList<String>();
		StringBuilder b = new StringBuilder();
		try (BufferedReader r = new BufferedReader(
				new InputStreamReader(new URL("https://www.travel-advisory.info/api").openStream()))) {
			int c;
			while ((c = r.read()) != -1) {
				b.append((char) c);
			}
		}
		JSONObject api_status = new JSONObject(b.toString());
		JSONObject data = api_status.getJSONObject("data");
		for (Object o : data.names()) {
			String iso_alpha2 = data.getJSONObject((String) o).getString("iso_alpha2");
			codes.add(iso_alpha2);
		}
		return codes;
	}

	public static JSONObject getCountryInfos(String iso_alpha2) throws IOException {
		StringBuilder b = new StringBuilder();
		try (BufferedReader r = new BufferedReader(new InputStreamReader(
				new URL("https://www.travel-advisory.info/api?countrycode=" + iso_alpha2).openStream()))) {
			int c;
			while ((c = r.read()) != -1) {
				b.append((char) c);
			}
		}
		return new JSONObject(b.toString());
	}

	public static void main(String[] args) throws IOException {
		List<String> countrycodes = getCountrycodes();
		Collections.sort(countrycodes);
		System.out.println(countrycodes);
		for (int i = 0; i < 10; i++) {
			System.out.println(getCountryInfos(countrycodes.get(i)).toString(4));
		}
	}
}
JSON:
[AD, AE, AF, AG, AI, AL, AM, AO, AR, AS, AT, AU, AW, AZ, BA, BB, BD, BE, BF, BG, BH, BI, BJ, BL, BM, BN, BO, BR, BS, BT, BW, BY, BZ, CA, CC, CD, CF, CG, CH, CI, CK, CL, CM, CN, CO, CR, CU, CV, CX, CY, CZ, DE, DJ, DK, DM, DO, DZ, EC, EE, EG, EH, ER, ES, ET, FI, FJ, FK, FM, FO, FR, GA, GB, GD, GE, GF, GG, GH, GI, GL, GM, GN, GP, GQ, GR, GS, GT, GU, GW, GY, HK, HN, HR, HT, HU, ID, IE, IL, IM, IN, IQ, IR, IS, IT, JE, JM, JO, JP, KE, KG, KH, KI, KM, KN, KP, KR, KW, KY, KZ, LA, LB, LC, LI, LK, LR, LS, LT, LU, LV, LY, MA, MC, MD, ME, MF, MG, MH, MK, ML, MM, MN, MO, MP, MQ, MR, MS, MT, MU, MV, MW, MX, MY, MZ, NA, NC, NE, NF, NG, NI, NL, NO, NP, NU, NZ, OM, PA, PE, PF, PG, PH, PK, PL, PM, PN, PR, PS, PT, PW, PY, QA, RE, RO, RS, RU, RW, SA, SB, SC, SD, SE, SG, SH, SI, SJ, SK, SL, SM, SN, SO, SR, SS, ST, SV, SY, SZ, TC, TD, TG, TH, TJ, TL, TM, TN, TO, TR, TT, TV, TW, TZ, UA, UG, US, UY, UZ, VA, VC, VE, VG, VI, VN, VU, WF, WS, XK, YE, YT, ZA, ZM, ZW]
{
    "data": {"AD": {
        "continent": "EU",
        "iso_alpha2": "AD",
        "advisory": {
            "score": 2.8,
            "sources_active": 4,
            "source": "https://www.travel-advisory.info/andorra",
            "message": "Andorra has a current risk level of 2.8 (out of 5). We advise: Use some caution when travelling Andorra.",
            "updated": "2020-07-10 07:22:48"
        },
        "name": "Andorra"
    }},
    "api_status": {
        "request": {"item": "ad"},
        "reply": {
            "note": "The api works, we could match requested country code.",
            "cache": "renewed",
            "code": 200,
            "count": 1,
            "status": "ok"
        }
    }
}
{
    "data": {"AE": {
        "continent": "AS",
        "iso_alpha2": "AE",
        "advisory": {
            "score": 3.1,
            "sources_active": 7,
            "source": "https://www.travel-advisory.info/united-arab-emirates",
            "message": "United Arab Emirates has a current risk level of 3.1 (out of 5). We advise: Use some caution when travelling United Arab Emirates.",
            "updated": "2020-07-10 07:22:48"
        },
        "name": "United Arab Emirates"
    }},
    "api_status": {
        "request": {"item": "ae"},
        "reply": {
            "note": "The api works, we could match requested country code.",
            "cache": "renewed",
            "code": 200,
            "count": 1,
            "status": "ok"
        }
    }
}
{
    "data": {"AF": {
        "continent": "AS",
        "iso_alpha2": "AF",
        "advisory": {
            "score": 5,
            "sources_active": 10,
            "source": "https://www.travel-advisory.info/afghanistan",
            "message": "Afghanistan has a current risk level of 5 (out of 5). We advise: It is not safe to travel Afghanistan.",
            "updated": "2020-07-10 07:22:48"
        },
        "name": "Afghanistan"
    }},
    "api_status": {
        "request": {"item": "af"},
        "reply": {
            "note": "The api works, we could match requested country code.",
            "cache": "renewed",
            "code": 200,
            "count": 1,
            "status": "ok"
        }
    }
}
{
    "data": {"AG": {
        "continent": "NA",
        "iso_alpha2": "AG",
        "advisory": {
            "score": 3,
            "sources_active": 3,
            "source": "https://www.travel-advisory.info/antigua-and-barbuda",
            "message": "Antigua and Barbuda has a current risk level of 3 (out of 5). We advise: Use some caution when travelling Antigua and Barbuda.",
            "updated": "2020-07-10 07:22:48"
        },
        "name": "Antigua and Barbuda"
    }},
    "api_status": {
        "request": {"item": "ag"},
        "reply": {
            "note": "The api works, we could match requested country code.",
            "cache": "renewed",
            "code": 200,
            "count": 1,
            "status": "ok"
        }
    }
}
{
    "data": {"AI": {
        "continent": "NA",
        "iso_alpha2": "AI",
        "advisory": {
            "score": 3,
            "sources_active": 3,
            "source": "https://www.travel-advisory.info/anguilla",
            "message": "Anguilla has a current risk level of 3 (out of 5). We advise: Use some caution when travelling Anguilla.",
            "updated": "2020-07-10 07:22:48"
        },
        "name": "Anguilla"
    }},
    "api_status": {
        "request": {"item": "ai"},
        "reply": {
            "note": "The api works, we could match requested country code.",
            "cache": "renewed",
            "code": 200,
            "count": 1,
            "status": "ok"
        }
    }
}
{
    "data": {"AL": {
        "continent": "EU",
        "iso_alpha2": "AL",
        "advisory": {
            "score": 3.3,
            "sources_active": 7,
            "source": "https://www.travel-advisory.info/albania",
            "message": "Albania has a current risk level of 3.3 (out of 5). We advise: Use some caution when travelling Albania.",
            "updated": "2020-07-10 07:22:48"
        },
        "name": "Albania"
    }},
    "api_status": {
        "request": {"item": "al"},
        "reply": {
            "note": "The api works, we could match requested country code.",
            "cache": "renewed",
            "code": 200,
            "count": 1,
            "status": "ok"
        }
    }
}
{
    "data": {"AM": {
        "continent": "AS",
        "iso_alpha2": "AM",
        "advisory": {
            "score": 3.2,
            "sources_active": 5,
            "source": "https://www.travel-advisory.info/armenia",
            "message": "Armenia has a current risk level of 3.2 (out of 5). We advise: Use some caution when travelling Armenia.",
            "updated": "2020-07-10 07:22:48"
        },
        "name": "Armenia"
    }},
    "api_status": {
        "request": {"item": "am"},
        "reply": {
            "note": "The api works, we could match requested country code.",
            "cache": "renewed",
            "code": 200,
            "count": 1,
            "status": "ok"
        }
    }
}
{
    "data": {"AO": {
        "continent": "AF",
        "iso_alpha2": "AO",
        "advisory": {
            "score": 3,
            "sources_active": 6,
            "source": "https://www.travel-advisory.info/angola",
            "message": "Angola has a current risk level of 3 (out of 5). We advise: Use some caution when travelling Angola.",
            "updated": "2020-07-10 07:22:48"
        },
        "name": "Angola"
    }},
    "api_status": {
        "request": {"item": "ao"},
        "reply": {
            "note": "The api works, we could match requested country code.",
            "cache": "renewed",
            "code": 200,
            "count": 1,
            "status": "ok"
        }
    }
}
{
    "data": {"AR": {
        "continent": "SA",
        "iso_alpha2": "AR",
        "advisory": {
            "score": 3.1,
            "sources_active": 7,
            "source": "https://www.travel-advisory.info/argentina",
            "message": "Argentina has a current risk level of 3.1 (out of 5). We advise: Use some caution when travelling Argentina.",
            "updated": "2020-07-10 07:22:48"
        },
        "name": "Argentina"
    }},
    "api_status": {
        "request": {"item": "ar"},
        "reply": {
            "note": "The api works, we could match requested country code.",
            "cache": "renewed",
            "code": 200,
            "count": 1,
            "status": "ok"
        }
    }
}
{
    "data": {"AS": {
        "continent": "OC",
        "iso_alpha2": "AS",
        "advisory": {
            "score": 4,
            "sources_active": 1,
            "source": "https://www.travel-advisory.info/american-samoa",
            "message": "American Samoa has a current risk level of 4 (out of 5). We advise: Please reconsider your need to travel to American Samoa.",
            "updated": "2020-07-10 07:22:48"
        },
        "name": "American Samoa"
    }},
    "api_status": {
        "request": {"item": "as"},
        "reply": {
            "note": "The api works, we could match requested country code.",
            "cache": "renewed",
            "code": 200,
            "count": 1,
            "status": "ok"
        }
    }
}
Das Ganze könntest du jetzt in einer Liste die man sortieren kann darstellen... (Dazu war ich gerad zu faul).
 

tom.j85

Mitglied
Vielen lieben Dank erst einmal für den Input!

Der Tipp von Mr.Brown mit der Map hat die Sache für mich am einfachsten gelöst. Das TravelWarningObject sieht jetzt so aus:

Java:
package com.savetravel.SaveTravel.TravelWarning;

import java.util.HashMap;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

@NoArgsConstructor
@Getter
@Setter
public class TravelWarningObject {

    private Api_status api_status;
    private HashMap<String, CountryCode> data;
}

Und der Controller, mit einer Methode für einzelne und eine für alle Länder:

Java:
package com.savetravel.SaveTravel;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.savetravel.SaveTravel.TravelWarning.TravelWarningObject;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JsonMappingException;
import org.springframework.web.client.RestTemplate;

@RestController
@RequestMapping("/gettravelwarnings")
public class TravelWarningController {

    @GetMapping
    public TravelWarningObject getTravelWarnings(String coCo)
            throws JsonMappingException, JsonProcessingException {
       
        //Dummy for test
        coCo = "DE";
       
        RestTemplate restTemplate= new RestTemplate();
        TravelWarningObject newTravelWarning = new TravelWarningObject();
        ResponseEntity<TravelWarningObject> responseEntity = restTemplate.getForEntity(
                "https://www.travel-Advisory.info/api?countrycode="+coCo.toUpperCase(),
                TravelWarningObject.class);
        newTravelWarning = responseEntity.getBody();
        return newTravelWarning;
    }
   
   
    @GetMapping("/alltw")
    public TravelWarningObject getAllTravelWarnings()
            throws JsonMappingException, JsonProcessingException {
       
        RestTemplate restTemplate = new RestTemplate();
        TravelWarningObject allTravelWarnings = new TravelWarningObject();
       
        ResponseEntity<TravelWarningObject> responseEntity = restTemplate.getForEntity(
                "https://www.travel-advisory.info/api", TravelWarningObject.class);
        allTravelWarnings = responseEntity.getBody();
   
        return allTravelWarnings;
               
    }
}

Warum beim alten Code die Daten ab dem Ländercode nicht mehr ausgegeben wurden ist mir nach wie vor ein Rätsel. Ich habe bei coCo ein .toUpperCase reingesetzt...aus Sicherheitsgründen.

@handshake45
Der Code sieht sexy aus, danke, schaue ich mir nochmal an. Das scheint mir die Lösung ohne Spring Boot zu sein, hätte vielleicht noch dazu schrieben sollen, dass ich Spring verwende

@mrBrown
Ich habe mir auch Enum und EnumMap angesehen. Bin aber grandios gescheitert. Ich hatte mir die Ländercodes gezogen:
Java:
String[] locales = Locale.getISOCountries()
hatte aber keine Ahnung wie man das jetzt als Enum verpackt...vielleicht hast Du da noch einen Tipp oder Link oder ähnliches weiterführendes?

Besten Dank & schönen Sonntag
Tom
 

mrBrown

Super-Moderator
Mitarbeiter
@@handshake45
Der Code sieht sexy aus,
Also wenn du solchen Code sexy findest scheinst du seeeehr merkwürdige Fetische zu haben...


@@mrBrown
Ich habe mir auch Enum und EnumMap angesehen. Bin aber grandios gescheitert. Ich hatte mir die Ländercodes gezogen:
Java:
String[] locales = Locale.getISOCountries()
hatte aber keine Ahnung wie man das jetzt als Enum verpackt...vielleicht hast Du da noch einen Tipp oder Link oder ähnliches weiterführendes?
Den enum müsstest du dir selber schreiben, wenn du die fertigen Länder-Codes nutzen willst, ist String die bessere Wahl.
Ansonsten halt einfach enum CountryCode { DE, GB, FR }
 

Oneixee5

Top Contributor
Was ich mich frage: Wozu das alles? Der orginale Post macht eine API Abfrage und das JSON-Resultat wird zurückgeben. Dazu ist doch gar kein Mapping in irgendwelche Objekte notwendig, reiche das JSON einfach so weiter wie es ist. Im einfachsten Fall würde schon eine Weiterleitung ausreichen: HTTP/1.1 301 Moved Permanently
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
I Kamera anschließen / Bild machen / Live View / Externe Blitz Java Basics - Anfänger-Themen 19
C externe jar einbinden in Eclipse-Projekt Java Basics - Anfänger-Themen 2
C Java Funktion: externe Daten vom Internet einbinden Java Basics - Anfänger-Themen 2
S Maven und externe Library Java Basics - Anfänger-Themen 2
L Worauf muss ich achten, wenn ich externe Bibliotheken für meine Anwendungen verwende? Java Basics - Anfänger-Themen 6
W Externe class in Eclipse importieren Java Basics - Anfänger-Themen 0
G Servlet - externe HTML (URL) auslesen Java Basics - Anfänger-Themen 1
Hijo2006 Neue externe Klasse einbinden Java Basics - Anfänger-Themen 13
S Klassen Externe Klasse in ein Projekt mit einbinden Java Basics - Anfänger-Themen 7
T Externe Methoden aufrufen Java Basics - Anfänger-Themen 3
M Externe .jar in Sublime einbinden Java Basics - Anfänger-Themen 5
E Externe Library .zip Datei importieren Java Basics - Anfänger-Themen 3
D Externe Comperator-Klasse Java Basics - Anfänger-Themen 3
D Externe Eeite beim Mousover anzeigen Java Basics - Anfänger-Themen 0
U Externe Library im non runnable jar File im eclipse Java Basics - Anfänger-Themen 1
S externe Datei erstellen, oeffnen, bearbeiten Java Basics - Anfänger-Themen 2
S komponente über externe klasse zufügen Java Basics - Anfänger-Themen 13
D Externe Libs in Jar Java Basics - Anfänger-Themen 2
S externe Webseiten füllen Java Basics - Anfänger-Themen 5
H Classpath java.lang.NoClassDefFoundError externe Libary Java Basics - Anfänger-Themen 4
M externe JARs in die eigene JAR einbinden Java Basics - Anfänger-Themen 9
T Sichtbarkeiten und externe Klasse Java Basics - Anfänger-Themen 33
N Jar-File soll externe class-Datei benutzen Java Basics - Anfänger-Themen 8
S Externe Bibliothek zu Resources hinzufügen? Java Basics - Anfänger-Themen 5
B Externe Libraries fuer Applet ... Pfad eingeben? Java Basics - Anfänger-Themen 23
V Input/Output Plattform unabhängig auf externe Dateien zugreifen Java Basics - Anfänger-Themen 4
P Threads Thread und Zugriff auf externe Methode beenden Java Basics - Anfänger-Themen 4
N Klassen externe .class einbinden Java Basics - Anfänger-Themen 9
F Input/Output Wie externe Datei NICHT mit dem Standardprogramm öffnen? Java Basics - Anfänger-Themen 3
J Zugriff von main-Klasse auf externe Klassen Java Basics - Anfänger-Themen 51
T externe Datei fest an Projekt binden Java Basics - Anfänger-Themen 2
K Klassen externe JAR in Programm einbinden Java Basics - Anfänger-Themen 5
E externe .txt Datei mit Scanner einlesen Java Basics - Anfänger-Themen 7
X Extrahieren in Externe Klasse Funktioniert nicht Java Basics - Anfänger-Themen 6
Steve5000 Externe Batch-Datei starten und anwendung beenden?! Java Basics - Anfänger-Themen 4
L Externe Dateien, wohin? Java Basics - Anfänger-Themen 7
C OOP Externe Klasse erweitern (ohne Vererbung!!) Java Basics - Anfänger-Themen 8
T externe Programme pipen Java Basics - Anfänger-Themen 2
G Eigene Klasse für externe Befehle - Warten auf Prozesse Java Basics - Anfänger-Themen 6
P Externe IP ermitteln? Java Basics - Anfänger-Themen 5
-horn- Externe Lib: JavaSCI richtig einbinden? Java Basics - Anfänger-Themen 5
I externe JAVA-Schnittstelle einbinden Java Basics - Anfänger-Themen 2
A Externe Klassen Laden und ausführen Java Basics - Anfänger-Themen 12
P externe JARs integrieren Java Basics - Anfänger-Themen 9
Y Applet lokal executable machen, externe Files inkludieren Java Basics - Anfänger-Themen 8
C externe Klassen in Projekt einbinden Java Basics - Anfänger-Themen 10
I Listenerklassen in externe Dateien auslagern? Java Basics - Anfänger-Themen 7
G Intern auf externe IP zugreifen? Java Basics - Anfänger-Themen 7
S externe Klassen Java Basics - Anfänger-Themen 3
M Parameterübergabe an externe JAR-Datei? Java Basics - Anfänger-Themen 2
Schandro Externe Bibliothek OHNE IDE benutzen Java Basics - Anfänger-Themen 5
B Externe .exe-Dateien starten +Runtime Java Basics - Anfänger-Themen 6
W Kann in meiner Jar nicht auf externe Jar zugreifen Java Basics - Anfänger-Themen 4
G zugriff auf festplatte / externe festplatten Java Basics - Anfänger-Themen 12
T Externe Datei aufrufen Java Basics - Anfänger-Themen 6
T Externe JAR datei in eigene? Java Basics - Anfänger-Themen 2
S externe Datei unformatiert einlesen & in double konverti Java Basics - Anfänger-Themen 2
B Paint(Component) und externe Objekte Java Basics - Anfänger-Themen 6
S per Kommandozeile compilieren: Problem: externe Jars einbind Java Basics - Anfänger-Themen 16
D Externe .jar in Eclipse nutzen Java Basics - Anfänger-Themen 3
F Externe Batch Datei aufrufen Java Basics - Anfänger-Themen 5
G Auf externe Resourceb zugreifen Java Basics - Anfänger-Themen 6
S externe URL öffnen und in Variable speichern. Java Basics - Anfänger-Themen 9
L Externe *.jar verwenden (ohne IDE) Java Basics - Anfänger-Themen 9
G JAR: Externe Dateien zur Laufzeit aufrufen Java Basics - Anfänger-Themen 12
I Wie eine externe Funktion rufen? Java Basics - Anfänger-Themen 11
G Externe Klassen mit ausliefern Java Basics - Anfänger-Themen 4
J Anfängerfrage: wie externe Dateien importieren? Java Basics - Anfänger-Themen 5
F Externe Datei aufrufen Java Basics - Anfänger-Themen 3
B Pfad für eine externe Klasse Java Basics - Anfänger-Themen 4
V Auf externe MySQL DB connecten? Java Basics - Anfänger-Themen 6
M Externe Klasse einbinden Java Basics - Anfänger-Themen 5
D Projekt als jar exportieren: Wie externe jars einbauen? Java Basics - Anfänger-Themen 5
A externe Library wird nicht gefunden Java Basics - Anfänger-Themen 4
K externe jar einbinden Java Basics - Anfänger-Themen 2
T Externe Api einbinden Java Basics - Anfänger-Themen 4
F externe programme ueber eine string starten Java Basics - Anfänger-Themen 2
J String in externe Datei speichern Java Basics - Anfänger-Themen 2
N wie externe bibliotheken einbinden? Java Basics - Anfänger-Themen 2
S externe lib´s in welchen ordner packen? Java Basics - Anfänger-Themen 6
H Zugriff auf externe Variable Java Basics - Anfänger-Themen 10
G Externe Klassen einbinden Java Basics - Anfänger-Themen 4
S Befehle an externe Programme Java Basics - Anfänger-Themen 4
P Externe Klassen Problem - Eclipse Java Basics - Anfänger-Themen 4
M Rest mit Spring boot oder selbst anlegen Java Basics - Anfänger-Themen 14
M Rest- Api mit HTTP BASIC Authentication Java Basics - Anfänger-Themen 16
I REST Api / JAX-RS, Swagger (OpenAPI) - generelle Starthilfen benötigt Java Basics - Anfänger-Themen 15
S Teilen ohne Rest Java Basics - Anfänger-Themen 15
S Konstruktor passt nicht zum Rest Java Basics - Anfänger-Themen 11
R Warum werden hier nur die grün und orangen Linien ausgegeben und der Rest unten nicht? Java Basics - Anfänger-Themen 5
D NodeJS Rest Api Erkläre Java Basics - Anfänger-Themen 3
B Methoden Element aus einem Array löschen, Rest nach vorne verschieben? Java Basics - Anfänger-Themen 4
J XML-Strukturen für REST-Service erstellen Java Basics - Anfänger-Themen 1
H Schleife für Teilen mit Rest Java Basics - Anfänger-Themen 1
I Höchste Zahl berechnen die eine Eingabe ohne Rest teilt und eine Primzahl ist Java Basics - Anfänger-Themen 2
D Rest ausrechnen Java Basics - Anfänger-Themen 2
J division mit rest Java Basics - Anfänger-Themen 8
F Teilen mit Rest Java Basics - Anfänger-Themen 12
O JRadioButton's - Einen aktivieren/ Rest deaktivieren Java Basics - Anfänger-Themen 5
M Rest herausfinden Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben