我有 2 个不同的 Java 项目,一个有 2 个类:dynamicbeans.DynamicBean2
和dynamic.Validator
.
在另一个项目中,我动态加载这两个类并将它们存储在Object
class Form {
Class beanClass;
Class validatorClass;
Validator validator;
}
然后我继续使用创建一个Validator
对象validatorClass.newInstance()
并将其存储在上面,validator
然后我创建一个 bean 对象以及使用beanClass.newInstance()
并将其添加到会话中。
portletRequest.setAttribute("DynamicBean2", bean);
在Form
项目的生命周期中,我调用validator.validate()
它从会话加载先前创建的 bean 对象(我正在运行 Websphere Portal Server)。当我尝试将此对象转换回 aDynamicBean2
时,它会因 ClassCastException 而失败。
当我使用将对象拉出会话时
faces.getApplication().createValueBinding("#{DynamicBean2}").getValue(faces);
并使用.getClass()
I get来检查它的类别dynamicbeans.DynamicBean2
。这是我想将其转换为的类,但是当我尝试得到 ClassCastException 时。
我得到这个有什么理由吗?