입니다
,451,515,되는 SQLException 쿼리를 실행 발생
는 제외 ge_equip_type 외 [et.eqt_desc 행을 선택하는 맵핑 :Query query = em.createNativeQuery("select et.eqt_desc from ge_equip_type et",GeEquipType.class); final List<String> equipList = query.getResultList();
따르기 던져진 예외 ION] javax.ejb.EJBException : 중첩 예외 : javax.persistence.PersistenceException : ge_equip_type et
에서 et.eqt_desc를 선택하도록 매핑 된 쿼리 실행 중 SQLException이 발생했습니다. ..
..................
발생 원인 : java.sql.SQLException : 잘못된 열 이름 oracle.jdbc.driver.OracleStatement.getColumnIndex (OracleStatement. 자바 : 3651) oracle.jdbc.driver.OracleResultSetImpl.findColumn (OracleResultSetImpl.java:2543) 에서 com.sap.engine.services.dbpool.wrappers.ResultSetWrapper.findColumn (ResultSetWrapper.java:87에서)
에서 COM .sap.engine.services.orpersistence.query.EntityResultFactory $ NamedEntityResult.getColumnNumber (EntityResultFactory.java:239)
com.sap.engine.services.orpersistence.core.PrimaryKey.createFromEntityResult (PrimaryKey.java:246)
at com.sap.engine.services.orpersistence.core.StoreManager.processEntityRow (StoreManager.java:1631)
com.sap.engine.services.orpersistence.core.StoreManager.resultSet2ObjectList에서 (StoreManager.java:1602) com.sap.engine.services.orpersistence.core.StoreManager.executeQueryWithoutProcessingEntityInfos에서
(StoreManager.java:1120) com.sap.engine.services.orpersistence.core.PersistenceContextImpl.executeQuery에서 com.sap.engine.services.orpersistence.core.StoreManager.executeQuery (StoreManager.java:1141) (PersistenceContextImpl.java:937)에서
GeEquipType 클래스
package com.jnj.e2.cpl.orm;
import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Version;
@Entity
@Table(name = "GE_EQUIP_TYPE")
@SequenceGenerator(name = "SEQ_EQT", sequenceName = "SEQ_EQT", allocationSize = 1, initialValue = 1)
@SuppressWarnings("serial")
public class GeEquipType implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "SEQ_EQT")
@Column(name = "EQT_ID")
private Long uid;
@Column(name = "EQT_CODE")
private String code;
@Column(name = "EQT_DESC")
private String description;
@Column(name = "EQT_CLEAN_VAL_SPAN_DAYS")
private Long cleaningValiditySpan;
@Column(name = "EQT_INDC_PRODUCT_YN")
private String inDirectContactWithProduct;
@ManyToOne
@JoinColumn(name = "EQT_PRT_ID")
private GePrinterType printerType;
@Version
@Column(name = "EQT_OLV")
private Long version;
public Long getUid() {
return uid;
}
public void setUid(Long uid) {
this.uid = uid;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public Long getCleaningValiditySpan() {
return cleaningValiditySpan;
}
public void setCleaningValiditySpan(Long cleaningValiditySpan) {
this.cleaningValiditySpan = cleaningValiditySpan;
}
public String getInDirectContactWithProduct() {
return inDirectContactWithProduct;
}
public void setInDirectContactWithProduct(String inDirectContactWithProduct) {
this.inDirectContactWithProduct = inDirectContactWithProduct;
}
public GePrinterType getPrinterType() {
return printerType;
}
public void setPrinterType(GePrinterType printerType) {
this.printerType = printerType;
}
public Long getVersion() {
return version;
}
public void setVersion(Long version) {
this.version = version;
}
@Override
public int hashCode() {
return 31 + (uid == null ? 0 : uid.hashCode());
}
@Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
} else if (obj == null || getClass() != obj.getClass()) {
return false;
}
final GeEquipType that = (GeEquipType) obj;
if (uid == null) {
if (that.uid != null) {
return false;
}
} else if (!uid.equals(that.uid)) {
return false;
}
return true;
}
}
참고 : 나는 모든 열 또는 기본 키 열이 아닌 문자열 열을 가져올 때 쿼리가 작동합니다.
누구든지 도와주세요.
다음을 실행하면 결과를 볼 수 있습니까? '선택 et.eqt_desc ge_equip_type et' – user75ponic
백엔드 값을 얻는 중 ... 나는 nativequery 메신저를 사용하여 다음과 같이 예외 메 시지를 실행합니다. – sab
사용중인 JPA에 대해 언급하고 예외를 제공합니다. – user75ponic