Я сталкиваюсь с ошибкой при вызове процедуры, имеющей только параметр OUT из пружины JPA. Вот код класса Entity:
@Entity
@Table(name = "M_PRODUCTS")
@NamedStoredProcedureQueries({ @NamedStoredProcedureQuery(
name = "getProductNo",
procedureName = "usp_get_product_no",
parameters = {
@StoredProcedureParameter(mode = ParameterMode.OUT, name = "productNo", type = Long.class) }) })
public class ProductEntity implements Serializable {
Класс репозитория:
@Repository
public interface ProductRepository extends JpaRepository<ProductEntity, UUID> {
@Procedure(name = "getProductNo")
Long getProductNo();
}
Я попытался изменить режим параметра на INOUT и по-прежнему возвращать ту же ошибку.
Вот это сообщение об ошибке:
org.springframework.dao.InvalidDataAccessApiUsageException: OUT/INOUT parameter not available: 1; nested exception is java.lang.IllegalArgumentException: OUT/INOUT parameter not available: 1
Сама процедура не имеет ошибки, когда я пытался выполнить pl / sql
CREATE PROCEDURE usp_get_product_no(productNo OUT NUMBER) IS BEGIN .... END;
declare
v_product_no number;
begin
usp_get_product_no(v_product_no);
DBMS_OUTPUT.PUT_LINE('v_product_no ' || v_product_no);
end;
Может кто-нибудь помочь мне найти причину