我想设置上下文根,以便在我输入浏览器 IP:8080 后,我的 tomcat 站点必须显示我的应用程序。 现在我在/webapps/ROOT 中创建 index.jsp 并输入此文件:
< %@ page import="java.util.List" %>
< %@ page import="package1.Aplikacja" %>
在/webapps/ROOT/WEB-INF/我有文件:web.xml 在/webapps/ROOT/WEB-INF/classes/package1 我有文件:Aplikacja.class plikacja.java
那么我现在如何在我的 IP:8080 页面上运行这个应用程序呢? 我已经导入了该类,但如何运行它?
最佳答案
您需要在 web.xml 中定义 servlet (Aplikacja) 和 url 之间的映射
例如:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<display-name>Twoja App</display-name>
<servlet>
<servlet-name>Aplikacja</servlet-name>
<servlet-class>package1.Aplikacja</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Aplikacja</servlet-name>
<url-pattern>/app</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
</web-app>
您可以通过以下方式访问您的 servlet:
localhost:8080/app
(如果您将所有文件正确放置在 ROOT 文件夹下)。
如果您将 servlet-mapping 更改为 * 所有请求都将由您的 Aplikacja 处理
通常您不希望所有请求都通过一个 servlet,在这种情况下您定义正常映射即/app 并创建 index.html 重定向到“默认”servlet:
<html>
<head>
<META HTTP-EQUIV="Refresh" CONTENT="0;URL=/app">
</head>
</html>
你可能应该使用一些 IDE 来构建一个合适的 webapp,它被捆绑到一个 .war 文件中,而不是手动将文件放在 tomcat 下。
关于java - 默认页面上的应用程序- tomcat/java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29632670/