7.6. CXF Cryostat-WS 빠른 시작 배포
이 예에서는 Red Hat Fuse on EAP에서 Red Hat Fuse와 함께 camel-cxf 구성 요소를 사용하여 Elytron Security Domain에서 보안된 Cryostat-WS 웹 서비스를 생성하고 사용하는 방법을 보여줍니다. Elytron은 EAP 7.1 이후 사용할 수 있는 새로운 보안 프레임워크입니다. 이 빠른 시작에서 Camel 경로는 직접 끝점에서 메시지 페이로드를 가져와 CXF 생산자 엔드포인트에 전달합니다. 생산자는 페이로드를 사용하여 BASIC HTTP 인증에 의해 보안되는 CXF Cryostat-WS 웹 서비스에 인수를 전달합니다.
사전 요구 사항
- Maven이 설치 및 구성되었는지 확인합니다.
- Red Hat Fuse가 설치된 애플리케이션 서버가 설치되어 구성되었는지 확인합니다.
절차
애플리케이션 서버 설치의 루트 디렉터리를 가리키도록
JBOSS_HOME
환경 변수를 설정합니다.Linux의 경우
export JBOSS_HOME=...
Windows의 경우:
set JBOSS_HOME=...
add-user
스크립트를 사용하여 새 서버 애플리케이션 사용자 및 그룹을 생성합니다.Linux의 경우
${JBOSS_HOME}/bin/add-user.sh -a -u testUser -p testPassword1+ -g testRole
Windows의 경우:
%JBOSS_HOME%\bin\add-user.bat -a -u testUser -p testPassword1+ -g testRole
독립 실행형 모드에서 애플리케이션 서버를 시작합니다.
Linux의 경우
${JBOSS_HOME}/bin/standalone.sh -c standalone-full.xml
Windows의 경우:
%JBOSS_HOME%\bin\standalone.bat -c standalone-full.xml
이 프로젝트의
webapp/WEB-INF
디렉터리에 있는jboss-web-xml
및web.xml
파일은 애플리케이션 보안 도메인, 보안 역할 및 제약 조건을 설정합니다.
프로젝트를 빌드하고 배포합니다.
mvn install -Pdeploy
또한 이 명령은 보안 도메인과 몇 가지 다른 관리 오브젝트를 생성하는 CLI 스크립트
configure-basic-security.cli
를 호출합니다.http://localhost:8080/example-camel-cxf-jaxws-secure/
.Send A '라는 제목의 페이지가 표시됩니다. 이 UI를 사용하면 이미 시작한 테스트 인사말 웹 서비스와 상호 작용할 수 있습니다. WSDL 서비스는
http://localhost:8080/webservices/greeting-security-basic?wsdl
에서 사용할 수 있습니다.이라는 단일 서비스 작업이 있습니다. 이 작업은 message 및 name 이라는 두 개의 String 매개 변수를 사용합니다. 웹 서비스를 호출하면 이러한 값이 함께 연결된 응답이 반환됩니다.
Camel 보안 CXF Cryostat-WS
빠른 시작 테스트
- http://localhost:8080/example-camel-cxf-jaxws-secure/.
Send A(A ) 웹 양식에서 메시지와 이름을 텍스트 필드에 입력한 다음 보내기 버튼을 누릅니다.
입력한 정보는 UI에 인사말으로 표시됩니다.
CamelCxfWsServlet
은 웹 UI에서 POST 요청을 처리합니다. 매개 변수 값에서 메시지와 이름을 검색하고 오브젝트 배열을 구성합니다. 이 오브젝트 배열은direct:start
끝점으로 전송되는 메시지 페이로드입니다.ProducerTemplate
은 메시지 페이로드를 Camel에 전송합니다.direct:start
엔드포인트는 오브젝트 배열을cxf:bean
웹 서비스 생산자에 전달합니다. 웹 서비스 응답은CamelCxfWsServlet
에서 웹 UI에 인사말을 표시하는 데 사용됩니다.src/main/webapp/WEB-INF/cxfws-security-camel-context.xml
파일에서 전체 Camel 경로를 확인할 수 있습니다.
퀵스타트 배포 취소
다음 명령을 실행하여 빠른 시작 배포를 취소합니다.
mvn clean -Pdeploy