我有一个带有servlet的动态Web项目(下面的结构)。
右键单击 HomeServlet.java - >以 - >运行在服务器上运行 - >的Tomcat ...
网址运行正常:http://localhost:8080/JSTLTest/HomeServlet
右键单击 JSTLTest - >以 - >运行在服务器上运行 - >的Tomcat ...
我收到错误,并使用了此网址:http://localhost:8080/JSTLTest/
问题是,我想将它部署在像AWS弹性beanstalk这样的服务器上,我想它不起作用,因为他不会使用servlet启动,如:
http://default-environment-9a5exxxd3z.elasticbeanstalk.com/的 HomeServlet
我的web.xml错了吗?
的web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
<display-name>JSTLTest</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>Home</servlet-name>
<servlet-class>com.journaldev.servlet.HomeServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Home</servlet-name>
<url-pattern>/HomeServlet</url-pattern>
</servlet-mapping>
</web-app>
结构:
答案 0 :(得分:0)
替换
<url-pattern>/HomeServlet</url-pattern>
与
<url-pattern></url-pattern>
url模式是添加到协议+服务器+端口+上下文(类似http://localhost:8080/myapp的内容)的url,可用于访问特定的servlet。
请注意,模式必须为空。模式 / 是默认模式。所以它匹配所有可能的模式(也是你不喜欢的)。