apache cxf 예제

2019年8月3日

동적 클라이언트 만들기, 인터셉터, 다른 전송 프로토콜, https를 통해 웹 서비스 등을 활용하는 것과 같은 아파치 CXF에서 탐색 할 수있는 다른 물건의 톤이 있습니다. 그러나 나는 튜토리얼을 시작으로이 게시물을 의도. QName 인스턴스는 네임스페이스 URI와 로컬 부품의 두 부분으로 식별됩니다. Service.getPort 메서드의 QName 형식의 PORT_NAME 인수를 생략하면 Apac CXF는 인수의 네임스페이스 URI가 역순으로 끝점 인터페이스의 패키지 이름이며 해당 로컬 부분은 포트에 의해 추가된 인터페이스 이름이라고 가정합니다. PORT_NAME의 정확한 값입니다. 따라서이 자습서에서는이 인수를 제외할 수 있습니다. 예를 들어, 작업을 정의 하는 서비스에 대 한 구현 클래스 sayHi 및 greetMe 다음과 같이 보일 수 있습니다.: 그것은 아파치 CXF에 시리즈에서 두 번째; 첫 번째는 JAX-WS 표준 API의 구현으로 CXF의 기본에 초점을 맞췄습니다. 이 간단한 예제를 통해 웹 서비스를 만드는 것은 단지 산들바람일 뿐이라는 결정적인 증거입니다 – 우리는 아파치 CXF를 서비스 프레임워크로 활용하여 개발을 단순화하고 나머지를 거의 관리한 강력한 CDI를 활용했습니다. 샘플에서는 아파치 CXF에서 WS-보안 지원을 활성화하는 방법을 보여 주십습니다. WS-Security는 WSDL에 WS-SecurityPolicy를 추가하여 클라이언트 및 서버 끝점에 구성할 수 있습니다. 아파치 CXF를 사용하는 데 필요한 주요 종속성은 org.apache.cxf:cxf-rt-프론트 엔드-jaxws입니다.

이렇게 하면 기본 제공 JDK를 대체하는 JAX-WS 구현이 제공됩니다. 이 플러그인의 자바 목표를 실행 한 후, 우리는 자동으로 HTTP://LOCALHOST:8080/BAELDUNG?WSDL URL에 액세스하여 아파치 CXF에 의해 생성 된 WSDL 스키마를 체크 아웃 할 수 있습니다. 샘플에서는 아파치 CXF의 CXF WS-Policy 프레임워크가 WSDL 1.1 정책 첨부 파일을 사용하여 WS 주소 지정을 사용하는 방법을 보여 주며 있습니다. 당신은 모든 MVC 프레임 워크를 사용할 수 있지만 내 자신의 이유로 스트럿2를 선호합니다. 여기에서 maven을 사용하여 이클립스에서 빈 struts2 응용 프로그램을 만드는 방법의 예를 볼 수 있습니다. 이 예제에서는 JAX-WS를 통해 “코드 우선” 개발을 수행 하 고 첫 번째 서비스를 만드는 데 연결 됩니다. 또는 다음 코드를 사용할 수 있습니다. 이렇게 하면 동작을 더 많이 제어할 수 있습니다. 예를 들어 로깅 인터셉터를 추가할 수 있습니다. 아파치 CXF에 의해 정의되는 CXFServlet 클래스는 들어오는 요청을 처리하기 위해 생성되고 등록됩니다: 첫 번째 필요한 빈은 스프링 버스입니다 . 위에서 설명한 표준 JAX-WS API를 사용합니다. 아파치 CXF를 사용 하 고 있기 때문에 프레임 워크는 몇 가지 추가 작업을 수행, 예를 들어 생성 하 고 WSDL 스키마를 게시.

서비스 서버가 정의되는 방법은 다음과 같습니다: 샘플에서는 아파치 CXF에서 WS-Addressing 지원을 활성화하는 방법을 보여 주십입니다. 기본적으로 아파치 CXF는 JAXB를 데이터 바인딩 아키텍처로 사용합니다. 그러나 JAXB는 getStudents 메서드에서 반환되는 맵 바인딩을 직접 지원하지 않으므로 JAXB가 사용할 수 있는 Java 클래스로 맵을 변환하는 어댑터가 필요합니다.

カテゴリー:未分類