问题标签 [servlet-mapping]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
263 浏览

servlets - Struts 1 混合 url 模式 *.do 与常规 url web.xml

我在 struts 1 应用程序中有以下情况。

该应用程序的旧功能适用于 struts 1,并具有以下 servlet 映射(我认为这是标准的做事方式)。

我也在 struts 1 中使用 struts Actions 编写了一些新功能(json webservices)。

我希望这些 url 在没有 .do 扩展名的情况下可用,但旧 url 仍应与 *.do 扩展名一起使用。

我已经尝试了几种方法,例如 / url 模式,但这会破坏静态资源的加载。

有谁知道如何做到这一点?

0 投票
2 回答
473 浏览

jsp - 通用 Servlet 到 JSP 的映射

我有一个包含许多 JSP 文件的 Web 应用程序,并且想要删除 .jsp 扩展名,使其不再显示在 URL 中,而不必将每个 servlet 映射到类似的页面名称。为此,我想以通用方式将所有 servlet 重定向到 JSP 文件,例如将 /Login 映射到 /Login.jsp。
我将所有 servlet 映射到一个过滤器,如下所示。这适用于到 *.jsp 的重定向,但最终结果是一个空白页面,其 URL 仍包含 .jsp 扩展名。

0 投票
1 回答
223 浏览

java - 在 Vaadin 项目中访问 src/main/webapp/images 中的图像

在我的 Vaadin 项目中,我希望能够直接将图像作为静态资源访问。当我将图像放在 src/main/webapp/VAADIN/themes/... 下面时,它可以工作。如果图像位于 src/main/webapp/images 中,我该怎么做才能访问它们?到目前为止,我已经看到我可以将这个 servlet 映射放在我的 web.xml 中:

不幸的是,它不起作用,我收到此错误:

我的应用程序在 WebSphere 上运行,所以我还尝试了 SimpleFileServlet 作为 servlet-name:

仍然导致与上述相同的错误。

任何帮助表示赞赏!


更新

其他 servlet 映射:

当尝试通过 URL 在网络浏览器中打开图像(位于 src/main/webapp/images/)时,它只会加载 Vaadin 应用程序。当我打开使用图像的页面时,Firebug 告诉我找不到图像。

0 投票
2 回答
6858 浏览

spring - java.lang.IllegalArgumentException:无法注册名为“dispatcher”的servlet。检查是否有另一个以相同名称注册的servlet

我的初始化程序类

}

配置类

}

控制器

}

这是一个非常简单的程序,我写来测试 Spring MVC 的 JavaConfig。我完全按照“Spring in Action”一书中的所有步骤。

当我运行此代码时,我收到此错误

09:41:37,854 错误 [org.jboss.msc.service.fail] (ServerService 线程池 -- 72) MSC000001: 无法启动服务 jboss.undertow.deployment.default-server.default-host./spittr: org. jboss.msc.service.StartException in service jboss.undertow.deployment.default-server.default-host./spittr: java.lang.RuntimeException: java.lang.IllegalArgumentException: 无法注册名为'dispatcher'的servlet。检查是否有另一个以相同名称注册的 servlet。在 org.wildfly.extension.undertow.deployment.UndertowDeploymentService$1.run(UndertowDeploymentService.java:85) 在 java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 在 java.util.concurrent.FutureTask。在 java.util 的 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 处运行 (FutureTask.java:266)。concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) at org.jboss.threads.JBossThread.run(JBossThread.java:320) 原因:java .lang.RuntimeException: java.lang.IllegalArgumentException: 无法注册名为'dispatcher'的servlet。检查是否有另一个以相同名称注册的servlet。在 io.undertow.servlet.core.DeploymentManagerImpl.deploy(DeploymentManagerImpl.java:236) 在 org.wildfly.extension.undertow.deployment.UndertowDeploymentService.startContext(UndertowDeploymentService.java:100) 在 org.wildfly.extension.undertow.deployment .UndertowDeploymentService$1.run(UndertowDeploymentService.java:82) ... 6 更多原因:java.lang.IllegalArgumentException:无法注册名为“dispatcher”的 servlet。检查是否有另一个以相同名称注册的 servlet。在 org.springframework.util.Assert.notNull(Assert.java:115) 在 org.springframework.web.servlet.support.AbstractDispatcherServletInitializer.registerDispatcherServlet(AbstractDispatcherServletInitializer.java:98) 在 org.springframework.web.servlet.support.AbstractDispatcherServletInitializer .onStartup(AbstractDispatcherServletInitializer.java:71) 在 org.springframework.web.SpringServletContainerInitializer.onStartup(SpringServletContainerInitializer.java:169) 在 io.undertow.servlet.core.DeploymentManagerImpl$1.call(DeploymentManagerImpl.java:186) 在 io.undertow .servlet.core.DeploymentManagerImpl$1.call(DeploymentManagerImpl.java:171) 在 io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1。

错误的亮点是无法注册名为'dispatcher'的servlet。检查是否有另一个以相同名称注册的servlet。在org.wildfly.extension.undertow.deployment.UndertowDeploymentService$1.run(UndertowDeploymentService.java: 85) "

请帮我解决这个问题。我在 Eclipse 上使用 WildFly-10。

0 投票
1 回答
1158 浏览

servlets - 如何在不面对 404 的情况下更改 servlet 映射中的 url 模式

当我使用 /go 作为 url-pattern 时,它正在工作。当我将其更改为其他名称时,它不是,例如/servletgo。如何更改它的 .xml 文件?

0 投票
1 回答
66 浏览

java - 如何将所有文档请求路由到 Java servlet

我正在使用 HTTP Servlet 构建一个 Java Web 应用程序,并且我想将所有文档请求路由到一个 Servlet 类。

通过文档请求,我的意思是我不希望将 favicon.ico 之类的图像请求发送到我的 servlet,如果我只使用此映射就是这种情况。

我正在做的工作很像 Symfony(php 框架)控制器层。所以我不知道请求的 URI 会是什么样子,我只知道它会遵循这种模式:/controller[/method]. 所以我不能只使用 /action/* 映射。

我不是在这里寻找任何 Java MVC 框架,因为这是一项学校作业,所以我必须自己编程。

0 投票
1 回答
101 浏览

jsp - 从两个不同的文件夹调用时出现 Servlet 映射问题

文件 1:public_html/eval.jsp

文件 2:public_html/m/eval.jsp

文件 1 表单操作:

文件 2 表单操作:

网页.xml:

使用 /m/ 版本的 eval.jsp 时收到 404 的投诉。无法重新创建,但我认为如果他们得到 404,那很可能与我的 servlet 映射有关,有什么想法吗?

0 投票
2 回答
1212 浏览

java - Servlet url 映射

我在理解 url 映射如何为 servlet 工作时遇到了一些问题。

我在网上看了很多教程并在这里发帖,但没有运气。

因此,假设我有一个 servlet (WelcomeServlet.java)、一个索引页 (index.html) 和我的 web.xml 文件。

WelcomeServlet.java 文件位于 src 目录中,而 index.html 位于 WebContent 目录中。

我的索引页面将由 web.xml 调用,并将显示一个按钮,一旦按下该按钮,就会向 servlet 发送一个 get 请求。

问题是,一旦我按下按钮,页面在 url 旁边的任何内容都不会改变,从

http://localhost:8080/WelcomeServlet

http://localhost:8080/WelcomeServlet/

这是索引页面的正文:

这是 web.xml servlet 映射:

我非常有信心问题出在索引表单操作中的寻址,但我真的无法理解应该放在那里的内容。我尝试了几条路径,但没有运气。

0 投票
1 回答
838 浏览

java - Java:REST 服务 URL 映射

我正在尝试使用 Java 创建一个非常简单的 REST Web 服务,但我无法正确映射...

这是我的服务:

我的 web.xml 描述符:

我尝试使用以下 URL 上的服务: http://localhost:8080/MyProjectName/square/3

但我收到 404 错误。

0 投票
1 回答
800 浏览

servlets - WAS 9 如何在 Websphere 9 中使用 servlet 3.0?

根据给定的规范,WAS9 正在使用 JAVAEE 7 和相关规范。由于某些限制,我想使用 servlet spec 3.0。有没有办法配置它。我正在使用普通配置文件(无自由配置文件)。

限制是我有两个具有相同 URL 映射的 servlet,这在 servlet spec-3.1 中是不允许的

按照给这里我可以使用servlet规范3。

如何让 WAS 9 使用 servlet 规范 3?