首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >openjpa:值对象的参数异常非法

openjpa:值对象的参数异常非法
EN

Stack Overflow用户
提问于 2013-05-01 05:05:14
回答 1查看 878关注 0票数 1

有一个类似这样的NamedQuery:

代码语言:javascript
运行
复制
@NamedQuery(name = "getOpakOdeslaniForPartner", query = "select 

新的com.vo.OpakOdeslaniVO(opak.pocetPokusu,opak.idSekvenceOpakovani.idOpakSekvence,opak.idSekvenceOpakovani.sekvence)来自GmOpakOdeslani opak,GmPrijemce prij,其中opak.idTypZpravy.idTypZpravy = :typZpravy和opak.idPrijemce = prij,prij.idPrijemceTyp.idPrijemceTyp = :typPrijemce“

值对象有一个带有三个参数的构造函数。

有这样一个日志(WebLogic 11g、HP-UX):

代码语言:javascript
运行
复制
Caused by: <openjpa-1.1.1-SNAPSHOT-r422266:1172209 nonfatal user error> org.apache.openjpa.util.UserException: There was an error packing the projection and/or aggregate results of the query into result type "class com..vo.OpakOdeslaniVO".  See the nested Throwable exception for details.
    at org.apache.openjpa.kernel.ResultPacker.packUserType(ResultPacker.java:262)
    at org.apache.openjpa.kernel.ResultPacker.pack(ResultPacker.java:225)
    at org.apache.openjpa.kernel.QueryImpl$PackingResultObjectProvider.getResultObject(QueryImpl.java:1960)
    at com..service.OpakOdeslani.getOpakOdeslaniForPartner(.java:52)
    at sun.reflect.GeneratedMethodAccessor1516.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)

Caused by: java.lang.IllegalArgumentException
    at sun.reflect.GeneratedConstructorAccessor747.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
    at org.apache.openjpa.kernel.ResultPacker.packUserType(ResultPacker.java:235) ... 114 more

实际上我感觉卡住了,因为没有IllegalArgumentException的解释消息,我也找不到GeneratedConstructorAccessor747类的源代码。你知道这是怎么回事吗?该怎么解决这个问题?我猜一定是值对象构造函数或类有问题。

谢谢

EN

回答 1

Stack Overflow用户

发布于 2013-05-01 05:14:14

确保opak.pocetPokusu, opak.idSekvenceOpakovani.idOpakSekvence, opak.idSekvenceOpakovani.sekvence的类型与com.vo.OpakOdeslaniVO的构造函数提供的类型相同。

作为调试点,您可以只选择这些字段来确保返回数据吗?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16308954

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档