运行时错误 - 运行时错误的子类?

时间:2013-02-12 10:21:52

标签: java runtime

运行我的应用程序时出现以下错误堆栈:

java.lang.IllegalArgumentException: count parameter must be greater than zero
at myApplication.util.StatementUtil.expand(StatementUtil.java:83)
at myApplication.GetBananasByIdsQuery.getSQL(GetBananasByIds.java:49)
at myApplication.Query.executeQuery(Query.java:87)
at myApplication.BananasServiceJDBCImpl.get(BananasServiceJDBCImpl.java:181)
at myApplication.BananasResource.queryForBananas(BananasResource.java:127)

以下是BananasServiceJDBCImpl.get()中代码的一部分,错误来自:

List<BananasDataReply> requestedBananas = new GetBananasByNamesQuery(names).executeQuery();

所以,我的问题不是错误本身,而是我得到错误的原因。在我的应用程序中,Query由许多类扩展,如GetBananasByNamesQuery或GetBananasByIdsQuery,它们都扩展了getSQL方法。当我使用GetBananasByNamesQuery对象时,为什么GetBananasByIdsQuery.getSQL?应用程序是否可能在运行时“选择”错误的子类?还是有其他一些我看不到的问题?

1 个答案:

答案 0 :(得分:0)

我怀疑SQL函数count在预编译语句中使用,并获得零或负参数。

这很可能是由于为某些参数设置了错误的值,而在同一SQL中也可能是错误。