WSJPA 지속성 제공자 구성
WSJPA(WebSphere® Application Server Persistence Provider)는 JPA(Java Persistence API) 2.0의 기본 제공자입니다.
이 태스크 정보
- DB2® pureQuery 기능을 사용하는 정적 SQL 지원
- 액세스 목적 지원
- 확장 추적 지원
- 버전 ID 생성
- WebSphere 제품 특정 명령 및 스크립트
- 변환된 메시지 파일
- 느리게 로드되는 다대일 또는 일대일 관계를 위한
메모리 내 캐시를 확인하십시오. wsjpa.BrokerImpl 특성을 true로 설정한 경우,
느린 필드에 대한 외부 키 데이터가 사용 가능하면 JPA 구현이
런타임에 메모리에서 느린 필드를 로드하려고 합니다. 다음 특성을 사용하십시오.
이 특성은 여러 시나리오에서 유용할 수 있습니다. 예를 들어, 개인 엔티티, 개인(A)가 있으며, 다른 개인, 개인(B)에 대한 일대일 관계가 있고, 개인(B)가 L2 데이터 캐시에 저장되었다고 가정합니다. 이 특성이 설정된 경우, JPA 구현이 개인(A)를 찾으면 개인(A)에서 로드된 외부 키가 사용되어 개인(A)에서 개인(B)로 관계를 채웁니다.<property name="wsjpa.BrokerImpl" value="checkCacheForLazyFields=true"/>
- 다음 표에서는 WebSphere Application Server용 JPA 지속성 제공자와
Apache OpenJPA 제공자의 구성 특성의 기본값 차이점을 보여줍니다.
표 1. 비교. WebSphere Application Server용 JPA 지속성 제공자 및 Apache OpenJPA 제공자 비교 특성 Apache OpenJPA 기본값 WebSphere Application Server용 JPA 지속성 제공자 기본값 openjpa.Compatibility StrictIdentityValues=false StrictIdentityValues=true openjpa.RuntimeUnenhancedClasses 지원되지 않음 warn openjpa.DynamicEnhancementAgent true false open.jdbc.DriverDataSource auto simple

Error Message is:org.codehaus.jackson.map.JsonMappingException:
Can not construct instance of org.apache.openjpa.util.java$util$GregorianCalendar$proxy,
problem: no suitable creator method found at
[Source: org.apache.http.conn.EofSensorInputStream@d83fbd5; line: 1, column: 4094]
특성 대체 외에도 기본 WebSphere Application Server용 JPA 지속성 제공자를 사용하는 것은 Apache OpenJPA의 해당 클래스를 대체하는 다음 WebSphere Application Server용 JPA 클래스를 사용하는 것을 의미합니다.
com.ibm.ws.persistence.jdbc.kernel.ConstraintUpdateManager;
com.ibm.ws.persistence.jdbc.kernel.WsJpaJDBCBrokerFactory;
com.ibm.ws.persistence.jdbc.sql.DB2Dictionary;
com.ibm.ws.persistence.jdbc.sql.OracleDictionary;
com.ibm.ws.persistence.jdbc.sql.SQLFactoryImpl;
com.ibm.ws.persistence.jdbc.sql.SQLServerDictionary;
com.ibm.ws.persistence.kernel.WsJpaBrokerImpl;
com.ibm.ws.persistence.kernel.WsJpaFinalizingBrokerImpl;
EJB(Enterprise JavaBeans) 모듈 내에 있는 persistence.xml 파일의 <provider> 요소에 구성된 JPA 제공자가 없는 경우, 이 서버에 대해 현재 구성되어 있는 기본 JPA 제공자가 사용됩니다. 이 제품은 기본 제공자로 정의된 WebSphere Application Server용 JPA 지속성 제공자와 함께 패키지됩니다. 그러나 이 기본값을 대체하고 관리 콘솔을 통해 다른 기본값을 지정할 수 있습니다.
두 가지 방법 중 하나로 기본 지속성 제공자를 설정할 수 있습니다.
JVM(Java Virtual Machine) 특성을 통해 기본 지속성 제공자, 기본 JTA(Java Transaction API) 데이터 소스 JNDI(Java Naming and Directory Interface) 이름 및 WebSphere Application Server 버전 7.0 전 제품에서 설정된 비JTA 데이터 소스 JNDI 이름 값이 있는 경우 관리 콘솔을 통한 이러한 값에 대한 변경이 JVM 특성으로 설정된 값을 대체합니다.
이러한 특성에는 com.ibm.websphere.jpa.default.provider, com.ibm.websphere.jpa.default.jta.datasource 및 com.ibm.websphere.jpa.default.nonjta.datasource가 있습니다. 이러한 특성에 대한 지원은 무시됩니다. 이러한 특성을 통해 설정된 값은 이 패널에 기본값으로 표시됩니다. 관리 콘솔 패널을 통해 설정된 이러한 값이 JVM 특성을 통해 설정한 값을 대체합니다.