使用Liferay Service Builder实现多对多映射时的ClassCastException

使用Liferay Service Builder实现多对多映射时的ClassCastException,liferay,liferay-6,Liferay,Liferay 6,我正在尝试使用liferay service builder实现多对多映射。我发现有一个博客解释了如何实现它,并提供了一个war文件。 您可以从下载 它成功部署,还允许您创建学生和课程以及它们的映射 当我尝试使用基于学生id获取课程时,添加了一些虚拟数据 List<Course> studentCourseList = CourseLocalServiceUtil.getStudentCourses(xxxx) 我得到了java.lang.ClassCastException:co

我正在尝试使用liferay service builder实现多对多映射。我发现有一个博客解释了如何实现它,并提供了一个war文件。 您可以从下载

它成功部署,还允许您创建学生和课程以及它们的映射

当我尝试使用基于学生id获取课程时,添加了一些虚拟数据

List<Course> studentCourseList = CourseLocalServiceUtil.getStudentCourses(xxxx)
我得到了java.lang.ClassCastException:com.meera.db.model.impl.CourseImpl无法转换为com.meera.db.model.courseException

我已经检查了列表的大小,它给出了正确的计数。所以,对发生强制转换的列表的迭代给出了上述异常


非常感谢您的帮助。

请参阅我已检查的课程,没有重复的课程。在列表上进行迭代时会发生错误。当您无法将类型转换为合法接口时,您肯定会在类路径上拥有该接口两次。只是错误消息不能区分不同的版本。VM尝试向另一个接口进行类型转换,但只打印名称,而不打印可用接口的类加载器标识。再看看,再仔细看看。我保证你至少有两次课程界面。检查全局类路径、WEB-INF/classes文件夹和WEB-INF/lib中的所有JAR。你最终会找到他们的
for(Course course : studentCourseList){
 ...
 }