我正在尝试使用undertow组件为一些驼峰路线设置https。当前的camel版本是2.19.4。代码来自一个简单的示例:
非https设置如下所示:
// setup
restConfiguration()
.component("undertow")
.port(8888)
.contextPath("/api");
// routes
rest("/hello")
.get()
.to("direct:hello");
from("direct:hello")
.setBody(constant("Hello"));
rest("/world")
.get()
.to("direct:world");
from("direct:world")
.setBody(constant("World"));
到目前为止,这一切正常,我可以访问http://localhost:8888/api/hello
和http://localhost:8888/api/world
很好。
现在,我配置了自己的密钥库,创建了一个SSLContextParameters对象,并将设置部分更改为:
UndertowComponent undertow = (UndertowComponent) getContext().getComponent("undertow");
undertow.setSslContextParameters(getSslConfig());
restConfiguration()
.component("undertow")
.port(8888)
.scheme("https")
.contextPath("/api");
路由保持与以前相同。现在,camel无法启动服务器并出现以下错误:
[main] INFO org.apache.camel.impl.DefaultCamelContext - Route: route1 started and consuming from: https://0.0.0.0:8888/api/hello?httpMethodRestrict=GET
[main] INFO org.apache.camel.component.undertow.DefaultUndertowHost - Starting Undertow server on https://0.0.0.0:8888
[main] WARN org.apache.camel.component.undertow.DefaultUndertowHost - Failed to start Undertow server on https://0.0.0.0:8888, reason: java.net.BindException: Address already in use: bind
[main] INFO org.apache.camel.impl.DefaultCamelContext - Apache Camel 2.19.4 (CamelContext: camel-1) is shutting down
[main] INFO org.apache.camel.impl.DefaultShutdownStrategy - Starting to graceful shutdown 15 routes (timeout 300 seconds)
[Camel (camel-1) thread #18 - ShutdownTask] INFO org.apache.camel.component.undertow.DefaultUndertowHost - Stopping Undertow server on https://0.0.0.0:8888
[Camel (camel-1) thread #18 - ShutdownTask] INFO org.apache.camel.impl.DefaultShutdownStrategy - Route: route1 shutdown complete, was consuming from: rest://get:/hello?componentName=undertow&routeId=route1
然而,如果我删除一个endpoint,只剩下一条路由,那么一切都会恢复正常。很明显:只有那条路线。
如果使用其他语法,也会发生同样的情况:
from("undertow:https://0.0.0.0:8888/api/hello?method=GET").to("direct:hello");
from("undertow:https://0.0.0.0:8888/api/world?method=GET").to("direct:world");
单个路由正常,多个路由故障。
我该如何解决这个问题?(顺便说一句:首选语法,因为一些常见的参数,如port、tls-set、模式、基路径都保存在一个地方。真正的东西确实有比两个更多的路由。)
(我在讨论编写此问题的最小示例时注意到的另一句话:该问题似乎特定于下拖。码头组件按预期工作。)
在端口中设置一个零,但您必须检查日志,以查看分配的端口号。
问题内容: 我们有一个有效的Apache mod_ssl配置。我想为Undertow启用HTTPS支持,以便它侦听http和https,从而消除了对Apache的需求。 我研究了Undertow的javadocs。Undertow.Builder类具有两个具有以下签名的addHttpsListener方法: 所以看来我可以在使用Builder API引导Undertow时使用它们,例如 我不确定如
问题内容: 我正在尝试使用Git插件在Jenkins中配置Git项目。在项目配置页面中,我在Git配置中输入存储库URL,这是一个https URL(https://git.mycompany.com/git/MyProject.git)。但是,在构建项目时,出现以下错误: 我可以从命令行克隆存储库,也可以在Jenkins项目的预构建步骤中通过执行Shell命令来克隆存储库,因此我对插件配置为何不
如何配置 基本上,我正在寻找的是Apache的mod_rewrite配置: 谢谢
问题内容: 我有一个客户端服务器应用程序。我设法使他们使用SSl加密通过https连接 现在,我想同时使用http和https运行服务器。有什么可行的方法吗? 问题答案: 第一件事:不要使用flask中内置的Web服务器进行繁重的工作。您应该使用真实的Web服务器,例如apache(mod_wsgi)nginex + gunicore等。这些服务器包含有关如何同时运行http和https的文档
我看了看线索,遵循了建议——这让我来到了这里...我使用WAMP-php rev 5.4.12(Win7) 代码尽可能简单:$result=file\u get\u contents(“https://g4apps.bliptrack.net/blipzones/report/publicdisplayapi.seam?display_id=dvp_vms4"); (此URL返回XML文件-在浏览
Undertow基本配置 由于 Jboot 是依赖 Jfinal-Undertow 进行开发的,因此 Jfinal-Undertow 的所有配置 Jboot 都会支持,Jfinal-Undertow 的配置文档在:https://www.jfinal.com/doc/1-4 其他扩展 扩展1:配置位置 在 Jboot 应用中,除了可以在 resource 目录下的 undertow.txt 文件进