JSP web.xml 阿帕奇 tomcat

JSP web.xml apache tomcat

我是 servlet 和 JSP 的新手,所以如果我错过了一些资源或教程,那么我可以检查一下,但这是我的问题。

我在本地 tomcat 服务器上 运行 这个

我有这个应用程序,我正在学习一些教程,当我从我的 IDE 执行它时它工作正常,但我试图在网络应用程序中创建一个分解的 war目录,它正在做意想不到的事情。我使用内联 java 代码的所有页面似乎都可以正常工作,但我有这一行 html

 Lets have some fun: <%= com.luv2code.Step1.FunUtils.makeItLower("FUN FUN FUN")%><br/>

它似乎让我的部署崩溃

 org.apache.jasper.JasperException: Unable to compile class for JSP: 

An error occurred at line: [254] in the jsp file: 
 [/jspdemo/Step1/FirstLesson.jsp]
com.luv2code.Step1.FunUtils cannot be resolved to a type
251:             </span>
252:             </p>
253:             <p>2. Call the java class<br/>
254:                 Lets have some fun: <%= 
com.luv2code.Step1.FunUtils.makeItLower("FUN FUN FUN")%><br/>
255:                 Lets have some fun: &lt;%= 
com.luv2code.Step1.FunUtils.makeItLower("FUN FUN FUN")%&gt;<br/>
256:             </p>
257:             <p>

这是我的目录结构

当我部署我的 webapps 文件夹时看起来像这样

所以,我可以很好地到达 http://localhost:8081/luv2code/jspdemo/index.jsp,但是当我尝试访问 类 中的文件时,我似乎遇到了错误。是否需要在 web.xml 中添加一些内容,以便它知道可以访问这些 类?我觉得 web.xml 是关键,但我不确定,而且我经验不足,当我试图研究它时,我感到不知所措。我的 web.xml 非常基础,但我放在那里的内容如下。

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">

    <display-name>HelloWorld Application</display-name>
    <description>
        This is a simple web application with a source code organization
        based on the recommendations of the Application Developer's Guide.
    </description>

    <servlet>
        <servlet-name>ServletDemo</servlet-name>
        <servlet-class>com.luv2code.Step5.ServletDemo</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>ServletDemo</servlet-name>
        <url-pattern>/Step5/ServletDemo</url-pattern>
    </servlet-mapping>

</web-app>

我觉得这一定是某种配置问题,因为就像我说的那样,我可以访问包含嵌入式 java 的页面,但是当我尝试访问自己编译的页面时出现此错误类 来自 JSP 和 Servlet 引用 ( http://localhost:8081/luv2code/jspdemo/Step5/ServletDemo) 中的任何一个,您可以在我的 web.xml 中声明它给我一个 404.

Apache 将 webapps 目录中的每个 "folder" 视为一个单独的 webapp。问题是我正在尝试将 webapp 部署到嵌套在 webapps 目录下另一个级别的目录中。我需要更改说明在哪里查找 webapps 的配置文件。我不确定该怎么做,所以我只是将应用程序移动到已经映射为 webapp 目录的 webapps 文件夹的根目录。

很抱歉,如果这是一个愚蠢的问题,我很尴尬地承认我花了多长时间才弄明白。