Cast Exception bei JTable

Status
Nicht offen für weitere Antworten.

zilti

Bekanntes Mitglied
Ich habe folgenden Code aus dem JTable-Tutorial übernommen:
Code:
		// Event erstellen
		TableModelEvent e = new TableModelEvent(this, 0, index, TableModelEvent.ALL_COLUMNS, TableModelEvent.INSERT);
		// Nun das Event verschicken
	      for( int i = 0, n = listeners.size(); i<n; i++ ){
	    	  ((TableModelListener)listeners.get( i )).tableChanged( e );
	      }
Er meldet mir dann folgenden Fehler:
Exception in thread "Thread-4" java.lang.ClassCastException: java.lang.Integer cannot be cast to javax.swing.event.TableModelListener
at chat.UserListModel.updateUserlist(UserListModel.java:27)
at chat.LgcChat.setUserlist(LgcChat.java:84)
at functions.ReadUserlist.run(ReadUserlist.java:32)
at java.lang.Thread.run(Unknown Source)
Was ist denn da falsch?
 

HoaX

Top Contributor
da hat wohl irgendwer einen integer in deine listeners-liste eingetragen ... was sonst
 

zilti

Bekanntes Mitglied
Hier, hier motzt er:
Code:
for( int i = 0, n = listeners.size(); i<n; i++ ){
	    	  ((TableModelListener)listeners.get( i )).tableChanged( e );
	      }
und das IST nun mal so angewendet wie im Tutorial. Dann hat halt das Tutorial einen Fehler.
Die einzigen Orte, an denen dieses listeners geändert wird, sind genau dieselben wie im Tutorial.
Gibt es denn keine Möglichkeit, den Inhalt der ganzen JTable zu ersetzen, ohne ein TableModel zu erstellen?
 

Murray

Top Contributor
Der Code ist ja auch OK; wenn in der Zeile allerdings die Exception java.lang.ClassCastException: java.lang.Integer cannot be cast to javax.swing.event.TableModelListener geworfen wird, dann hat listeners.get(i) auf jeden Fall einen Integer geliefert - und igrendwie muss der in die Liste reingekommen sein. Poste doch mal den Code, in dem etwas in listeners eingetragen wird.
 

zilti

Bekanntes Mitglied
Hier ist des Unding:
Code:
package chat;

import java.util.Vector;

import javax.swing.event.TableModelEvent;
import javax.swing.event.TableModelListener;
import javax.swing.table.TableModel;

public class UserListModel implements TableModel {
	private Vector userdaten = new Vector();
	private Vector listeners = new Vector();

	public void updateUserlist(UserDataClass userdata)
	{
		// Usernamen einfügen
		userdaten.clear();
		int ind = userdata.getUsername().length;
		for(int i = 0; i<ind; i++)
		{
			userdaten.add(userdata.getRow(i));
		}
		int index = userdaten.size();
		// Event erstellen
		TableModelEvent e = new TableModelEvent(this, 0, index, TableModelEvent.ALL_COLUMNS, TableModelEvent.INSERT);
		// Nun das Event verschicken
	      for( int i = 0, n = listeners.size(); i<n; i++ ){
	    	  ((TableModelListener)listeners.get( i )).tableChanged( e );
	      }
		
	}
	
	@Override
	public void addTableModelListener(TableModelListener arg0) {
		listeners.add( 1 );
		// TODO Auto-generated method stub
		
	}

	@Override
	public Class<?> getColumnClass(int arg0) {
		// TODO Auto-generated method stub
		switch(arg0)
		{
		case 0: return String.class;
		case 1: return String.class;
		case 2: return int.class;
		default: return null;
		}
	}

	@Override
	public int getColumnCount() {
		// TODO Auto-generated method stub
		return 3;
	}

	@Override
	public String getColumnName(int column) {
		// TODO Auto-generated method stub
		switch( column ){
        case 0: return "Username";
        case 1: return "Clan";
        case 2: return "Time";
        default: return null;
		}
	}

	@Override
	public int getRowCount() {
		// TODO Auto-generated method stub
		return userdaten.size();
	}

	@Override
	public Object getValueAt(int arg0, int arg1) {
		// TODO Auto-generated method stub
		UserDataClass userdata = new UserDataClass();
		switch(arg1)
		{
		case 0: return userdata.getRow(arg0)[0];
		case 1: return userdata.getRow(arg0)[1];
		case 2: return userdata.getRow(arg0)[2];
		default: return null;
		}
	}

	@Override
	public boolean isCellEditable(int arg0, int arg1) {
		// TODO Auto-generated method stub
		return false;
	}

	@Override
	public void removeTableModelListener(TableModelListener arg0) {
		listeners.remove( 1 );
		// TODO Auto-generated method stub
		
	}

	@Override
	public void setValueAt(Object arg0, int arg1, int arg2) {
		// TODO Auto-generated method stub
		
	}
	
}
 

Murray

Top Contributor
Der Übeltäter:
Code:
@Override
   public void addTableModelListener(TableModelListener arg0) {
      listeners.add( 1 );
      // TODO Auto-generated method stub
      
   }
//EDIT: da war der Slater wieder schneller ...
 
B

Beni

Gast
Code:
   @Override
   public void addTableModelListener(TableModelListener arg0) {
      listeners.add( 1 );
      // TODO Auto-generated method stub
      
   }
Da fügst eine Eins (1) in die Liste? :bahnhof:

[Edit: Huch, da war ich zu langsam]
 

zilti

Bekanntes Mitglied
Des ist aber im Tutorial auch so, ne? Ach, logo, da muss ich listeners.add( arg0 ) einfügen stimmts? *gg*
 
G

Gast

Gast
Hi,

und noch was:
Warum heißt die Klasse 'UserListModel' und implementiert TableModel? Wäre da nicht UserTableModel ein besserer Name? Schließlich handelt es sich nicht um ein ListModel, oder sehe ich das falsch? Nur zur Info.

Grüße,
Andreas
 

zilti

Bekanntes Mitglied
Ich habe die so genannt, weil ich mehrere von denen brauche. Diese ist halt für eine Userliste, also UserListModel.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Exception cast to CORBA.Object Java Basics - Anfänger-Themen 2
A Seltsame Class Cast Exception Java Basics - Anfänger-Themen 3
D Class Cast Exception Java Basics - Anfänger-Themen 5
M Class Cast Exception Java Basics - Anfänger-Themen 7
H Cast von Float nach String klappt nicht Java Basics - Anfänger-Themen 12
berserkerdq2 Habe ein Spiel entwickelt, dass immer in der 4 Runde einen cast-Fehler erhält Java Basics - Anfänger-Themen 3
TimoN11 Frage zu Java-Vererbung (Cast) Java Basics - Anfänger-Themen 5
O Cast Java Basics - Anfänger-Themen 16
R Cast java.awt.Graphics Java Basics - Anfänger-Themen 7
N Simpler cast? Java Basics - Anfänger-Themen 9
D Java Eclipse cannot be cast to java.awt.event.ItemListener Java Basics - Anfänger-Themen 3
O Kleine Frage zu cast Java Basics - Anfänger-Themen 3
A Ohne Cast auf Methode zugreifen? Java Basics - Anfänger-Themen 4
J Datentypen Cast von int zu char führ zu 'Sonderzeichen' Java Basics - Anfänger-Themen 2
K Cast bei equals Java Basics - Anfänger-Themen 2
N Vererbung Verschiedene Subclasses nach cast zur Superclass unterscheiden Java Basics - Anfänger-Themen 9
N Cast eines Objektes in eine Hashmap Java Basics - Anfänger-Themen 13
K Date cannot be cast to java.lang.Integer Java Basics - Anfänger-Themen 4
R Variablen Möglich?: Cast einer Referenzvariable auf den Typ seines Objektes Java Basics - Anfänger-Themen 19
S Datentypen Reflection Cast anhand eines Strings? Java Basics - Anfänger-Themen 7
M ListIterator + Cast Java Basics - Anfänger-Themen 12
D Wie "unchecked cast" hier vermeiden? Java Basics - Anfänger-Themen 2
M Cast nach int Java Basics - Anfänger-Themen 8
M object cast auf double Java Basics - Anfänger-Themen 2
I double (cast) rundungsproblem Java Basics - Anfänger-Themen 8
M Datentypen java.util.Arrays$ArrayList cannot be cast to [Ljava.lang.String; Java Basics - Anfänger-Themen 11
L Type/Cast Problem Java Basics - Anfänger-Themen 6
E Klassen ClassCastException bei gleichnamigem: paket.klasse cannot be cast to paket.klasse Java Basics - Anfänger-Themen 10
T Datentypen byte -Division..mal gehts mit cast mal ohne Java Basics - Anfänger-Themen 5
M Collections Cast bei ArrayList (List) Java Basics - Anfänger-Themen 2
T Datentypen default ist int, cast zu byte nötig... Java Basics - Anfänger-Themen 2
C Generics und Cast Java Basics - Anfänger-Themen 5
M Polymorphie Cast:Verständnis und Ausführung Java Basics - Anfänger-Themen 10
E Datentypen type cast problem (int, byte,) Java Basics - Anfänger-Themen 5
A Cast ohne Warnung bei Generics Java Basics - Anfänger-Themen 2
J cast zu int immer 0.. Java Basics - Anfänger-Themen 6
I java.lang.String cannot be cast to OBJEKT Java Basics - Anfänger-Themen 8
A Object -> String mit valueOf, toString oder cast ? Java Basics - Anfänger-Themen 6
M Cast vermeiden Java Basics - Anfänger-Themen 11
M Generics - "Unchecked cast"-Warnung wegbekommen Java Basics - Anfänger-Themen 4
K Cast-Operator Java Basics - Anfänger-Themen 3
Guybrush Threepwood Inhalt eines Strings für cast verwenden Java Basics - Anfänger-Themen 6
V Cast-Operator Java Basics - Anfänger-Themen 2
kulturfenster Cast Probleme Java Basics - Anfänger-Themen 2
V Frage zu final und Class bzw. Class.cast Java Basics - Anfänger-Themen 5
F paket.Klasse cannot be cast to paket.Klasse Java Basics - Anfänger-Themen 6
J Cast-Problem Java Basics - Anfänger-Themen 7
R variabler cast Java Basics - Anfänger-Themen 5
G cast von Char nach int Java Basics - Anfänger-Themen 3
S "Unchecked Cast" Warnung Java Basics - Anfänger-Themen 3
G cast von int To Integer? Java Basics - Anfänger-Themen 3
M Double -> Int Cast funktioniert nicht. Java Basics - Anfänger-Themen 5
vogella Cast from Collection.toArray to String[] Java Basics - Anfänger-Themen 2
B Cast explizit verbieten Java Basics - Anfänger-Themen 10
E Cast von Object zu int (Array) Java Basics - Anfänger-Themen 19
W Java Cast bei Vectoren Java Basics - Anfänger-Themen 10
A Cast Generics Java Basics - Anfänger-Themen 6
J Cast zwischen zwei Unterklassen der selben Oberklasse. Java Basics - Anfänger-Themen 7
B Byte übergeben ohne cast? Java Basics - Anfänger-Themen 12
I Exception wird gefangen, aber trotzdem in Error Log? Java Basics - Anfänger-Themen 10
W Null-Pointer Exception beim Programmstart Java Basics - Anfänger-Themen 8
Ostkreuz String Exception Java Basics - Anfänger-Themen 8
Fiedelbambu Exception in Application constructor Java Basics - Anfänger-Themen 3
S leeres Array statt Null Pointer Exception ausgeben Java Basics - Anfänger-Themen 20
F abbruch Exception lässt sich nicht erstellen Java Basics - Anfänger-Themen 2
U Warum kriege ich hier eine nullpointer exception, sehe den Fehler nicht (swing) Java Basics - Anfänger-Themen 1
F Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 11 at main.main(main.java:11) Java Basics - Anfänger-Themen 2
M Exception in thread "main" java.util.NoSuchElementException Java Basics - Anfänger-Themen 2
N Exception beim Verwenden von Arraylist? Java Basics - Anfänger-Themen 10
B Compiler-Fehler Fehlermeldung Exception in thread, falsche Eingabewert Java Basics - Anfänger-Themen 2
S JavaKara Null Exception Error Java Basics - Anfänger-Themen 4
T Eigene Exception - ohne werfen abfangen Java Basics - Anfänger-Themen 2
LiFunk Exception: es dürfen nur Nummern eingelesen werden Java Basics - Anfänger-Themen 6
low_in_the_head Eigene Exception nutzen Java Basics - Anfänger-Themen 4
1 Exception Java Basics - Anfänger-Themen 2
S Kriege Fehler "Exception in thread" beim Benutzen von SubStrings. Java Basics - Anfänger-Themen 2
I JAX-RS Exception Handling Java Basics - Anfänger-Themen 4
L Meine erste eigene Exception Klasse Java Basics - Anfänger-Themen 10
J null exception Array Java Basics - Anfänger-Themen 5
H Frage zu Throw Exception Java Basics - Anfänger-Themen 2
O Exception in thread "main" java.lang.ArithmeticException: / by zero Java Basics - Anfänger-Themen 4
M Wie kann ich bei int-Variablen im exception handler auf bestimmte Strings reagieren? Java Basics - Anfänger-Themen 5
C Exception-Frage Java Basics - Anfänger-Themen 3
B Exception in thread "AWT-EventQueue-0" java.util.ConcurrentModificationException Java Basics - Anfänger-Themen 8
I Exception bei Button mit wait() und notifyAll() Java Basics - Anfänger-Themen 3
N Wie teste ich eine geworfene Exception? Java Basics - Anfänger-Themen 8
R Methoden ArrayList clonen wirft exception Java Basics - Anfänger-Themen 3
D Scanner- Exception NoSuchElementException Java Basics - Anfänger-Themen 2
N Exception werfen bei falscher Datumseingabe Java Basics - Anfänger-Themen 14
A Exception handeling mit finally und objektreferenzen Java Basics - Anfänger-Themen 6
D Frage zu Strings einer Exception Java Basics - Anfänger-Themen 4
S Exception Java Basics - Anfänger-Themen 2
J Exception-Aufgabe Java Basics - Anfänger-Themen 8
S Verwenden von throw Exception an der Funktion Java Basics - Anfänger-Themen 2
R Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException Java Basics - Anfänger-Themen 5
S Compiler-Fehler Exception in thread "main" java.lang.Error: Unresolved compilation problem: Java Basics - Anfänger-Themen 6
Z Fragen zu Exception (Throws/throw) Java Basics - Anfänger-Themen 7
OSchriever Exception für Abbrechen-Schaltfläche JOptionpane Java Basics - Anfänger-Themen 9
J Dateien in Verzeichnissen rekursiv auflisten wirft Exception Java Basics - Anfänger-Themen 4
J Exception unreachable Java Basics - Anfänger-Themen 12

Ähnliche Java Themen

Neue Themen


Oben