JAX-RPC
1. 개요
JAX-RPC는 Java 애플리케이션에서 WSDL로 기술된 Java 기반 웹 서비스를 호출할 수 있게 해주는 기술이다. 웹 서비스 상의 Java RMI와 유사하게 동작하며, Java 프로그램이 스텁의 메서드를 호출하면 JAX-RPC 런타임 시스템이 SOAP 메시지로 변환하여 HTTP 요청으로 전송한다. 이 기술은 웹 서비스를 서블릿 또는 EJB 컨테이너로 서버 측에 구현할 수 있게 해준다.
| 이름 | Java API for XML-based RPC |
|---|---|
| 유형 | 자바 API |
| 설명 | XML 기반 RPC (원격 프로시저 호출)를 위한 자바 API |
| 관련 기술 | SOAP, WSDL |
| 기능 | 웹 서비스 클라이언트 및 서버 개발 지원 SOAP 메시지 처리 WSDL 기반 서비스 정의 |
|---|---|
| 역할 | J2EE 플랫폼의 웹 서비스 지원 기술 |
| 대체 기술 | JAX-WS (더 현대적인 웹 서비스 API) |
| 개발 주체 | 썬 마이크로시스템즈 (현재 오라클에 합병) |
|---|---|
| 초기 목표 | 웹 서비스 표준화 및 상호 운용성 확보 |
| 현재 상태 | JAX-WS로 대체되어 더 이상 활발히 사용되지 않음 |
| Jakarta EE | Jakarta XML RPC는 Jakarta EE 사양임 |
| JAX-RPC와의 관계 | JAX-RPC 기술의 일부 |
-
자바 플랫폼, 엔터프라이즈 에디션 -
IBM 웹스피어
IBM 웹스피어는 IBM에서 출시한 기업용 소프트웨어 제품군 브랜드로, 다양한 애플리케이션 인프라, 비즈니스 프로세스 통합, 정보 통합 및 개발 도구를 포함한다. -
자바 플랫폼, 엔터프라이즈 에디션 -
자카르타 서버 페이지
자카르타 서버 페이지(JSP)는 웹 애플리케이션 개발에 사용되는 서버 측 스크립팅 기술로, 서블릿으로 변환되어 실행되고 HTML 형태로 결과를 반환하며, 지시어, 스크립틀릿, 표현식, 액션 등의 문법 요소, 표현 언어(EL), JSTL을 통해 동적인 웹 페이지를 구현하고 개발 편의성을 높였다.
2. 작동 방식
JAX-RPC는 Java 애플리케이션에서 WSDL로 기술된 Java 기반 웹 서비스를 호출할 수 있게 해주는 기술이다. 웹 서비스 상의 Java RMI라고 볼 수 있다.
2.1. 클라이언트 측
Java 프로그램이 스텁(원격 서비스를 나타내는 로컬 객체)상의 메서드를 호출한다. 스텁이 JAX-RPC 런타임 시스템(RS)의 루틴을 호출한다. RS는 원격 메서드 호출을 SOAP 메시지로 변환한다. RS는 해당 메시지를 HTTP 요청으로 전송한다.
2.2. 서버 측
웹 서비스는 서블릿 또는 EJB(Enterprise JavaBeans) 컨테이너로 서버 측에 구현할 수 있다. 따라서, 서블릿과 EJB 애플리케이션을 웹 서비스를 통해 이용할 수 있게 된다.
3. 특징 및 장점
JAX-RPC의 장점은 웹 서비스를 서블릿 또는 EJB 컨테이너로 서버 측에 구현할 수 있다는 점이다. 따라서, 서블릿과 EJB 애플리케이션을 웹 서비스를 통해 이용할 수 있게 되며, Java 기반 시스템 간의 상호 운용성을 향상시킨다.
4. 기술 사양
JAX-RPC는 Java 애플리케이션에서 WSDL로 기술된 Java 기반 웹 서비스를 호출할 수 있게 해준다. 웹 서비스 상의 Java RMI라고 볼 수 있다.
동작 방식은 다음과 같다.
# Java 프로그램이 스텁 (원격 서비스를 나타내는 로컬 객체)상의 메서드를 호출한다.
# 스텁이 JAX-RPC 런타임 시스템(RS)의 루틴을 호출한다.
# RS는 원격 메서드 호출을 SOAP 메시지로 변환한다.
# RS는 해당 메시지를 HTTP 요청으로 전송한다.
이 기법의 장점은 웹 서비스를 서블릿 또는 EJB 컨테이너로 서버 측에 구현할 수 있다는 점이다. 따라서, 서블릿과 EJB 애플리케이션을 웹 서비스를 통해 이용할 수 있게 된다.