1
PostgreSQL 데이터베이스의 테이블 에 current_status
열거 형 필드가 있습니다. Restful 클라이언트에서 열거 된 PostgreSQL 유형 검색
CREATE TYPE et_status AS ENUM
('PENDING', 'SUCCESS', 'LATE', 'EARLY', 'FAILED', 'IN_PROGRESS', 'EXPIRED');
제가
서버 측에서 열거 타입을 추가하고 해당 필드 유형 및 게터와 세터 일부 변경 : 같이 열거 정의된다.@Entity
@Table(name = "history")
@XmlRootElement
@NamedQueries({ ... })
public class History implements Serializable {
public enum StatusType implements Serializable
{PENDING, SUCCESS, SUCCESS_LATE, SUCCESS_EARLY,
FAILED, IN_PROGRESS, EXPIRED};
...
@Lob
@Column(name = "current_status")
private StatusType currentStatus;
...
public StatusType getCurrentStatus() {
return currentStatus;
}
public void setCurrentStatus(StatusType currentStatus) {
this.currentStatus = currentStatus;
}
}
웹 서비스를 테스트 할 때, 나는 다음과 같은 오류 얻을 :이처럼 보이는 인터넷
this solution을 굴복 검색
The object [PENDING], of class [class org.postgresql.util.PGobject], from mapping
[org.eclipse.persistence.mappings.DirectToFieldMapping[currentStatus-->history.current_status]]
with descriptor [RelationalDescriptor(entities.History --> [DatabaseTable(history)])],
could not be converted to [class java.lang.Integer].
을하지만 org.hibernate.annotations의 사용을 필요로 나타납니다. TypeDef는 설치에없는 것 같습니다.
질문 : RESTful 웹 서비스를 통해 PostgreSQL 열거 형을 Java 열거 형으로 변환하는 적절한 방법은 무엇입니까?
데이터베이스 : PostgreSQL의 8.4
응용 프로그램 서버 : 글래스 피시 3.1.2.2
IDE : 넷빈즈 7.2
JDK : 7 업데이트 7
감사합니다. 잘됐다. – andand