ОШИБКА Spring Процедура вызова JPA, имеющая только параметр OUT - PullRequest
0 голосов
/ 17 марта 2020

Я сталкиваюсь с ошибкой при вызове процедуры, имеющей только параметр 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;

Может кто-нибудь помочь мне найти причину

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