Klassen NFC Reader und JavaFx Problem -> threads?

L

loomy

Neues Mitglied
HI!
ich bin absoluter Noob was Java betrifft und habe mir zum Ziel gesetzt ein NFC Reader App zu schreiben welche Daten in eine Datenbank schreibt und von dort auch liest alles per NFC Tags.
Soweit so gut.
Ich habe mir die einzelnen Klassen mit den jeweiligen Methoden per Try and Error schon zusammengebaut.
Meine MainKlasse baut mir eine JavaFX Gui mit mehreren Scenen welche über ein Menü ausgewählt werden können auf.
Danach habe ich mir die Datenbankklasse importiert und nutze die Methoden derer um mit der Datenbank zu kommunizieren was soweit auch ohne Probleme funktioniert.
Heute stiess ich allerdings auf ein Problem beim Import meiner NFC Reader Klasse welche mir die UID der Karte auslesen soll.
Also nachdem auf den Menupunkt gkleickjt wurde soll eine neue Scene geladen werden und danach die UID der Karte ausgelesen werden sobald diese an den Reader gehalten wird.

Code:
  hauptFenster.setScene(nfcinfoscene);
   hauptFenster.show();
   FTM_NFC_Reader read1 = new FTM_NFC_Reader();
   this.uidmain = read1.readNfcCard();

Das funktioniert, aber die Scene wird erst geladen nachdem die "readNfcCard()" Methode abgearbeitet wurde - also ein Ergebnis zurueckliefert.

Das Problem kommt denke ich aus dem Stückchen Code der auf die Karte wartet:
Code:
terminal.waitforCard(0);

Wie umgehe ich das ganze am besten - bzw. wie löst man sowas ? Ich würde gern anzeigen lassen ... in der neuen Scene ... Warte auf NFC Karte .... und dann soll die Methode solange warten bis die Karte gelesen wurde mit Ergebnis UID und dann soll weiter gemacht werden...

Muss ich mich da erstmal in Tasks? Threads oder Runnable mit Executors? einlesen ... das waren so die Themen die ich bisher so im Netz gesehen habe.

Wenn ja habt ihr da eine gute Deutsche Anlaufstelle für mich ... ich verstehe zwar was man mir auf Englisch erzählen will aber in der Muttersprache ... lernt es sich dann eben doch leichter :)

So Danke erstmal an alle die sich hier durchgelesen haben und hoffe auf ein paar Denkanstösse von euch.
Macht weiter so!!!


Stev
 
mihe7

mihe7

Top Contributor
ich bin absoluter Noob was Java betrifft und habe mir zum Ziel gesetzt ein NFC Reader App zu schreiben welche Daten in eine Datenbank schreibt und von dort auch liest alles per NFC Tags.
Auf was für Ideen die Leute kommen...

Muss ich mich da erstmal in Tasks? Threads oder Runnable mit Executors? einlesen ... das waren so die Themen die ich bisher so im Netz gesehen habe.
Im Prinzip schon.

JavaFX ist nicht thread-safe, daher gilt als Faustregel, dass auf das UI nur aus einem Thread heraus zugegriffen werden darf - insbesondere, was Änderungen betritt. Dieser eine Thread ist der sog. UI-Thread (aka JavaFX Application Thread).

Blockierst Du diesen, blockierst Du das UI. Das ist der Effekt, den Du bereits festgestellt hast. Um das zu verhindern, kannst Du den blockierenden Code in einen anderen Thread (Background-Thread) auslagern.

Einen Thread zu starten ist in Java prinzipiell relativ einfach. Es gibt allerdings ein paar Fallstricke zu beachten und häufig ist es nicht damit getan, irgendwas im Hintergrund auszuführen. Oft will man beispielsweise Ergebnisse des Background-Threads auch im UI anzeigen. Um die ganze Sache zu vereinfachen, gibt es in JavaFX Service und Task.

Hintergrundinfos und Beispiele gibt es hier: https://docs.oracle.com/javase/8/javafx/interoperability-tutorial/concurrency.htm#BABCCGCI

Doku in den JavaDocs:
https://docs.oracle.com/javase/8/javafx/api/javafx/concurrent/Task.html und
https://docs.oracle.com/javase/8/javafx/api/javafx/concurrent/Service.html
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Input/Output Reader/Writer finden file nicht Java Basics - Anfänger-Themen 3
A Reader wohin werden Daten gespeichert? Java Basics - Anfänger-Themen 7
Textsurfer Erste Schritte CSV Import Reader Writer Java Basics - Anfänger-Themen 0
A Reader für Benutzereingabe in Eclipse importieren Java Basics - Anfänger-Themen 3
W Reader Java Basics - Anfänger-Themen 9
W Java XML-Reader: Content not allowed in Prolog Java Basics - Anfänger-Themen 7
H Jpg in BufferedImage Reader oder Array ablegen? Java Basics - Anfänger-Themen 5
H "Conways GameofLife - Vom Reader ins Array" Java Basics - Anfänger-Themen 5
C FileWriter bzw. Reader fehlerhaft Java Basics - Anfänger-Themen 6
Sogomn Input/Output Reader, Writer und Streams Java Basics - Anfänger-Themen 6
P txt reader Problem Java Basics - Anfänger-Themen 17
L buffered reader produziert zu viele und seltsame zeichen Java Basics - Anfänger-Themen 2
A Interface Reader interface verwenden Java Basics - Anfänger-Themen 4
S Input/Output Reader: "null" wenn While-Ende Java Basics - Anfänger-Themen 5
F Reader - brauche Hilfe Java Basics - Anfänger-Themen 19
M Reader-Problem Java Basics - Anfänger-Themen 5
Haubitze_Broese RSS-Reader? Java Basics - Anfänger-Themen 2
Haubitze_Broese Pattern für Links in RSS-Reader Java Basics - Anfänger-Themen 6
A Problem Reader Java Basics - Anfänger-Themen 39
Developer_X Sav-Data reader, fehler Java Basics - Anfänger-Themen 2
V Buffered Reader, erst ab bestimmter Zeile auslesen? Java Basics - Anfänger-Themen 8
K Probleme mit Buffered Reader Java Basics - Anfänger-Themen 8
P Buffered Reader an Anfang setzen Java Basics - Anfänger-Themen 4
D RSS Reader mit Redaktionssystem Java Basics - Anfänger-Themen 7
L Streams und Reader/Writer Java Basics - Anfänger-Themen 8
F Was gibt der Buffered Reader zurück bei Dateiende? Java Basics - Anfänger-Themen 2
T Writer/Reader Problem Java Basics - Anfänger-Themen 4
H Buffered Reader Java Basics - Anfänger-Themen 7
G Buffered REader, String, ist mein code korrekt? Java Basics - Anfänger-Themen 4
E JavaFX Editor Probleme mit der Zwischenablage Java Basics - Anfänger-Themen 0
E JavaFX Taschenrechner Eingabe im Textfield beschränken Java Basics - Anfänger-Themen 2
D Mit Objekten rechnen, Textfield, JavaFX, Noob Java Basics - Anfänger-Themen 8
P Probleme bei der Installation von JavaFX Java Basics - Anfänger-Themen 3
R Umsetzungsplan JavaFx App Java Basics - Anfänger-Themen 9
M JavaFX- Verschiedene Stages Java Basics - Anfänger-Themen 1
P JavaFx einrichten Java Basics - Anfänger-Themen 6
Torsten.E JavaFX mit Visual Studio Code verwenden Java Basics - Anfänger-Themen 1
P JavaFX: Verständnisproblem bei ComboBox/ChoiceBox etc. Java Basics - Anfänger-Themen 9
T Javafx ListView kann nicht gefüllt werden. Java Basics - Anfänger-Themen 6
D JAVAFX WebVIEW zu JSOUP Java Basics - Anfänger-Themen 3
D Folgende Fehlermeldung bei der Installation von JAVAFX Java Basics - Anfänger-Themen 1
S JavaFX-Arduino Kommunikation mit LCD-Anzeige Java Basics - Anfänger-Themen 0
B java.lang.NullPointerException bei javafx Java Basics - Anfänger-Themen 10
J javafx mediaplayer mit https Java Basics - Anfänger-Themen 3
J JavaFX Label,Button zur Laufzeit Java Basics - Anfänger-Themen 30
D Ausführbare jar/exe aus JAVAFX Projekt erstellen (IntelliJ) Java Basics - Anfänger-Themen 14
O JavaFX XML Versuch Java Basics - Anfänger-Themen 2
O JavaFX Java Basics - Anfänger-Themen 7
M JavaFX-Übung Autospiel Java Basics - Anfänger-Themen 4
M JavaFX: Fenster bleibt weiß Java Basics - Anfänger-Themen 3
J Aktuelle Zeit in einer JavaFX Anwendung aktualisieren lassen Java Basics - Anfänger-Themen 4
L JavaFx ListView rechts abgeschnitten Java Basics - Anfänger-Themen 0
I Javafx Tabpane Reiter blockieren Java Basics - Anfänger-Themen 1
S JavaFX Beginneraufgabe Java Basics - Anfänger-Themen 1
W JavaFX import Fehler/Zellularautomaten Java Basics - Anfänger-Themen 1
Spencer Reid JavaFX Memory Thread.sleep Java Basics - Anfänger-Themen 1
UnknownInnocent mit javafx button erstellen Java Basics - Anfänger-Themen 1
U Javafx Array aus Buttons Java Basics - Anfänger-Themen 2
D JavaFX Vererbung Java Basics - Anfänger-Themen 2
E JAvaFX: Verschiedene Panels nach Klick auf Node des TreeView anzeigen Java Basics - Anfänger-Themen 0
K Erste Schritte JavaFX - wie von "externer" Klasse auf Methoden des Controllers zugreifen Java Basics - Anfänger-Themen 2
J JavaFX -> SocketIO -> Thread -> Update Label Java Basics - Anfänger-Themen 13
D JavaFX, Verweis auf Datei im Projekt Java Basics - Anfänger-Themen 0
M JavaFX in Swing-Applikationen einbetten Java Basics - Anfänger-Themen 5
M JavaFX: Problem mit der TableView Java Basics - Anfänger-Themen 0
P JavaFX ohne FXMLLoader Java Basics - Anfänger-Themen 3
K JavaFX UI controls Java Basics - Anfänger-Themen 1
B Farbverlauf erstellen ohne Javafx, AWT usw.? Java Basics - Anfänger-Themen 34
H Best Practice JavaFX TableView mit Zell-Rahmen anstelle von Zeilen-Balken Java Basics - Anfänger-Themen 1
M Ausgabe eines Arrays auf Label (Javafx) Java Basics - Anfänger-Themen 4
K Threads Multithread in JavaFx Java Basics - Anfänger-Themen 11
R Threads in JavaFX Java Basics - Anfänger-Themen 3
N JavaFX - (Controller) - Klasse verkleinern Java Basics - Anfänger-Themen 8
U JavaFX eine Vbox Instanz pro Pane? Java Basics - Anfänger-Themen 2
Spencer Reid JavaDoc zu JavaFx hinzufügen Java Basics - Anfänger-Themen 1
V wie kann man am einfachsten für ein Element der JavaFX die Umrandung aktiwieren ? auch ohne css ? Java Basics - Anfänger-Themen 4
D OOP JavaFX objektorientiert Java Basics - Anfänger-Themen 2
V Interface ich schäme mich das zu fragen, aber ich schaff nicht ein Text zu zentrieren :( [javaFX] Java Basics - Anfänger-Themen 6
P JavaFX - Komponenten skalieren Java Basics - Anfänger-Themen 16
P JavaFX Textfelder geben immer null zurück Java Basics - Anfänger-Themen 8
P JavaFX TextArea.setText Java Basics - Anfänger-Themen 13
F javafx.fxml.LoadException: Root hasn't been set. Java Basics - Anfänger-Themen 0
J JavaFX aus Java-Application heraus starten Java Basics - Anfänger-Themen 7
T Swing, SWT oder JavaFX Java Basics - Anfänger-Themen 8
S [JavaFX 2.1] - Eigene Sprachauswahl? Java Basics - Anfänger-Themen 4
D Javafx XYChart Variable in Schleife erzeugen? Java Basics - Anfänger-Themen 18
E JavaFX und Java auf Kommandozeile compilen Java Basics - Anfänger-Themen 2
J Webanwendung JavaFX Java Basics - Anfänger-Themen 4
Povlsen84 [javafx] Zusammenarbeit mit Tomcat Java Basics - Anfänger-Themen 4
J Allgemeines Problem mit Klassen Java Basics - Anfänger-Themen 2
U Problem mit dem initialisieren meines Strings in einer Schleife Java Basics - Anfänger-Themen 4
amgadalghabra algorithmisches Problem Java Basics - Anfänger-Themen 19
J Traveling Salesman Problem [Arrays] Java Basics - Anfänger-Themen 9
R ArrayList Problem Java Basics - Anfänger-Themen 6
InfinityDE Problem mit Datenübergabe an Konstruktor Java Basics - Anfänger-Themen 7
C RegEx Problem Java Basics - Anfänger-Themen 4
J Anfänger TicTacToe, Problem bei Gewinnoption, sowohl Unentschieden Java Basics - Anfänger-Themen 8
E Taschenrechner GUI Problem mit Fehlerhandling Java Basics - Anfänger-Themen 6
M Input/Output Fallunterscheidung Problem Java Basics - Anfänger-Themen 17
P Problem beim Überschreiben einer vererbten Methode Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Anzeige

Neue Themen


Oben