我试图使用像这样的本机查询从我的java spring服务器调用存储过程:
@Query(value =
"SELECT * FROM my_function(?1, ?2, ?3, ?4, ?5, ?6 ,?7, ?8, ?9, ?10 , ?11, ?12, ?13, ?14)",
nativeQuery = true)
List<Object> findByFilters(*14 input parameters here*);
我稍后在我的服务中填写此对象列表,并将其传递给控制器类,我通过使用可选参数的URL来调用它。 现在,当所有参数都具有实际值时,一切正常并且正确返回我期望的结果。 但是当一些参数为null(或者所有参数都是)时,我得到:
[2013/09/25 14:01:44] [org.hibernate.util.JDBCExceptionReporter] [WARN ] SQL Error: 0, SQLState: 42883
[2013/09/25 14:01:44] [org.hibernate.util.JDBCExceptionReporter] [ERROR] ERROR: function car_filters(bytea, bytea, bytea, bytea, bytea, bytea, bytea, bytea, bytea, bytea, bytea, bytea, bytea, bytea) does not exist
Hint: No function matches the given name and argument types. You might need to add explicit type casts.
知道为什么Hibernate会向我的Postgre服务器发送bytearrays而不是null吗?