私を困惑させている問題があります。キーとして文字列を使用し、値として独自の KWIKattribute を使用するように宣言された HashMap があります。
private HashMap<String, KWIKattribute> attributes = new HashMap<String, KWIKattribute>();
sgml_xml_tag は文字列で、kattr は KWIKattribute のインスタンスです。
attributes.put(sgml_xml_tag, kattr);
KWIKattribute として値を取り戻そうとすると、
for (Map.Entry<String, KWIKattribute> e : attributes.entrySet()) {
String key = e.getKey();
KWIKattribute kattr = (KWIKattribute) attributes.get(e.getKey());
}
例外がスローされる
javax.faces.el.EvaluationException: java.lang.ClassCastException: java.lang.String cannot be cast to com.northgrum.adt.kwik.model.KWIKattribute
これはおそらくどこかでの単純な愚かなエラーであることはわかっていますが、それが何であるかはわかりません。助言がありますか?