java - Servlet url 映射

标签 java servlets servlet-mapping

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

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

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

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

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

问题是,一旦我按下按钮,页面除了 url 之外没有任何变化,从

http://localhost:8080/WelcomeServlet

http://localhost:8080/WelcomeServlet/

这是索引页的正文:

<body>
    <form action = "/WelcomeServlet" method = "get">
    <p><label>Click the button to invoke the servlet
            <input type = "submit" value = "Get HTML Document"/>
    </label></p>
    </form>
</body>

这是 web.xml servlet 映射:

<servlet>
        <servlet-name>welse</servlet-name>
        <servlet-class>WelcomeServlet</servlet-class>
</servlet>

<servlet-mapping>
        <servlet-name>welse</servlet-name>
        <url-pattern>/WelcomeServlet</url-pattern>
</servlet-mapping>

<welcome-file-list>
        <welcome-file>Index.html</welcome-file>
</welcome-file-list>

我非常有信心问题出在索引表单操作中的寻址,但我真的不知道我应该把什么放在那里。我尝试了几种方法,但没有成功。

最佳答案

你快到了。只需在您的操作中添加 ../,这样它就可以后退一步。目前,它指向与您的 html 文件相同的位置。

<body>
    <form action = "../WelcomeServlet" method = "get">
    <p><label>Click the button to invoke the servlet
            <input type = "submit" value = "Get HTML Document"/>
    </label></p>
    </form>
</body>

关于java - Servlet url 映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43589985/

相关文章:

java - 将 DBObject 转换为 JSON

java 类路径 unix

JQuery 从 servlet 获取 JSON

JSF 将模板呈现为文本/纯文本

tomcat - java.lang.IllegalArgumentException : The servlets named [foo] and [bar] are both mapped to the url-pattern [/url] which is not permitted 异常

java - 如何使重写方法中的 javadoc 注释可见

java - Java语言中的继承

java - 将 URL 指定的文档上传到字节数组

Java Servlet 映射

java - 如何映射servlet java