JAX-RPC

JAX-RPC는 JSR 101이라고 알려진 XML 기반 RPC용 Java™ API를 나타냅니다. JAX-RPC는 RPC(Remote Procedure Call)와 XML을 사용하는 웹 서비스와 웹 서비스 클라이언트를 빌드하기 위한 규정 및 Java API(application programming interface)를 설명하는 스펙입니다. Java에서 WSDL로의 맵핑과 WSDL에서 Java로의 맵핑을 표준화하고 Java 플랫폼에서 웹 서비스와 웹 서비스 클라이언트를 개발하기 위한 코어 API를 제공합니다. 분산 클라이언트/서버 모델에서 자주 사용되는 RPC 메커니즘을 사용하면 클라이언트에서 다른 시스템의 프로시저를 실행할 수 있습니다.

현재 릴리스의 JAX-RPC에는 상호운용성 목적으로 HTTP를 통한 SOAP 지원이 필요합니다. SOAP 스펙은 메시지 구조, 인코딩 규칙 및 RPC 프로그래밍 모델에서 정보를 교환하기 위한 규정을 정의합니다. 이러한 호출과 응답은 HTTP를 통해 SOAP 메시지로 전송됩니다. 이 릴리스에서 JAX-RPC는 SOAP 1.1 및 HTTP 1.1을 지원합니다. SOAP에 대한 자세한 정보는 SOAP의 내용을 참조하십시오.

기본 런타임 메커니즘(예: Java에서 WSDL로의 직렬화, WSDL에서 Java로의 직렬화 해제, 프로토콜 및 전송)은 복잡하지만 API는 이 복잡도를 응용프로그램 개발자로부터 숨깁니다. 서버측에서 개발자가 SEI(Service Endpoint Interface)를 제공할 수도 있고 웹 서비스 마법사를 사용하여 SEI를 작성할 수도 있습니다. SEI는 웹 서비스의 원격 프로시저를 지정하는 Java 프로그래밍 언어로 작성된 인터페이스입니다. 또한 개발자는 하나 이상의 Java 클래스 형식으로 SEI의 서명과 같은 서명의 메소드를 구현하는 웹 서비스 구현을 제공합니다. 클라이언트 프로그램도 간단하게 코딩할 수 있습니다. 클라이언트는 서비스 구현과 SEI를 표시하는 로컬 오브젝트인 프록시를 작성한 다음 프록시에서 메소드를 호출하기만 하면 됩니다.

JAX-RPC는 상호운용성이 높습니다. JAX-RPC 클라이언트는 Java 플랫폼에서 실행되지 않는 웹 서비스에 액세스할 수 있고 그 반대의 경우도 마찬가지입니다. JAX-RPC는 HTTP를 통한 SOAP 및 WSDL(Web Service Description Language)을 사용하기 때문에 이 유연성이 가능합니다. JAX-RPC는 WS-I를 지원하도록 디자인되었습니다.

JAX-RPC에 대한 자세한 정보는 공식 JSR 101 스펙을 참조하십시오.