не удалось привязать значение к параметру - PullRequest
0 голосов
/ 24 марта 2011

Я выполняю запрос в Java с использованием HQL и создаю параметр, который выглядит следующим образом: query.setParameter("month", month);

Переменная month представляет собой BigDecimal от 1 до 12. Однако переменная month былапередается функции, выполняющей этот запрос, как объект.Поэтому, когда он устанавливается как параметр, он рассматривается как объект.

Когда я запускаю запрос, я получаю эту ошибку:

15:46:48,878 INFO  [IntegerType] could not bind value '4' to parameter: 1; java.math.BigDecimal
15:46:48,878 ERROR [STDERR] java.lang.ClassCastException: java.math.BigDecimal
15:46:48,878 ERROR [STDERR]     at org.hibernate.type.IntegerType.set(IntegerType.java:41)
15:46:48,878 ERROR [STDERR]     at org.hibernate.type.NullableType.nullSafeSet(NullableType.java:136)
15:46:48,879 ERROR [STDERR]     at org.hibernate.type.NullableType.nullSafeSet(NullableType.java:116)
15:46:48,879 ERROR [STDERR]     at org.hibernate.param.NamedParameterSpecification.bind(NamedParameterSpecification.java:38)

«4» - это значение, сохраненное вмоя переменная месяца.Так что, очевидно, что-то не так с этим параметром.Что может быть причиной этого?

1 Ответ

0 голосов
/ 24 марта 2011

Я исправил это.Это была просто проблема при попытке добавить BigDecimal к постоянному числу в запросе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...