WSO2 WS-Discovery ИнтеграцияWSO2: интеграция WS-Discovery
Мы пытаемся интегрировать WS-Discovery с реестра на продукты Углерод WSO2 управления и WSO2 ESB, имеющий Apache CXF Web Service стек настроен с помощью Spring работает на Tomcat отправляет приветственные сообщения в Прокси-сервер обнаружения (localhost: 9443/services/DiscoveryProxy) на WSO2 Greg.
Поэтому мы добавили cxf-services-ws-discovery-service.jar и cxf-services-ws-discovery-api.jar в classpath в Tomcat. Далее мы устанавливаем свойство spring bus property org.apache.cxf.service.ws-discovery.address на URL-адрес прокси-сервера WS-Discovery на WSO2 Greg для запуска WS-Discovery в управляемом режиме. Выполнив Tomcat и WSO2 Greg сообщений об ошибке регистрируется в wso2Carbon.log (WSO2 Greg) ...
TID: [0] [Greg] [2013-07-15 11:45:03,411] INFO {org.wso2.carbon.discovery.proxy.DiscoveryProxy} - Service Discovery Failed. Retrying after 10s. {org.wso2.carbon.discovery.proxy.DiscoveryProxy}
TID: [0] [Greg] [2013-07-15 11:45:03,458] ERROR {org.wso2.carbon.governance.api.common.GovernanceArtifactManager} - Failed to add artifact: artifact id: urn:uuid:003aa9d9-2c9f-4e0b-8415-c99632226ee3, path: /trunk/services/org/oasis_open/docs/ws_dd/ns/discovery/_2009/_01/DiscoveredService_1373881503442. An exception occurred while executing handler chain. String index out of range: -1 {org.wso2.carbon.governance.api.common.GovernanceArtifactManager}
org.wso2.carbon.registry.core.exceptions.RegistryException: An exception occurred while executing handler chain. String index out of range: -1
at org.wso2.carbon.registry.core.jdbc.handlers.HandlerManager.put(HandlerManager.java:2525)
at org.wso2.carbon.registry.core.jdbc.handlers.HandlerLifecycleManager.put(HandlerLifecycleManager.java:1005)
at org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.put(EmbeddedRegistry.java:697)
at org.wso2.carbon.registry.core.caching.CacheBackedRegistry.put(CacheBackedRegistry.java:465)
at org.wso2.carbon.registry.core.session.UserRegistry.put(UserRegistry.java:658)
at org.wso2.carbon.governance.api.common.GovernanceArtifactManager.addGovernanceArtifact(GovernanceArtifactManager.java:155)
at org.wso2.carbon.governance.api.services.ServiceManager.addService(ServiceManager.java:116)
at org.wso2.carbon.discovery.util.DiscoveryServiceUtils.addService(DiscoveryServiceUtils.java:152)
at org.wso2.carbon.discovery.proxy.DiscoveryProxy$1.run(DiscoveryProxy.java:89)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:722)
Caused by: java.lang.StringIndexOutOfBoundsException: String index out of range: -1
at java.lang.String.substring(String.java:1911)
at org.wso2.carbon.registry.extensions.handlers.utils.EndpointUtils.deriveEndpointFromUrl(EndpointUtils.java:674)
at org.wso2.carbon.registry.extensions.handlers.utils.EndpointUtils.saveEndpoint(EndpointUtils.java:483)
at org.wso2.carbon.registry.extensions.handlers.utils.EndpointUtils.saveEndpointsFromServices(EndpointUtils.java:280)
at org.wso2.carbon.registry.extensions.handlers.ServiceMediaTypeHandler.put(ServiceMediaTypeHandler.java:353)
at org.wso2.carbon.registry.core.jdbc.handlers.HandlerManager.put(HandlerManager.java:2503)
... 14 more
Мы попытались решить эту проблему в течение нескольких часов, читая документацию продукта WSO2 и поиск несколько форумов , блоги и т. д. К сожалению, мы не смогли найти решение.
Примечание. Интеграция WS-Discovery с сервером приложений WSO2 вместо Tomcat просто отлично работала. Но при использовании WSO2 ESB в качестве клиента обнаружения для обнаружения сервисов из WSO2 Greg мастер для создания прокси-служб из служб обнаружения на WSO2 ESB пропускает тэг publishWSDL xml после создания прокси. Этот тег должен быть добавлен вручную . Есть ли способ сделать это без дополнительного редактирования?
Мы будем признательны за любую помощь.
Заранее спасибо
Можете ли вы перехватить запросы приветствия Discovery, отправленные GREG через Tomcat и Application Server, и сравнить их? Это должно дать представление о том, чего не хватает. Также отправьте их здесь, если это возможно, чтобы мы могли посмотреть –