Создание простого RESTful сервиса на Apache CXF

Создание простого RESTful сервиса на Apache CXF

chizz
Create a Simple RESTful Service With Apache CXF

На видео вырезан момент создания проекта.

Надо создать Maven проект типа webapp

Пример:

Потом добавляем зависимостей в файл pom.xml.

У меня не получилось взлететь с файлом, который на видео. Мой итоговый pom.xml немного отличается.

https://gist.github.com/androidc/f59cf7504816a0ba8fa5806f05c74f4f

web-xml тоже пришлось править

https://gist.github.com/androidc/6ffc66c0d0252993df4b434ed9013fc0

Проблема была в  <url-pattern>rest/*</url-pattern>. С ним Tomcat не хотел запускаться. invalid url-pattern и всё тут.

Текст .java класса RestService.java

https://gist.github.com/androidc/e6a2cc60051f6f43daafa5de44f95977

Больше всего проблем возникло с beans.xml.

Вот рабочий вариант.

https://gist.github.com/androidc/47ac22d8d1597a71b3ef18d18c5687dc

Все в итоге взлетело, но я не понимаю почему в объявлении serviceBeans

 <jaxrs:serviceBeans>

  <ref bean="restService"/>

 </jaxrs:serviceBeans>

restService с маленькой буквы. Ведь класс RestService.java

Кстати путь вызова сервиса тоже отличается от источника.

Пример вызова сервиса /rest/demo/serv/{name}

Пример вызова сервиса /rest/demo/serv/{name}

Пример вызова сервиса /rest/demo/serv?name={name}


Report Page