小编Joh*_*han的帖子

如何使用Micronaut和RabbitMQ消费和发布消息?

Micronaut 1.0.0刚刚发布(2018年10月25日)及其对RabbitMQ的文档,它似乎并没有说如何实际消耗或发布消息.它只是说您可以使用以下方法创建项目支持RabbitMQ:

mn create-app my-app --features rabbitmq
Run Code Online (Sandbox Code Playgroud)

但是一旦完成,唯一感兴趣的就是Application类:

import io.micronaut.runtime.Micronaut;

public class Application {

    public static void main(String[] args) {
        Micronaut.run(Application.class);
    }
}
Run Code Online (Sandbox Code Playgroud)

和一些yaml配置:

---
micronaut:
    application:
        name: my-app

---
rabbitmq:
    uri: amqp://user:pass@host:10000/vhost
    requestedFrameMax: 10
    requestedChannelMax: 10
    connectionTimeout: 5000
Run Code Online (Sandbox Code Playgroud)

但是,如何使用Micronaut实际开始使用RabbitMQ消费和发布消息?

java rabbitmq micronaut

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

使用Apache Async HttpClient 4.0.x时,忽略HTTPS连接上的错误证书

我正在使用Async Apache HttpClient(CloseableHttpAsyncClient)连接到服务器但我遇到以下异常:

javax.net.ssl.SSLHandshakeException: General SSLEngine problem
    at org.apache.http.concurrent.BasicFuture.failed(BasicFuture.java:130)
    at org.apache.http.impl.nio.client.DefaultClientExchangeHandlerImpl.failed(DefaultClientExchangeHandlerImpl.java:258)
    at org.apache.http.nio.protocol.HttpAsyncRequestExecutor.exception(HttpAsyncRequestExecutor.java:123)
    at org.apache.http.impl.nio.client.InternalIODispatch.onException(InternalIODispatch.java:68)
    at org.apache.http.impl.nio.client.InternalIODispatch.onException(InternalIODispatch.java:37)
    at org.apache.http.impl.nio.reactor.AbstractIODispatch.inputReady(AbstractIODispatch.java:124)
    at org.apache.http.impl.nio.reactor.BaseIOReactor.readable(BaseIOReactor.java:159)
    at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:338)
    at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:316)
    at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:277)
    at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:105)
    at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:584)
    at java.lang.Thread.run(Thread.java:695)
Caused by: javax.net.ssl.SSLHandshakeException: General SSLEngine problem
    at com.sun.net.ssl.internal.ssl.Handshaker.checkThrown(Handshaker.java:1015)
    at com.sun.net.ssl.internal.ssl.SSLEngineImpl.checkTaskThrown(SSLEngineImpl.java:485)
    at com.sun.net.ssl.internal.ssl.SSLEngineImpl.writeAppRecord(SSLEngineImpl.java:1108)
    at com.sun.net.ssl.internal.ssl.SSLEngineImpl.wrap(SSLEngineImpl.java:1080)
    at javax.net.ssl.SSLEngine.wrap(SSLEngine.java:452)
    at org.apache.http.nio.reactor.ssl.SSLIOSession.doWrap(SSLIOSession.java:220)
    at org.apache.http.nio.reactor.ssl.SSLIOSession.doHandshake(SSLIOSession.java:254)
    at org.apache.http.nio.reactor.ssl.SSLIOSession.isAppInputReady(SSLIOSession.java:391)
    at org.apache.http.impl.nio.reactor.AbstractIODispatch.inputReady(AbstractIODispatch.java:119)
    ... 7 more
Caused by: javax.net.ssl.SSLHandshakeException: General SSLEngine problem
    at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:174)
    at com.sun.net.ssl.internal.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1508)
    at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:243)
    at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:235)
    at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1209)
    at com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:135)
    at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Handshaker.java:593) …
Run Code Online (Sandbox Code Playgroud)

java apache ssl asynchronous apache-httpclient-4.x

0
推荐指数
1
解决办法
4887
查看次数

从Groovy中的map返回多个值?

假设我有这样的地图:

def map = [name: 'mrhaki', country: 'The Netherlands', blog: true, languages: ['Groovy', 'Java']]
Run Code Online (Sandbox Code Playgroud)

现在我可以返回"submap"只有"name"和"blog",如下所示:

def keys = ['name', 'blog']
map.subMap(keys)
// Will return a map with entries name=mrhaki and blog=true
Run Code Online (Sandbox Code Playgroud)

但有没有办法轻松返回多个值而不是条目列表?

更新:

我想做这样的事情(这不起作用):

def values = map.{'name','blog'}
Run Code Online (Sandbox Code Playgroud)

这会产生例如values= ['mrhaki', true](列表或元组或其他一些数据结构).

groovy

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

BigQuery支持哪些JsonPath表达式?

我在BigQuery 文档中读到,它支持JsonPath表达式语言的子集。但我无法找到它JsonPath的部分,实际上支持?例如,当我在控制台中尝试时,在BigQuery的JsonPath表达式中似乎无法使用通配符或过滤器。

  1. 是否可以在BigQuery的JsonPath表达式中使用通配符和过滤器?
  2. 是否有参考文档或其他文档描述了BigQuery中对JsonPath 的完整支持(因为我似乎找不到它)?

google-bigquery

0
推荐指数
1
解决办法
808
查看次数

如何使用 Spring Webflux 返回 GZIP 响应?

假设我有一个使用 Spring Webflux 的非常简单的 HTTP 端点:

@GetMapping
fun greeting(@RequestParam("msg") val message : String) = Mono.just(Greeting(message))
Run Code Online (Sandbox Code Playgroud)

哪里Greeting是一个简单的 DTO 序列化为 JSON。如何指示 Spring Webflux 返回压缩为 GZIP 的响应?如果重要的话,我正在使用 Netty 实现。

spring-boot spring-webflux

0
推荐指数
1
解决办法
1529
查看次数