WSJPA 지속성 제공자 구성

WSJPA(WebSphere® Application Server Persistence Provider)는 JPA(Java Persistence API) 2.0의 기본 제공자입니다.

이 태스크 정보

Apache OpenJPA 지속성 제공자에서 빌드되었지만 WebSphere Application Server용 JPA 지속성 제공자인 WSJPA에는 다음 개선사항 및 차이점이 있습니다.
  • DB2® pureQuery 기능을 사용하는 정적 SQL 지원
  • 액세스 목적 지원
  • 확장 추적 지원
  • 버전 ID 생성
  • WebSphere 제품 특정 명령 및 스크립트
  • 변환된 메시지 파일
  • 느리게 로드되는 다대일 또는 일대일 관계를 위한 메모리 내 캐시를 확인하십시오. wsjpa.BrokerImpl 특성을 true로 설정한 경우, 느린 필드에 대한 외부 키 데이터가 사용 가능하면 JPA 구현이 런타임에 메모리에서 느린 필드를 로드하려고 합니다. 다음 특성을 사용하십시오.
    <property name="wsjpa.BrokerImpl" value="checkCacheForLazyFields=true"/> 
    이 특성은 여러 시나리오에서 유용할 수 있습니다. 예를 들어, 개인 엔티티, 개인(A)가 있으며, 다른 개인, 개인(B)에 대한 일대일 관계가 있고, 개인(B)가 L2 데이터 캐시에 저장되었다고 가정합니다. 이 특성이 설정된 경우, JPA 구현이 개인(A)를 찾으면 개인(A)에서 로드된 외부 키가 사용되어 개인(A)에서 개인(B)로 관계를 채웁니다.
  • 다음 표에서는 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
문제점 방지 문제점 방지: OpenJPA 호환성 특성이 특정 데이터 유형(특히 GregorianCalendar와 같은 데이터 유형)에 대해 OpenJPA가 생성하는 프록시 유형을 제거하지 않습니다. 이와 같은 생략으로 인해 직렬화 해제에 문제점이 발생합니다. 직렬화 해제 문제점이 발생하면 다음 메시지와 비슷한 오류 메시지가 발행됩니다.gotcha
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 특성을 통해 설정한 값을 대체합니다.

프로시저


주제 유형을 표시하는 아이콘 태스크 주제



시간소인 아이콘 마지막 업데이트 날짜: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tejb_jpadefaultpp
파일 이름:tejb_jpadefaultpp.html