当前页面: 开发资料首页 → J2EE 专题 → 实在找不到答案了,EJB返回Collection错误
实在找不到答案了,EJB返回Collection错误
摘要: 实在找不到答案了,EJB返回Collection错误
在本地使用JavaBean访问远程实体Ejb返回的Collection记录集到本地后用在System.out.println((String)temp.next());强制转换就会报ClassCastException异常,用在System.out.println(temp.next().toString());就会打印出长长一串乱码,好像是没序列化一样,用int和其它类型也都有这问题?请问题这代码有什么问题?
//JavaBean部份代码
public String selectAllUser()
{
String result = "没有找到任何记录";
try
{
Collection c = umHome.findAllUser();
System.out.println("selectUser()获得用户记录集");
Iterator temp=c.iterator();
while(temp.hasNext())
{
System.out.println((String)temp.next());//此处出错
}
}
catch(Exception e)
{
System.out.println("selectUser()无法获得用户记录集...");
e.printStackTrace();
}
return "";
}
//Bean管理持久性EJB部份代码
public Collection ejbFindAllUser() throws FinderException,SQLException
{
//return selectAllUser();
Collection list = new ArrayList();
for(int i=0; i<5; i++)
{
list.add("Test String");
}
return list;
}
System.out.println((String)temp.next());//此处出错
System.out.println(temp.next().getClass()) 看看什么类型
你打印的是一个对象,应该打印对象中的一些成员吧.
那要看你的对象中有些什么了.