我有一个带有Immutant(Clojure)的Undertow网络服务器,我的main-
看起来像这样:
(run
(-> routes/app
wrap-something-app-specific
wrap-params)
(options
{:path "/" :port 8080}))
(run
(-> routes/billing
wrap-something-billing-specific)
(options
{:path "/billing" :port 8081
:worker-threads 4}))
当不在WildFly计数器中运行时,它可以正常工作:localhost:8080 /映射到app路由,localhost:8081 /计费到计费路由。 但是,当我作为ROOT部署到WildFly时,我只能使用一个上下文,而不是两个。我尝试过所有组合:path /:port params。 WildFly日志包括:
13:07:46,295 INFO [org.projectodd.wunderboss.web.Web] (MSC service thread 1-12) Registered web context /billing
13:07:46,308 INFO [org.projectodd.wunderboss.web.Web] (MSC service thread 1-12) Registered web context /
................
13:07:46,325 INFO [org.wildfly.extension.undertow] (MSC service thread 1-12) JBAS017534: Registered web context: /
那么如何让Undertow注册两个上下文?
答案 0 :(得分:2)
这不是一个解决方案,但它可以为您提供有关正在发生的事情的提示。 从Immutant / WildFly documentation来看,在部署和运行WildFly时,您的问题似乎可能来自此限制:
在WildFly中运行时,immutant.web / run的:host和:port选项会被静默忽略,因为你的处理程序安装在WildFly的内部Undertow服务器上,绑定到它配置的任何主机/端口。