小编Dav*_*lla的帖子

在Scala中使用什么JSON库?

我需要构建一个JSON字符串,如下所示:

[
  { 'id': 1, 'name': 'John'},
  { 'id': 2, 'name': 'Dani'}
]

val jArray = JsArray();
jArray += (("id", "1"), ("name", "John"))
jArray += (("id", "2"), ("name", "Dani"))
println(jArray.dump)
Run Code Online (Sandbox Code Playgroud)

我需要能够添加行jArray,比如jArray += ...

最近的图书馆/解决方案是什么?

json scala

118
推荐指数
7
解决办法
9万
查看次数

从Python调用Java

从python调用java的最佳方法是什么?(jython和RPC不是我的选择).

我听说过JCC:http://pypi.python.org/pypi/JCC/1.9 一个C++代码生成器,用于从C++/Python调用Java但是这需要编译每个可能的调用; 我更喜欢另一种解决方案.

我听说过JPype:http ://jpype.sourceforge.net/ tutorial:http://www.slideshare.net/onyame/mixing-python-and-java

import jpype 
jpype.startJVM(path to jvm.dll, "-ea") 
javaPackage = jpype.JPackage("JavaPackageName") 
javaClass = javaPackage.JavaClassName 
javaObject = javaClass() 
javaObject.JavaMethodName() 
jpype.shutdownJVM() 
Run Code Online (Sandbox Code Playgroud)

这看起来像我需要的.但是,最后一个版本是从2009年1月开始的,我看到人们无法编译JPype.

JPype是一个死的项目吗?

还有其他选择吗?

问候,大卫

python java

115
推荐指数
6
解决办法
15万
查看次数

在puppet中管理linux的用户密码

我需要使用puppet创建一个带密码的测试用户.

我已经读过,木偶无法以通用的跨平台方式管理用户密码,这很可惜.我正在为Red Hat Enterprise Linux Server 6.3版做这个.

我这样做:

user { 'test_user': 
  ensure   => present,
  password => sha1('hello'),
}
Run Code Online (Sandbox Code Playgroud)

puppet更新了用户的密码,但Linux在我尝试登录时说login/pwd不正确.

如果我在Linux中手动设置密码sudo passwd test_user,然后/etc/shadow在puppet中查看并硬编码该值,它可以工作(我可以登录).就像是:

user { 'test_user': 
  ensure   => present,
  password => '$1$zi13KdCr$zJvdWm5h552P8b34AjxO11',
}
Run Code Online (Sandbox Code Playgroud)

我也试过$1$在前面添加sha1('hello'),但它也不起作用(注意,$1$代表sha1).

如何修改第一个例子使其工作(使用puppet文件中的明文密码)?

ps:我知道我应该使用LDAP或sshkeys或其他东西,而不是在puppet文件中硬编码用户密码.但是,我这样做只是为了运行puppet vagrant测试,所以可以硬编码用户密码.

linux puppet

36
推荐指数
4
解决办法
5万
查看次数

Java的.根据WSDL验证SOAP消息

我需要针对WSDL?验证SOAP消息?(与XML可以根据XSD模式验证文件的方式相同).

我没有打电话给任何网络服务; 我只是有一条SOAP消息和一条消息WSDL,我需要验证SOAP消息是否正确.无需调用网络服务或之后的任何内容.

我需要在Java程序中进行此验证.你知道一个小的Java库吗?

ps:我知道JAX-WS当你调用webservice时,有几个库可以验证请求/响应.但同样,我没有打电话给任何网络服务; 我有一个简单的SOAP消息,和一个WSDL,我需要一个功能来验证SOAP消息WSDL.

ps:我也知道有可以做到这一点的工具,比如SOAPUIXMLSpy.同样,我需要在我的Java程序中进行此验证.

ps:我知道我可以提取SOAP消息的正文部分,然后根据消息进行验证XSD.但是,我想验证整个SOAP消息WSDL.

java web-services

24
推荐指数
1
解决办法
3万
查看次数

用于MsWindows和/或Mac OSX的蓝牙LE 4.0的Java库

http://bluecove.org/

BlueCove是一个用于蓝牙的Java库,适用于MsWindows,Mac OSX等.

但似乎它不支持Bluetooth Low Enegry 4.0.

Android有一个用于蓝牙LE 4.0的标准Java库:http: //developer.android.com/guide/topics/connectivity/bluetooth.html

是否有针对MsWindows和/或Mac OSX的蓝牙LE 4.0的Java库?

java bluetooth-lowenergy

20
推荐指数
1
解决办法
8786
查看次数

如何强制jettison写一个数组,即使数组中只有一个元素?

通过以下简化示例:

我按预期得到以下内容:

{"person":{"name":"john","tags":["tag1","tag2"]}}
Run Code Online (Sandbox Code Playgroud)

但是,如果我只设置一个标签,我会得到这个:

{"person":{"name":"john","tags":"tag1"}}
Run Code Online (Sandbox Code Playgroud)

我期待得到这个:

{"person":{"name":"john","tags":["tag1"]}}
Run Code Online (Sandbox Code Playgroud)

也就是说,jettison删除了标签的数组,因为数组中只有一个元素.

我觉得这很不安全.

即使只有一个元素,如何强制jettison写一个数组?

注意:我知道还有其他替代方法,例如StAXON.但是,我在这里问如何使用Jettison实现这一目标.请不要建议另一种替代方案.

import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.*;

import java.io.*;
import javax.xml.bind.*;
import javax.xml.stream.XMLStreamWriter;
import org.codehaus.jettison.mapped.*;


public class JettisonTest {
    public static void main(String[] args) throws Exception {
        JAXBContext jc = JAXBContext.newInstance(Person.class);

        Person person = new Person();
        person.name = "john";
        person.tags.add("tag1");
        person.tags.add("tag2");

        Configuration config = new Configuration();
        MappedNamespaceConvention con = new MappedNamespaceConvention(config);
        Writer writer = new OutputStreamWriter(System.out);
        XMLStreamWriter xmlStreamWriter = new MappedXMLStreamWriter(con, writer);

        Marshaller marshaller = jc.createMarshaller();
        marshaller.marshal(person, xmlStreamWriter);
    }
} …
Run Code Online (Sandbox Code Playgroud)

xml arrays jettison

17
推荐指数
1
解决办法
828
查看次数

如何使用puppet删除所有/etc/*.txt文件

/etc/file.txt如果文件存在,这个木偶清单将删除该文件:

  file { "/etc/file.txt":
    ensure  => absent,
  }
Run Code Online (Sandbox Code Playgroud)

如何告诉木偶删除所有文件/etc/*.txt

根据参考资料,似乎puppet file不允许使用通配符. http://docs.puppetlabs.com/references/latest/type.html#file

ps:我知道我可以从puppet执行一个脚本,但我更喜欢另一种更优雅的方式.

puppet

14
推荐指数
2
解决办法
2万
查看次数

的IntelliJ.调试程序,即使它没有编译

我在IntelliJ中有一个编译的Java项目,现在我正在慢慢改变.

有没有办法让IntelliJ运行项目,即使代码的某些部分仍然无法编译?如果是这样,怎么样?

你问我为什么需要这个?请参阅此票证:IDEA-61945运行和调试命令应忽略与正在运行的主要内容无关的编译错误. http://youtrack.jetbrains.net/issue/IDEA-61945?query=it#tab=Comments

请不要回答这篇帖子质疑我是否应该或者我不需要运行项目,即使它没有编译.请.

如果在IntelliJ中不可能,是否可以在maven中使用?怎么样?

java intellij-idea

13
推荐指数
2
解决办法
7266
查看次数

mvn jetty:run找不到我的LoginService

我建立了一个码头安全领域如下(与之一起使用mvn jetty:run).这工作:

pom.xml

<plugin>
    <groupId>org.mortbay.jetty</groupId>
    <artifactId>jetty-maven-plugin</artifactId>
    <configuration>
      <webAppXml>src/test/resources/jetty-test.xml</webAppXml>
      <useTestScope>true</useTestScope>
    </configuration>
  </plugin>
Run Code Online (Sandbox Code Playgroud)

jetty-test.xml

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd">
<Configure class="org.eclipse.jetty.webapp.WebAppContext">
  <Get name="securityHandler">
    <Set name="loginService">
      <New class="org.eclipse.jetty.security.HashLoginService">
        <Set name="name">MySecurityRealm</Set>
        <Set name="config">src/test/resources/jetty-realm.properties</Set>
        <Call name="start"/>
      </New>
    </Set>
    <Set name="checkWelcomeFiles">true</Set>
  </Get>
</Configure>
Run Code Online (Sandbox Code Playgroud)

然后我尝试删除对jetty-test.xml文件的需求,如下所示:

pom.xml

    <plugin>
        <groupId>org.mortbay.jetty</groupId>
        <artifactId>jetty-maven-plugin</artifactId>
        <configuration>
   <!--      <webAppXml>src/test/resources/jetty-test.xml</webAppXml>  -->
          <useTestScope>true</useTestScope>
          <loginServices>
            <loginService implementation="org.eclipse.jetty.security.HashLoginService">
              <name>MySecurityRealm</name>
              <config>${basedir}/src/test/resources/jetty-realm.properties</config>
            </loginService>
          </loginServices>
        </configuration>
      </plugin>
Run Code Online (Sandbox Code Playgroud)

但它失败了:

2013-03-26 16:33:26.197:WARN:oejuc.AbstractLifeCycle:FAILED org.eclipse.jetty.security.ConstraintSecurityHandler@73937bc8: java.lang.IllegalStateException: No LoginService for org.eclipse.jetty.security.authentication.BasicAuthenticator@3d47dde in org.eclipse.jetty.security.ConstraintSecurityHandler@73937bc8
Run Code Online (Sandbox Code Playgroud)

任何的想法?

我正在使用此文档:http: //wiki.eclipse.org/Jetty/Feature/Jetty_Maven_Plugin#Configuring_Security_Settings

java jetty

13
推荐指数
2
解决办法
1万
查看次数

nodejs请求库,获取响应时间

使用nodejs request库:https://github.com/mikeal/request

var request = require('request');
request('http://example.com', function (error, response, body) {
   ...
})
Run Code Online (Sandbox Code Playgroud)

是否有可能在回调上获得响应时间?doc提到了response.statusCode.看看库源代码我也看到了无证件的response.headers和response.href,但是我没有看到responseTime或者类似的.

或者,是否有替代库request提供响应时间?

ps:我知道我可以做这样的事情,但这不是解决方案,因为我正在制作许多异步请求,我无法控制每个请求何时开始.

var request = require('request');
var start = new Date();
request('http://example.com', function (error, response, body) {
   ...
   var responseTime = new Date() - start;
})
Run Code Online (Sandbox Code Playgroud)

node.js

12
推荐指数
2
解决办法
2万
查看次数