제품의 Bean 유효성 검증 사용

Java™ Enterprise Edition (Java EE) 7스펙은 애플리케이션의 모든 레이어에서 JavaBeans의 유효성을 검증하기 위한 표준 메커니즘인 Bean 유효성 검증 1.1 API를 포함합니다.

이 태스크 정보

빈 검증 스팩 (Bean Validation specification) 이전에, JavaBeans는 각각의 층에서 확인되었다. 각 계층의 유효성 검증 재구현을 방지하기 위해 개발자는 유효성 검증을 클래스에 직접 번들화하거나 종종 클러터된 유효성 검증 코드를 복사했습니다. 애플리케이션의 모든 계층에 공통된 구현을 하나로 통일하면 개발자의 작업이 단순화되고 시간이 절약됩니다.

Bean 유효성 검증은 애플리케이션의 모든 계층에 공통입니다. 특히, 웹 애플리케이션의 경우 다음 계층이 있습니다.
  • 프리젠테이션

    이 계층은 사용자가 애플리케이션과 상호 작용하는 방식을 표시하며 씬 클라이언트 또는 리치 클라이언트에 빌드될 수 있습니다.

  • 비즈니스

    이 계층은 애플리케이션을 조정하고, 명령을 처리하고, 논리적 의사결정을 하며, 계산을 수행합니다. 다른 두 계층 사이에 데이터를 이동시키고 처리하기도 합니다. EJB에는 WebSphere® Application Server의 비즈니스 로직이 포함되어 있습니다.

  • 데이터 액세스

    이 계층의 파일 시스템 또는 데이터베이스에서 데이터가 검색되고 저장됩니다. 비즈니스 계층은 데이터를 처리해서 사용 가능한 양식으로 사용자 인터페이스에 보냅니다. WebSphere Application Server 는 여러 데이터베이스 및 데이터 검색 방법을 지원합니다. 이 계층은 지속성도 정의합니다.

WebSphere Application Server의 경우, 이러한 계층은 응용프로그램 개발 및 전개에 필요한 제품의 여러 컴포넌트와 함께 빌드되고 관리됩니다.

이 제품은 Java 서블릿, Enterprise JavaBeans, JPA (Java Persistence API) 2.1, Java EE 커넥터 API (JCA) 1.7및 JSF (Java ServerFaces) 2.2를 포함한 여러 Java EE 기술에서 Bean 유효성 검증 서비스를 제공하여 Java Platform, Enterprise Edition (Java EE) 환경에서 Bean 유효성 검증 API에 대한 지원을 제공합니다. Bean 유효성 검증은 통합 및 표준 환경에서 데이터 무결성을 유지할 방법을 이 기술에 제공합니다.

엔터프라이즈 애플리케이션 개발은 애플리케이션 서버 환경에 어셈블 및 배치되는 수많은 애플리케이션과 모듈을 개발하는 다수의 팀을 포괄합니다. 제품은 각 애플리케이션과 모듈 데이터를 독립적으로 유효성 검증할 수 있게 합니다. 유효성 검증은 애플리케이션 및 모듈에 대해 정의된 제한조건을 통해서만 수행됩니다.

다음에 수행할 내용

  • 데이터 액세스 자원:

    RAR 모듈의 Bean 유효성 검증.

    이 제품은 JCA 버전 1.7스펙을 준수하는 자원 어댑터 아카이브 (RAR) Enterprise JavaBeans (EJB) 제한조건의 유효성을 검증한다. 자원 어댑터는 기본 제공 유효성 검증 제한조건 어노테이션을 사용하거나 Bean 유효성 검증 XML 구성을 제공해서 애플리케이션 서버에 자원 어댑터 구성 특성의 유효성 검증 요구사항을 지정합니다.

  • JPA에서 Bean 유효성 검증 사용

    JPA 2.1 스펙에 정의된 새 기능은 Bean 유효성 검증 API와 완벽하게 통합하는 기능입니다. 최소의 노력으로 런타임 데이터 유효성 검증을 위해 JPA 2.1을 유효성 검증 제공자와 결합시킬 수 있습니다. 이 두 가지 기술을 결합해서 표준화된 데이터 유효성 검증을 수행할 추가된 기능이 있는 표준화된 지속성 솔루션을 얻습니다.

  • JSF와 함께 Bean 유효성 검증 사용

    JSF는 이전에 Bean 유효성 검증을 수행할 수 있었지만 현재는 Bean 유효성 검증 스펙의 기본 제공 지원을 제공합니다.

  • 웹 컨테이너의 Bean 유효성 검증 사용

    웹 컨테이너는 ValidatorFactory의 인스턴스를 제공하고 javax.faces.validator.beanValidator.ValidatorFactory라는 서블릿 컨텍스트 속성에 이를 저장해서 JSF 구현에 사용할 수 있게 합니다.

  • 임베드 가능 컨테이너와 함께 Bean 유효성 검증 사용
    임베드 가능 EJB 컨테이너와 함께 Bean 유효성 검증을 사용하려면 javax.validation 클래스가 클래스 경로에 존재해야 합니다. 다음 두 방법 중 하나로 이를 수행할 수 있습니다.
    • ${WAS_INSTALL_ROOT}\runtimes\ 디렉토리에 있는 JPA 씬 클라이언트를 클래스 경로에 포함시키십시오. JPA 2.1의 경우 com.ibm.ws.jpa-2.1.thinclient_9.0.jar을 사용하거나 JPA 2.0의 경우 com.ibm.ws.jpa-2.0.thinclient_9.0.jar을 사용하십시오. 자세한 정보는 임베드 가능한 컨테이너 실행주제 및 JPA에 대한 정보를 참조하십시오.
    • 써드파티 Bean 유효성 검증 제공자 Java 아카이브(JAR) 파일을 임베드 가능 EJB 컨테이너 런타임의 클래스 경로에 포함시키십시오.
제한사항:
  • Bean Validation 1.1에서 추가된 새 API 메소드는 JPA 오브젝트에 있을 때는 작동하지 않습니다.
  • 자동 생성자/메소드 유효성 검증을 사용할 수 없습니다.
  • 유효성 검증기/ValidatorFactory를 삽입하는 데 @Inject를 사용할 수 없습니다.
  • 사용자 정의 validation.xml 컴포넌트(예: MessageInterpolator 또는 ParameterNameProvider)를 작성할 때 CDI를 사용할 수 없습니다.