我一直在尝试在servicemix内部运行kafka consumer。当我使用mvn运行它时,消费者能够正确地运行camel:run. 但是,在servicemix中与zookeeper的连接失败,出现以下错误:
2014-11-05 13:57:08,125 | INFO | l Console Thread | VerifiableProperties | ? ? | 217 - org.apache.servicemix.bundles.kafka_2.10 - 0.8.1.1 | Property zookeeper.connect is overridden to 172.17.0.5:2181
2014-11-05 13:57:08,126 | INFO | l Console Thread | ZookeeperConsumerConnector | ? ? | 217 - org.apache.servicemix.bundles.kafka_2.10 - 0.8.1.1 | [group2_sumit-lm-1415224628125-d456f96e], Connecting to zookeeper instance at 172.17.0.5:2181
2014-11-05 13:57:08,126 | INFO | l Console Thread | ZooKeeper | ? ? | 250 - org.apache.hadoop.zookeeper - 3.4.6 | Initiating client connection, connectString=172.17.0.5:2181 sessionTimeout=6000 watcher=org.I0Itec.zkclient.ZkClient@79130d54
2014-11-05 13:57:08,126 | INFO | -172.17.0.5:2181 | ZkEventThread | ? ? | 259 - wrap_mvn_com.github.sgroschupf_zkclient_0.1 - 0.0.0 | Starting ZkClient event thread.
2014-11-05 13:57:08,128 | WARN | 172.17.0.5:2181) | ClientCnxn | ? ? | 250 - org.apache.hadoop.zookeeper - 3.4.6 | Session 0x0 for server null, unexpected error, closing socket connection and attempting reconnect
java.lang.NoClassDefFoundError: org/ietf/jgss/GSSException
at org.apache.zookeeper.ClientCnxn$SendThread.startConnect(ClientCnxn.java:945)[250:org.apache.hadoop.zookeeper:3.4.6]
at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1003)[250:org.apache.hadoop.zookeeper:3.4.6]
Caused by: java.lang.ClassNotFoundException: org.ietf.jgss.GSSException not found by org.apache.hadoop.zookeeper [250]
at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1556)[org.apache.felix.framework-4.4.1.jar:]
at org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:77)[org.apache.felix.framework-4.4.1.jar:]
at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1993)[org.apache.felix.framework-4.4.1.jar:]
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_65]
zookeeper和kafka只在我本地机器上的docker容器中运行。连接在这里不是问题,因为我可以telnet到zookeeper在端口2181。我似乎也无法从Zookeeper的日志中得到任何东西。zookeeper上的日志是加密格式的。有没有办法从servicemix内部或zookeeper中调试这个问题?
所有的指针都会很满。
2条答案
按热度按时间y53ybaqx1#
我只是快速搜索了一下gssexception,看起来您需要更改servicemix etc/jre.properties文件以从jvm导出“org.ietf.jgss”包。
af7jpaap2#
在Zookeeper的网站上发现了一个窃听器