![](/img/trans.png)
[英]Artifact com.oracle.toplink:toplink:jar:10.1.3 not found
[英]JPA constructor class [Emp] not found - oracle.toplink.essentials.exceptions.EJBQLException
这是这个问题的延续
我命名为
select new Emp(o.empNo, o.empName) from Emp o
和构造函数定义为
public Emp(String empNo, String empName) {
this.empNo= empNo;
this.empName= empName;
}
执行时出现错误
Exception [TOPLINK-8013] (Oracle TopLink Essentials - 2.1
(Build b52-fcs (09/24/2008))):
oracle.toplink.essentials.exceptions.EJBQLException
Exception Description: Error compiling the query [Emp.findAll:
select new Emp(o.empNo, o.empName) from Emp o ], line 1, column 9:
constructor class [Emp] not found.
SELECT列表中可以使用构造函数来返回一个或多个Java实例。 指定的类不需要是实体,也不必映射到数据库。 构造函数名称必须完全合格。
SELECT NEW com.company.PublisherInfo(pub.id, pub.revenue, mag.price)
我设法解决了该错误,可能对其他人有用。
在namedQuery中而不是
select new Emp(o.empNo, o.empName) from Emp o
提供完全限定的类名,即<packagename>.<classname>
select new test.entity.Emp(o.empNo, o.empName) from Emp o
谢谢。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.