java.lang.classcastexception怎么解决_抛出奇怪的java.lang.ClassCastException
我正在试验JPA和Glassfish 4.0.
我写了这样的用户类(只是相关的部分,我不确定它是否编译):
public class User implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Basic(optional = false)
@Column(name = "id")
private Integer id;
@Basic(optional = false)
@NotNull
@Size(min = 1, max = 50)
@Column(name = "first_name")
private String firstName;
@JoinColumn(name = "country_id", referencedColumnName = "id")
@ManyToOne(optional = false)
private Country country;
public void setCountry(Country countryId) {
this.country = countryId;
}
}
我的TestController(只是相关部分):
@ManagedBean(name = "testController", eager = true)
@RequestScoped
public class TestController implements Serializable {
@EJB
private dk.iqtools.session.UserFacade userFacade;
public String Insert(){
factory = Persistence.createEntityManagerFactory(PERSISTENCE_UNIT_NAME);
EntityManager em = factory.createEntityManager();
Query cq = em.createQuery("select c from Country c where c.id = 302");
List countryList = cq.getResultList();
User user = new User();
user.setFirstName("Hans123");
user.setLastName("Knudsen333");
user.setCountry((Country)countryList.get(0));
user.setPassword("secret");
user.setYearOfBirth(1966);
user.setGender(1);
user.setEmail("haps@hfhfh.dk2243");
userFacade.create(user);
return "";
}
而我的Country bean只是一个简单的bean,位于:
dk.iqtools.entity
一般情况下它可以工作,但如果我在我的代码中遇到错误,我会一直收到以下错误:
Caused by: java.lang.ClassCastException:
dk.iqtools.entity.Country cannot be cast to dk.iqtools.entity.Country
at dk.iqtools.controller.TestController.Insert(TestController.java:65)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
令人不快的陈述是这样的:
user.setCountry((Country)countryList.get(0));
任何人都可以告诉我为什么会这样吗?如果一切按预期运行,则将用户插入数据库.但如果我为instanse尝试插入已存在的用户,我收到数据库错误.
下次通过我收到奇怪的例外.我无法理解为什么一个班级不能投入自己.
我必须重新启动我的GF实例才能摆脱它.
不是很像生产.
感谢您的任何意见.
java.lang.classcastexception怎么解决_抛出奇怪的java.lang.ClassCastException相关推荐
- java runtime异常如何解决_成都汇智动力-Java中常见的RunTime异常及异常详解
java.lang.ArithmeticException算术条件异常.譬如:整数除零等.java.lang.ArrayIndexOutOfBoundsException数组索引越界异常.当对数组的索 ...
- java 自定义异常 未回滚_抛出自定义异常,spring AOP事务不回滚的解决方案
spring AOP 默认对RuntimeException()异常或是其子类进行事务回滚,也就是说 事务回滚:throw new RuntimeException("xxxxxxxxxxx ...
- java io broken pipe解决_报错!!java.io.IOException: 断开的管道 中文报错?Broken pipe?这次发生的报错不影响业务,已有解决方案...
org.apache.catalina.connector.ClientAbortException: java.io.IOException: 断开的管道 at org.apache.catalin ...
- weblogic启动后,抛出大量的java.lang.ArrayIndexOutOfBoundsException异常
weblogic启动后,抛出大量的java.lang.ArrayIndexOutOfBoundsException异常 参考文章: (1)weblogic启动后,抛出大量的java.lang.Arra ...
- java异常没有catch住_今天才真正了解Java的异常处理
异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的. 异常发生的原因有很多,通常包含以下几大类: 1.用户输入了非法数据. 2.要打开的文件不存在. 3.网络通信时连接中断 ...
- java 504错误怎么解决_求助java.lang.NoClassDefFoundError怎么解决,报错信息如下
求助java.lang.NoClassDefFoundError怎么解决,报错信息如下 四月 14, 2018 11:03:07 上午 org.apache.catalina.startup.Embe ...
- java exception e抛异常_抛出的异常在上层catch到,但是e.getMessage()为NULL,为什么会这样?...
1.在一个代码里catch到Exception,throw new Exception(e.getMessage()); 在上级代码里catch到抛出的Exception,想得到错误的信息,结果发现e ...
- java java 检查型异常_如何整合Java中的有效性检查和异常抛出?
我正在实现一个接口,该接口定义了一种方法,如果参数无效,该方法可以引发异常.有效参数的构成取决于实现类.该接口还定义了一个isValid()方法,该方法可用于检查参数,但返回布尔值而不是引发异常.我发 ...
- java 是否继续_Java异常被抛出或被捕获之后,代码是否继续执行的问题
在写程序的时候,我们经常被教导,要对异常的信息进行处理,哪里该抛出异常.但是,更多的时候,我们只是模仿异常的抛出,却不知道为什么要这样抛异常(被catch了?被向上抛了?后面的代码是否执行了?). 接 ...
最新文章
- 「游戏圈地震级消息」687亿美元,微软收购游戏巨头动视暴雪
- 判断变量是否为数组的几种方法
- 18岁学计算机专业好不好,我18岁,学计算机编程,请问有没有什么书或者方法可以提高记忆力的?...
- Ubuntu 安装 Vue.js
- C++ 中结构体的继承关系
- 转:Java面试题以及答案精选(架构师面试题)-数据库专题
- JAVA引用aar_AndroidStudio之如何引入和使用aar包
- django进阶03静态文件和模板
- HTTPS是对称加密还是非对称加密?
- 阿里云 磁盘写保护 处理
- WPF 重定向DLL stdout
- LINUX SHELL脚本多行注释
- 图解Python编程:从入门到精通系列教程(附全套速查表)
- 动平衡仪制作方法总结
- 笔记本计算机内部部件,笔记本内部硬件构造有哪些
- 多个excel文件合并到一个文件中的多个sheet表中
- 2021牛客多校6 I Intervals on the Ring
- [OCCT] OCC官方示例介绍
- Python基础项目:学生信息管理系统
- 如何查看文件的 MD5值?