SSL Elasticsearch

我有一个es_client (java/dropwizard)应用程序。 它通过纯文本连接与弹性搜索进行通信。 我按照https://github.com/sonian/elasticsearch-jetty上的说明为es client设置了SSL。 但是,当我启动es_client它每5秒报告一次: INFO [2014-01-08 23:02:14,814] org.elasticsearch.client.transport: [Karolina Dean] failed to get node info for [#transport#-1][inet[localhost/127.0.0.1:9443]], disconnecting… ! org.elasticsearch.transport.NodeDisconnectedException: [][inet[localhost/127.0.0.1:9443]][cluster/nodes/info] disconnected 我该如何解决这个问题呢? 谢谢,Maciej

gradle存储库指向具有多个库的本地目录

我对本地存储库的build.gradle中的构建依赖关系有疑问(即使用本地目录) dependencies { compile fileTree(include: [‘*.jar’], dir: ‘libs’) } 它是仅解决了libs目录中的依赖关系还是解析了lib目录的所有子文件夹的依赖关系? 如果它不解析子文件夹/子目录的依赖关系,如何解决依赖关系? 注意:我们的项目依赖于大量的jar文件(而不是为每个jar / libs提供完整的文件名),所以想知道任何替代方式。

无法让Log4J SocketAppender工作

我的Java项目使用Log4J2。 目前,它已成功将日志写入文件。 现在,我正在尝试通过Socket Appender将日志推送到LogStash。 不幸的是,我对这些努力没有任何成功。 这时,我正在看两件:我的log4j2.xml文件和我的logstash配置文件。 我在这里提供了两个,希望有人可以帮助我找出问题所在。 log4j2.xml 那是我的log4j2配置。 这是我的logstash配置: logstash.conf input { log4j { mode => “server” type => “log4j” host => “0.0.0.0” port => “4560” } } output { stdout { codec => “json” } } 我使用logstash-1.4.0/bin/logstash –config /etc/logstash/logstash.conf –debug从命令行启动logstash。 我没有看到任何错误。 同时,我没有看到任何日志写入控制台窗口。 我知道应该出现日志,因为它们出现在我的滚动server.log文件中,该文件被配置为log4j中的第二个appender。 我究竟做错了什么? 我一直在修补它3天。

如何运行Python解释器并使用Java获取其输出?

是否可以使用Java从Python获取控制台输出? 以下是此类输出的示例: Python 3.3.4 (v3.3.4:7ff62415e426, Feb 10 2014, 18:13:51) [MSC v.1600 64 bit (AMD64)] on win32 Type “help”, “copyright”, “credits” or “license” for more information. >>> 2+2 4 >>> 现在,主要目标是通过使用Java调用Python解释器来获得上述输出。 这是我的尝试: //… //Irrelevant code omitted ProcessBuilder processBuilder = new ProcessBuilder(“cmd”); processBuilder.redirectErrorStream(true); processBuilder.start(); processBuilder.command(“python2”); Process pythonProcess = processBuilder.start(); OutputStream outputStream = pythonProcess.getOutputStream(); OutputStreamWriter osw = new […]

为什么我不能扩展接口“generics方法”并将其类型缩小到我inheritance的接口“class generic”?

我展示了一个我的意思的例子,哪个更容易。 想象一下,generics类型C表示颜色类型:因此,为了直观简化,假设C是C扩展颜色 interface Screen { Background render(Plane plane); } interface MonochromeScreen extends Screen{ @Override Background render(Plane plane); } 这将引发名称冲突编译错误,说明两者都具有相同类型的擦除但不可覆盖。 但我无法理解为什么我们不能简单地允许覆盖签名,只要它更具限制性。 我的意思是,毕竟,唯一的区别是generics类型的范围,在Screen中是方法范围的,而MonochromeScreen是在类范围内。 允许子方法在其父级在类级别强制执行时允许子方法作为方法范围的generics覆盖是没有意义的,但我认为它不这样做:我的父接口可以有20个方法与不相关的generics类型,但我的子类将强制它们全部与非不兼容的额外规格/合同相同(这是任何扩展接口所做的),毕竟,单色屏幕仍然是一个屏幕,因为它可以涂上任何颜色,我只是强制执行该颜色,无论哪个颜色,都与孩子的其他function保持一致,只是缩小了课堂级别的可能性,而不是方法级别。 考虑这个function有没有根本错误的假设? 编辑:我接受了Sotirios Delimanolis的回答,因为他非常聪明地发现了正确的麻烦而且我没有要求解决方案,但是对于那些想要知道如何克服这种情况的人来说,有一个技巧在我自己的答案中解释

无法将对象添加到List 实例化为ArrayList

我问这个问题是因为在Stack上讨论了一个答案 。 声明如下: 给出以下代码: List list =new ArrayList(); 我们为什么不能这样做: Integer e = 2; list.add(e); 尽管我们将列表实例化为ArrayList ,但这会引发编译器错误。 这是为什么 ?

java.lang.IncompatibleClassChangeError:class org.springframework.core.type.classreading.ClassMetadataReadingVisitor

我正在通过链接中的相同示例开发Spring MVC JQGrid示例: https : //github.com/nurkiewicz/books 。 当我部署此代码时,我发现以下错误即将发生。 参考错误: java.lang.IncompatibleClassChangeError: class org.springframework.core.type.classreading.ClassMetadataReadingVisitor has interface org.springframework.asm.ClassVisitor as super class at java.lang.ClassLoader.defineClass1(Native Method) ~[na:1.8.0_45] at java.lang.ClassLoader.defineClass(ClassLoader.java:760) ~[na:1.8.0_45] at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) ~[na:1.8.0_45] at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2957) ~[catalina.jar:7.0.59] at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1210) ~[catalina.jar:7.0.59] at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1690) ~[catalina.jar:7.0.59] at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1571) ~[catalina.jar:7.0.59] at java.lang.ClassLoader.defineClass1(Native Method) ~[na:1.8.0_45] at java.lang.ClassLoader.defineClass(ClassLoader.java:760) ~[na:1.8.0_45] at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) ~[na:1.8.0_45] at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2957) ~[catalina.jar:7.0.59] at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1210) […]

Java NIO read()End Of Stream

我正在使用Java NIO来接受,读取和写入我的服务器。 在文档中,它说SocketChannel.read()函数将返回从套接字读取的字节数,如果它到达流的末尾则返回-1。 现在 – 我真的不明白”End Of Stream”是什么意思? 它和borken pipe错误一样吗? 这是否意味着双方都失去了连接,我应该关闭SocketChannel? 如果有人可以解释更多关于它的话,我会非常满意 – 并根据它给出一些正确使用和行为的例子。

Android模拟器不再起作用了

我已经24小时不间断地试图解决这个问题而没有运气。 起初它工作缓慢,但工作。 然后Eclipse开始出错连接模拟器,然后模拟器本身只显示ANDROID_。 (永远在两个小时内)我在这24小时内尝试过的事情: – 重新安装eclipse,sdk,jdk。 – 在文档和设置中删除.android文件夹。 – 等待2小时让模拟器自行工作。 – 下载2.2图像和2.2.3图像,也是1.6,无效。 你能告诉我我错过了什么吗? 模拟器永远位于动画ANDROID屏幕上的ANDROID_和occassionaly中。 我的操作系统是Windows XP SP3。 CPU:AMD64 3600 + x2,RAM 1.5 GB 提前致谢。 编辑:我从DDM得到了这个 05-29 08:06:25.824: ERROR/vold(26): Error opening switch name path ‘/sys/class/switch/test’ (No such file or directory) 05-29 08:06:25.824: ERROR/vold(26): Error bootstrapping switch ‘/sys/class/switch/test’ (No such file or directory) 05-29 08:06:25.824: ERROR/vold(26): Error […]

GAE项目类路径上的Xerces JAR导致“找不到SAXParserFactoryImpl”

我正在使用Google App Engine的Eclipse插件,我遇到了一个Xerces依赖的奇怪问题。 我的类取决于我添加到项目的类路径中的Apache Xerces JAR。 但是,这会在启动Jetty应用服务器时触发错误: WARNING: failed com.google.apphosting.utils.jetty.DevAppEngineWebAppContext@6efde050 {/,/Users/lenni/dev/gate/war} javax.xml.parsers.FactoryConfigurationError: Provider org.apache.xerces.jaxp.SAXParserFactoryImpl not found 当我从类路径中删除xercesImpl.jar时,jetty启动正常,但是我的类不再编译,因为缺少依赖项。 这听起来很像这个问题 ,但是我尝试转换到JRE 1.6并且仍然没有快乐。