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

我正在本地的Tomcat服务器上运行它

我已经在使用此应用程序,正在通过一些教程进行操作,当我从IDE中执行该应用程序时,它可以正常工作,但是我尝试在webapps目录中创建一次爆炸式战争,并且正在做意外的事情。我使用内联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>


这是我的目录结构

jsp - JSP web.xml Apache Tomcat-LMLPHP

当我部署我的webapps文件夹时,如下所示

jsp - JSP web.xml Apache Tomcat-LMLPHP
因此,我可以很好地进入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目录中的每个“文件夹”视为一个单独的webapp。问题是我正在尝试将webapp部署到嵌套在webapps目录下另一级的目录中。我需要更改配置文件,该文件说明在何处查找webapps。如何执行我不确定,所以我只是将应用程序移到了已经映射为webapp目录的webapps文件夹的根目录下。

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

关于jsp - JSP web.xml Apache Tomcat,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50899832/

10-10 20:24