[java] Apache CXF 클라이언트 구현

Apache CXF는 Java 기반의 웹 서비스 및 마이크로서비스 개발을 지원하는 유명한 오픈 소스 프레임워크입니다. 이 포스트에서는 Apache CXF를 사용하여 간단한 클라이언트를 구현하는 방법을 살펴보겠습니다.

1. Apache CXF 라이브러리 추가

먼저 Maven 또는 Gradle을 사용하여 Apache CXF 라이브러리를 프로젝트에 추가해야 합니다. 예를 들어 Maven을 사용하는 경우 pom.xml 파일에 다음과 같이 의존성을 추가합니다:

<dependency>
    <groupId>org.apache.cxf</groupId>
    <artifactId>cxf-core</artifactId>
    <version>3.4.5</version>
</dependency>

2. 클라이언트 인터페이스 정의

다음으로 클라이언트가 호출할 원격 서비스의 메소드에 해당하는 Java 인터페이스를 정의해야 합니다. 예를 들어, 다음과 같이 HelloWorldService 인터페이스를 정의할 수 있습니다:

import javax.jws.WebService;

@WebService
public interface HelloWorldService {
    String sayHello(String name);
}

3. 클라이언트 구현

이제 클라이언트에서 해당 인터페이스를 사용하여 원격 서비스를 호출할 수 있습니다. 다음은 Apache CXF를 사용한 간단한 클라이언트 구현 예시입니다:

import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;

public class HelloWorldClient {
    public static void main(String[] args) {
        JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
        factory.setServiceClass(HelloWorldService.class);
        factory.setAddress("http://localhost:8080/HelloWorldService");

        HelloWorldService client = (HelloWorldService) factory.create();
        String response = client.sayHello("World");
        System.out.println("Response from the service: " + response);
    }
}

4. 클라이언트 실행

마지막으로, 클라이언트를 실행하여 원격 서비스를 호출할 수 있습니다. 위의 HelloWorldClient 클래스를 실행하면, 서비스로부터의 응답을 출력하게 됩니다.

이상으로 Apache CXF를 사용하여 Java 클라이언트를 구현하는 방법에 대해 알아보았습니다. 추가적인 설정이나 고급 기능을 구현하려면 Apache CXF 공식 문서를 참고하시기 바랍니다.