【发布时间】:2012-11-15 11:43:49
【问题描述】:
我有以下 Scala 代码来使用 Scalatra 设置 Jetty 服务器。
val server = new Server(8080)
val context = new WebAppContext()
context.setResourceBase("visualization")
context.addServlet(new ServletHolder(new CallTreeServlet(dataProvider)), "/*")
context.addServlet(new ServletHolder(new DataLoadingServlet(dataProvider)), "/*")
server.setHandler(context)
我的问题是它似乎只有在我注册一个 servlet 时才有效。
如果我注册了多个,就像我在发布的代码中所做的那样,它只会加载其中一个。
是否可以加载多个 servlet?我猜是这样,但我不知道怎么做。
如果我尝试从第一个 servlet 加载页面,我收到此错误消息,仅引用属于第二个 servlet 的页面:
Requesting "GET /callTrees" on servlet "" but only have:
GET /components
POST /load
POST /searchCallTrees
POST /selectPlugIn
【问题讨论】:
-
是什么让你说它没有加载?此外,您已经将它们都映射到所有请求,因此如果一个收到请求并处理了它,我不确定另一个将能够做什么。
-
我认为它们没有加载,因为如果我尝试从第一个 servlet 加载页面,我会收到此响应消息,我会收到我添加到问题中的消息。
-
你是说看起来只有第二个 servlet 收到了请求?
-
是的,这似乎正在发生。是不是因为我将两者都映射到了所有请求?
标签: scala servlets jetty scalatra