Failed to register API endpoint for CXF

Solution Verified - Updated -

Issue

  • Not able to register CXF endpoint in Fabric environment.
  • We have a process to communicate with two external vendors. We have have create a webservice for each vendor to use. the urls are identical except for one part where we insert the vendor name. For some reason the cxf endpoint does not register. This is hindering development as we cannot move forward until this issue is resolved.
  • In logs following exception is reported.
2015-10-01 14:08:04,566 | WARN  | ExtenderThread-4 | FabricCxfRegistrationHandler     | try.FabricCxfRegistrationHandler  282 | 232 - io.fabric8.fabric-cxf-registry - 1.0.0.redhat-423 | Since the CXF service isn't started, this could really be a REST endpoint rather than WSDL at /fabric/registry/clusters/apis/ws/xxx/yyy/zzz/V1//1.6.6/ABC
2015-10-01 14:08:04,568 | ERROR | ExtenderThread-4 | FabricCxfRegistrationHandler     | try.FabricCxfRegistrationHandler  287 | 232 - io.fabric8.fabric-cxf-registry - 1.0.0.redhat-423 | Failed to register API endpoint for http://HOSTNAME:8185/claims/api/xxx/yyy/zzz/V1/.
java.lang.IllegalArgumentException: Invalid path string "/fabric/registry/clusters/apis/ws/xxx/yyy/zzz/V1//1.6.6/ABC" caused by empty node name specified @49
    at org.apache.zookeeper.common.PathUtils.validatePath(PathUtils.java:99)[57:io.fabric8.fabric-zookeeper:1.0.0.redhat-424]
    at org.apache.zookeeper.ZooKeeper.exists(ZooKeeper.java:1020)[57:io.fabric8.fabric-zookeeper:1.0.0.redhat-424]
    at org.apache.curator.framework.imps.ExistsBuilderImpl$2.call(ExistsBuilderImpl.java:172)[57:io.fabric8.fabric-zookeeper:1.0.0.redhat-424]
    at org.apache.curator.framework.imps.ExistsBuilderImpl$2.call(ExistsBuilderImpl.java:161)[57:io.fabric8.fabric-zookeeper:1.0.0.redhat-424]
    at org.apache.curator.RetryLoop.callWithRetry(RetryLoop.java:107)[57:io.fabric8.fabric-zookeeper:1.0.0.redhat-424]
    at org.apache.curator.framework.imps.ExistsBuilderImpl.pathInForeground(ExistsBuilderImpl.java:157)[57:io.fabric8.fabric-zookeeper:1.0.0.redhat-424]
    at org.apache.curator.framework.imps.ExistsBuilderImpl.forPath(ExistsBuilderImpl.java:148)[57:io.fabric8.fabric-zookeeper:1.0.0.redhat-424]
    at org.apache.curator.framework.imps.ExistsBuilderImpl.forPath(ExistsBuilderImpl.java:36)[57:io.fabric8.fabric-zookeeper:1.0.0.redhat-424]
    at io.fabric8.zookeeper.utils.ZooKeeperUtils.setData(ZooKeeperUtils.java:212)[57:io.fabric8.fabric-zookeeper:1.0.0.redhat-424]
    at io.fabric8.zookeeper.utils.ZooKeeperUtils.setData(ZooKeeperUtils.java:208)[57:io.fabric8.fabric-zookeeper:1.0.0.redhat-424]
    at io.fabric8.cxf.registry.FabricCxfRegistrationHandler.registerApiEndpoint(FabricCxfRegistrationHandler.java:285)[232:io.fabric8.fabric-cxf-registry:1.0.0.redhat-423]
    at io.fabric8.cxf.registry.FabricCxfRegistrationHandler.onMBeanEvent(FabricCxfRegistrationHandler.java:212)[232:io.fabric8.fabric-cxf-registry:1.0.0.redhat-423]
    at io.fabric8.cxf.registry.FabricCxfRegistrationHandler$1.handleNotification(FabricCxfRegistrationHandler.java:98)[232:io.fabric8.fabric-cxf-registry:1.0.0.redhat-423]
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor$ListenerWrapper.handleNotification(DefaultMBeanServerInterceptor.java:1754)[:1.7.0_67]
    at javax.management.NotificationBroadcasterSupport.handleNotification(NotificationBroadcasterSupport.java:274)[:1.7.0_67]
    at javax.management.NotificationBroadcasterSupport$SendNotifJob.run(NotificationBroadcasterSupport.java:339)[:1.7.0_67]
    at javax.management.NotificationBroadcasterSupport$1.execute(NotificationBroadcasterSupport.java:324)[:1.7.0_67]
    at javax.management.NotificationBroadcasterSupport.sendNotification(NotificationBroadcasterSupport.java:247)[:1.7.0_67]
    at javax.management.MBeanServerDelegate.sendNotification(MBeanServerDelegate.java:209)[:1.7.0_67]
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.sendNotification(DefaultMBeanServerInterceptor.java:1498)[:1.7.0_67]
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerWithRepository(DefaultMBeanServerInterceptor.java:1911)[:1.7.0_67]
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:966)[:1.7.0_67]
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:900)[:1.7.0_67]
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:324)[:1.7.0_67]
    at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:522)[:1.7.0_67]
    at org.apache.cxf.management.jmx.InstrumentationManagerImpl.registerMBeanWithServer(InstrumentationManagerImpl.java:331)[152:org.apache.cxf.cxf-rt-management:2.7.0.redhat-611423]
    at org.apache.cxf.management.jmx.InstrumentationManagerImpl.register(InstrumentationManagerImpl.java:321)[152:org.apache.cxf.cxf-rt-management:2.7.0.redhat-611423]
    at org.apache.cxf.management.jmx.InstrumentationManagerImpl.register(InstrumentationManagerImpl.java:234)[152:org.apache.cxf.cxf-rt-management:2.7.0.redhat-611423]
    at org.apache.cxf.management.jmx.InstrumentationManagerImpl.register(InstrumentationManagerImpl.java:246)[152:org.apache.cxf.cxf-rt-management:2.7.0.redhat-611423]
    at org.apache.cxf.management.jmx.InstrumentationManagerImpl.register(InstrumentationManagerImpl.java:239)[152:org.apache.cxf.cxf-rt-management:2.7.0.redhat-611423]
    at org.apache.cxf.endpoint.ServerImpl.initDestination(ServerImpl.java:107)[135:org.apache.cxf.cxf-api:2.7.0.redhat-611423]
    at org.apache.cxf.endpoint.ServerImpl.<init>(ServerImpl.java:72)[135:org.apache.cxf.cxf-api:2.7.0.redhat-611423]
    at org.apache.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java:160)[150:org.apache.cxf.cxf-rt-frontend-simple:2.7.0.redhat-611423]
    at org.apache.cxf.jaxws.JaxWsServerFactoryBean.create(JaxWsServerFactoryBean.java:211)[148:org.apache.cxf.cxf-rt-frontend-jaxws:2.7.0.redhat-611423]
    at org.apache.camel.component.cxf.CxfConsumer.<init>(CxfConsumer.java:259)[227:org.apache.camel.camel-cxf:2.12.0.redhat-611429]
    at org.apache.camel.component.cxf.CxfEndpoint.createConsumer(CxfEndpoint.java:209)[227:org.apache.camel.camel-cxf:2.12.0.redhat-611429]
    at org.apache.camel.impl.EventDrivenConsumerRoute.addServices(EventDrivenConsumerRoute.java:65)[129:org.apache.camel.camel-core:2.12.0.redhat-611429]
    at org.apache.camel.impl.DefaultRoute.onStartingServices(DefaultRoute.java:80)[129:org.apache.camel.camel-core:2.12.0.redhat-611429]
    at org.apache.camel.impl.RouteService.warmUp(RouteService.java:134)[129:org.apache.camel.camel-core:2.12.0.redhat-611429]
    at org.apache.camel.impl.DefaultCamelContext.doWarmUpRoutes(DefaultCamelContext.java:2154)[129:org.apache.camel.camel-core:2.12.0.redhat-611429]
    at org.apache.camel.impl.DefaultCamelContext.safelyStartRouteServices(DefaultCamelContext.java:2084)[129:org.apache.camel.camel-core:2.12.0.redhat-611429]
    at org.apache.camel.impl.DefaultCamelContext.doStartOrResumeRoutes(DefaultCamelContext.java:1872)[129:org.apache.camel.camel-core:2.12.0.redhat-611429]
    at org.apache.camel.impl.DefaultCamelContext.doStartCamel(DefaultCamelContext.java:1744)[129:org.apache.camel.camel-core:2.12.0.redhat-611429]
    at org.apache.camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:1583)[129:org.apache.camel.camel-core:2.12.0.redhat-611429]
    at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)[129:org.apache.camel.camel-core:2.12.0.redhat-611429]
    at org.apache.camel.impl.DefaultCamelContext.start(DefaultCamelContext.java:1551)[129:org.apache.camel.camel-core:2.12.0.redhat-611429]
    at org.apache.camel.spring.SpringCamelContext.maybeStart(SpringCamelContext.java:254)[131:org.apache.camel.camel-spring:2.12.0.redhat-611423]
    at org.apache.camel.spring.SpringCamelContext.onApplicationEvent(SpringCamelContext.java:120)[131:org.apache.camel.camel-spring:2.12.0.redhat-611423]
    at org.apache.camel.spring.CamelContextFactoryBean.onApplicationEvent(CamelContextFactoryBean.java:317)[131:org.apache.camel.camel-spring:2.12.0.redhat-611423]
    at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:96)[186:org.apache.servicemix.bundles.spring-context:3.2.12.RELEASE_1]
    at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:334)[186:org.apache.servicemix.bundles.spring-context:3.2.12.RELEASE_1]
    at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:950)[186:org.apache.servicemix.bundles.spring-context:3.2.12.RELEASE_1]
    at org.springframework.osgi.context.support.AbstractOsgiBundleApplicationContext.finishRefresh(AbstractOsgiBundleApplicationContext.java:235)[219:org.springframework.osgi.core:1.2.1]
    at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext$4.run(AbstractDelegatedExecutionApplicationContext.java:358)[219:org.springframework.osgi.core:1.2.1]
    at org.springframework.osgi.util.internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java:85)[219:org.springframework.osgi.core:1.2.1]
    at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.completeRefresh(AbstractDelegatedExecutionApplicationContext.java:320)[219:org.springframework.osgi.core:1.2.1]
    at org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor$CompleteRefreshTask.run(DependencyWaiterApplicationContextExecutor.java:132)[220:org.springframework.osgi.extender:1.2.1]
    at java.lang.Thread.run(Thread.java:745)[:1.7.0_67]

Environment

  • Red Hat JBoss Fuse
    • 6.1.0

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.

Current Customers and Partners

Log in for full access

Log In
Close

Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.