【发布时间】:2017-12-01 01:00:52
【问题描述】:
我正在尝试创建一个简单的 undertow servlet-server,但是我在 undertow 想要实例化 servlet 时遇到了一些问题。我不一定需要使用HttpServlet,我只需要访问HttpServletRequest 和HttpServletResponse,这样我就可以通过myServicer 运行它们。实现这一目标的最佳方法是什么?
我当前的代码:
myServicer = ...
undertow = Undertow.builder()
.addHttpListener(port, host)
.setHandler(Handlers.path(Handlers.redirect("/")).addPrefixPath("/",
Servlets.defaultContainer().addDeployment(
Servlets.deployment()
.setClassLoader(EmbeddedUndertowServer::class.java.classLoader)
.setDeploymentName("myDeployment").setContextPath("/")
.addServlets(Servlets.servlet("myServlet",
object : HttpServlet() {
override fun service(request: HttpServletRequest, response: HttpServletResponse) {
myServicer.service(request, response) // doesn't work
}
}.javaClass).addMapping("/"))
).apply { deploy() }.start()
))
.build()
undertow.start()
这不起作用,因为 undertow 只想要一个类,它会尝试实例化它。
【问题讨论】:
标签: java servlets kotlin undertow