我需要从 JPA 调用 Sybase 存储过程并将值返回到将用于填充另一个持久对象的瞬态对象。
这就是我所做的:
@Entity
public class CBSCustomer {
String cpr;
<--snipped-->
@Id
@Transient
public String getCpr() {
return cpr;
}
<---snipped-->
}
在 bean 中调用 SP:
List<CBSCustomer> fetchedCustomerList = getEmPhoenix().createNativeQuery("{call sp_name(?)}", CBSCustomer.class).setParameter(1, cprInput).getResultList();
if (fetchedCustomerList.size() > 0) {
CBSCustomer cbsCustomer = ((CBSCustomer)fetchedCustomerList.get(0));
setDisabled(true);
}
不幸的是,我不断收到抱怨列名的错误,即“x 的列名无效”,其中 x 是我在 CBSCustomer 中的字段的占位符。