Найти

Вы здесь:

Apache CXF — это открытый фреймворк для разработки и развёртывания веб-сервисов и REST-API на Java. Он помогает создавать сервисы, используя стандартные API, такие как JAX-WS (для SOAP) и JAX-RS (для REST).

Здесь демонстрируется использование Apache CXF для создания JAX-RS (для REST-API).

Мой пример Apache CXF сервиса и клиента REST-API

Сборка:

mvn clean package

Проверка:

Запуск сервиса:

/usr/lib/jvm/java-8-openjdk-amd64/bin/java -jar target/jaxrs-1.0.0.jar

Log сервиса:

[main] INFO org.apache.cxf.endpoint.ServerImpl - Setting the server's publish address to be http://localhost:5000/
[main] INFO org.eclipse.jetty.util.log - Logging initialized @705ms to org.eclipse.jetty.util.log.Slf4jLog
[main] INFO org.eclipse.jetty.server.Server - jetty-9.4.z-SNAPSHOT; built: 2018-08-30T13:59:14.071Z; git: 27208684755d94a92186989f695db2d7b21ebc51; jvm 1.8.0_502-8u502-ga~us1-0ubuntu1~24.04-b07
[main] INFO org.eclipse.jetty.server.AbstractConnector - Started ServerConnector@4b9e255{HTTP/1.1,[http/1.1]}{localhost:5000}
[main] INFO org.eclipse.jetty.server.Server - Started @851ms
[main] WARN org.eclipse.jetty.server.handler.ContextHandler - Empty contextPath
[main] INFO org.eclipse.jetty.server.handler.ContextHandler - Started o.e.j.s.h.ContextHandler@2f490758{/,null,AVAILABLE}
Server start

http запрос:

http http://127.0.0.1:5000/movieservice/movie/1001/

Ответ:

HTTP/1.1 200 OK
Content-Type: application/json
Server: Jetty(9.4.12.v20180830)
Transfer-Encoding: chunked

{
    "id": 1001,
    "name": "Aquaman"
}

Ссылки