を含むRCPアプリケーションを開発していますTableViewer。これはRCPアプリでの私の最初の試みなので、これがばかげた質問である場合は申し訳ありません。コンテンツプロバイダーのinputChanged方法に問題があります。テーブルの入力オブジェクトはStringsです。これまでのところ、メソッドは次のとおりです(Scenarioは私のアプリのクラスであり、displayDataメソッドがあります)。
public void inputChanged(Viewer v, Object oldInput, Object newInput) {
if (newInput != null) {
String s = (String)newInput;
Scenario.displayData(s);
}
}
実行すると、次の例外が発生します。
java.lang.ClassCastException:[Ljava.lang.String; java.lang.Stringにキャストできません
クラス名はどのようにして文字化けしましたか?を使用してクラス名を印刷してみましたnewInput.getClass().getName()が、文字化けしたバージョンが表示されました。