Я использую пример cxf-jaxrs, поставляемый с apache-servicemix-4.3.0-fuse-03-00.tar.gz, чтобы изучить, как развернуть несколько пакетов, которые предоставляют различные службы RESTful.Я скопировал пример cxf-jaxrs в cxf-jaxrs-example-1 и изменил pom.xml и beans.xml.Модификации:
1. pom.xml
version: 4.3.0-2-fuse-03-00
name: Apache ServiceMix Example 2:: CXF JAX-RS OSGI
2. beans.xml
<jaxrs:server id="customerService2" address="/crm2">
Затем я сделал два пакета.Один - это оригинальный пример пакета cxf-jaxrs-4.3.0-fuse-03-00.jar, а другой - модифицированный cxf-jaxrs-4.3.0-2-fuse-03-00.jar, и я скопировал ихв каталог "deploy".
После запуска servicemix я вижу, что оба пакета активны и успешно запущены.
Но я могу получить доступ к службам RESTful только в одном пакете.Когда я набираю «http://localhost:8080/cxf/crm2/customerservice/customers/123",, я получаю сообщение« Служба не найдена ». И когда я останавливаю другой пример пакета (исходный)), я могу получить доступ к« http://localhost:8080/cxf/crm2/customerservice/customers/123" без проблем.
ЧтоЯ поступил неправильно??Предполагается, что он предоставляет службы RESTful как в контекстном пути "/ crm", так и "/crm2".