小编Chr*_*sel的帖子

把手:递归树结构

我有一个任意深度的树结构,我想用Handlebars显示.我没有看到任何回复的方法.如果我知道深度,我想我可以硬编码,但它可以任意深入.

像这样的东西,但它需要在显示子部分递归.

{{#aNode}}
    {{id}
    {{name}}
    {{description}}
    ...spew this same template with each member of {{#children}}...
{{/aNode}}
Run Code Online (Sandbox Code Playgroud)

把手有办法迭代收藏品,但我无法看到它们进入孩子们的行列

reentrancy mustache handlebars.js

5
推荐指数
1
解决办法
3844
查看次数

Gradle:有关任务失败的自定义消息?

我想了解compileJava目标并在失败时吐出一条额外的自定义消息。我们有一个非常普通的案例设置案例,很多人都忽略了它,并且只有在失败的情况下,它才能执行以下操作:

compileJava.onFailure { 
   println "Did you configure your wampfrankle to talk to the slackometer?" 
}
Run Code Online (Sandbox Code Playgroud)

我的Google技能尚未找到答案。

gradle

5
推荐指数
2
解决办法
1179
查看次数

Java 8 DateTimeFormatter在它们为零时丢弃millis?

这看起来很怪异.Java 8根据millis是否为零来格式化输出.你如何强迫Java 8(1.8.0_20)总是吐出millis,无论它们是否为零?

public static void main(String[] args) {
    TemporalAccessor zeroedMillis = DateTimeFormatter.ISO_OFFSET_DATE_TIME.parse("2015-07-14T20:50:00.000Z");
    TemporalAccessor hasMillis = DateTimeFormatter.ISO_OFFSET_DATE_TIME.parse("2015-07-14T20:50:00.333Z");
    System.out.println(DateTimeFormatter.ISO_OFFSET_DATE_TIME.format(zeroedMillis));
    System.out.println(DateTimeFormatter.ISO_OFFSET_DATE_TIME.format(hasMillis));
}

2015-07-14T20:50:00Z
2015-07-14T20:50:00.333Z
Run Code Online (Sandbox Code Playgroud)

java console formatting datetime

5
推荐指数
1
解决办法
1663
查看次数

如何在JAXWS中使用FastInfoset?

根据我能找到的内容,我的代码看起来应该是正确的,但是输出的代码并不表示它正在使用FastInfoset.我的理解是Accept应该表明它可以接受Fastinfoset并且响应实际上会使用它,这意味着它不是text/xml作为响应类型.知道我做错了什么吗?我和Google一起搜索过,我很难找到有关如何使用FastInfoset的详细信息.

    JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
    factory.getInInterceptors().add(new LoggingInInterceptor());
    factory.getOutInterceptors().add(new LoggingOutInterceptor());
    factory.setServiceClass( C360Server.class);
    factory.setAddress("http://localhost:8501/cxfcontroller/cl_v5");
    C360Server client = (C360Server)factory.create();
    ((BindingProvider)client).getRequestContext().put(
        "com.sun.xml.ws.client.ContentNegotiation", "optimistic");

    C360Request requestTrans = new C360Request();
    ... code to fill in the request ...
    C360Response response = client.findContacts( requestTrans );
Run Code Online (Sandbox Code Playgroud)

记录似乎并不表示FastInfoset甚至尝试过:

INFO: Outbound Message
---------------------------
ID: 1
Address: http://localhost:8501/cxfcontroller/cl_v5
Encoding: UTF-8
Content-Type: text/xml
Headers: {SOAPAction=[""], Authorization=[Basic cWFfc3VwZXI6cWFfc3VwZXI=], Accept=[*/*]}
Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><ns1:findContacts>...bunch of xml deleted for brevity...</ns1:findContacts></soap:Body></soap:Envelope>
--------------------------------------
May 17, 2010 3:23:45 PM org.apache.cxf.interceptor.LoggingInInterceptor logging
INFO: Inbound Message
----------------------------
ID: 1
Response-Code: …
Run Code Online (Sandbox Code Playgroud)

java jax-ws fastinfoset

4
推荐指数
1
解决办法
2515
查看次数

Java HttpConnection拒绝,但卷曲等效工作

我对这个失去了理智.我的curl命令有效:

curl http:// testuser:testpwd @ qabox3:8501/xmlcontroller

但是,当我尝试在Java中看起来像是等效的http连接时,它会"拒绝连接".我错过了什么?我已经尝试了十几种尝试今天建立这种联系的方式并且没有想法.

        URL url = new URL( "http://qabox3:8051/xmlcontroller" );
        HttpURLConnection conn = (HttpURLConnection)url.openConnection();
        conn.setRequestMethod( "GET" );
        String encoding = new sun.misc.BASE64Encoder().encode( "testuser:testpwd".getBytes() );
        conn.setRequestProperty("Authorization", "Basic " + encoding );
        InputStream content = conn.getInputStream();  // <--- fails here every time.
        BufferedReader in = new BufferedReader( new InputStreamReader( content ) );
        String line;
        while ((line = in.readLine()) != null) {
            System.out.println( line );
        }
Run Code Online (Sandbox Code Playgroud)

此外,我可以使用Java的Runtime.exec()执行curl命令,但仍然有效......所以我在HttpURLConnection中显然做错了.

这是我看到的堆栈(现在使用HttpClient,但与Java库基本相同).

Exception in thread "main" java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method) …
Run Code Online (Sandbox Code Playgroud)

java authentication http

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

Gradle:具有自定义依赖关系配置的任务?

我的项目有一堆模块,虽然每个模块都应用了java插件,并且具有正常的编译,测试,jar等步骤,但外部项目却没有.但是,外部项目确实有一个任务包含一堆文件,报告等,并进行一些处理.此任务需要一个没有其他需要的特定zip文件.

我需要该任务来解决和下载依赖项,所以如果我运行:

gradle doWeeklySummaryTask
Run Code Online (Sandbox Code Playgroud)

它将获取必要的zip,就像compile获取所有编译依赖项一样.

我可以创建一个自定义依赖项,这很容易:

configurations {
   foo
}
dependencies {
   foo('blah:blah:blah')
}
Run Code Online (Sandbox Code Playgroud)

问题是,如何让我的doWeeklySummaryTask解决这种依赖?

gradle

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

将常春藤依赖指向本地文件?

我有一个主项目,其中模块 A 依赖于由模块 B 的构建创建的 .jar 文件。在开发过程中,我定期修改 B,然后构建 B 以创建库,然后构建 A 以使用这些更改。

有没有办法将模块 A 的 ivy 文件指向我的模块 B 构建创建的 jar 文件?鉴于我要迭代多次,我不想一遍又一遍地检查模块 B 的 jar 到 ivy 中。在每次构建模块 B 后都必须将 jar 复制到模块 A 的构建目录结构中,这也很烦人。

实际上,对我来说更糟,因为我在依赖树(A->B->CD)中有大约 4 个模块。如果它只是 A 和 B,我可能会忍受它,但我厌倦了在子模块构建后复制 jar 文件,并认为是否有办法覆盖 ivy 文件依赖行以在本地查看然后会让生活简单很多。

java ivy

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

Drools:不区分大小写比较?

我需要以不区分大小写的方式比较两个字段.我有这样的规则:

foo : ObjectTypeA()
bar : ObjectTypeB( name == foo.name )
Run Code Online (Sandbox Code Playgroud)

这适用于相同情况下的字符串.我需要的是这样的东西,但它似乎不起作用:

foo : ObjectTypeA()
bar : ObjectTypeB( name.equalsIgnoreCase( foo.name ) )
Run Code Online (Sandbox Code Playgroud)

有关如何使其工作的任何建议?谷歌搜索点击建议使用"匹配",但匹配运算符似乎只对硬编码模式.

java drools

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

动态应用公共依赖gradle文件?

我有一个gradle文件(common-utils.gradle),它包含许多在各种项目中常见的有用函数.我在Artifactory中有这个文件.现在,我希望我的项目的build.gradle下拉common-utils.gradle文件和"apply from:'common-utils.gradle'",这样我就可以使用这些实用程序方法了.

有没有办法动态地执行此操作,因此第一次运行"gradle test"时,它会获取此公共文件并应用它?或者,在克隆存储库以获取文件后,我是否必须执行某种"init"任务?

gradle

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