【问题标题】:JSP Out.Println() Cannot Resolved, Project Created With WebApp Archteype of MavenJSP Out.Println() 无法解决,使用 Maven 的 WebApp Archteype 创建的项目
【发布时间】:2019-04-17 14:19:54
【问题描述】:

我正在按照 youtube 上的演示练习 Servlet/JSP。我已经用 maven 创建了这个项目,使用 webapp 原型。

我在 pom.xml 文件中的 servlet 依赖项:

  <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>3.1.0</version>
      <scope>provided</scope>
  </dependency>

我的 JSP 文件:

<%@ page import="model.Alien" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>

    <%
        Alien a1 = (Alien) request.getAttribute("alien");
        out.println(a1);
    %>

</body>
</html>

我的项目结构:

Alien 是一个简单的 POJO,GetAlienController 有我的 Servlet,它分派给 showAlien.jsp。我没用web.xml,我用的是注解。

问题是,request的getAttribute()方法完美解决了,out的println()方法却没有解决。实际上,没有解决任何 out 方法。我也尝试将 servlet jar 复制到 webapp/lib 和 web-inf/lib 目录。然而这些并没有解决问题。

在另一个项目中,我没有使用任何 Maven,而是使用 Intellij 的 Web 应用程序原型来创建项目。在这一次,我没有遇到这样的问题。

我该如何解决这个问题?我确定我将 servlet 依赖项放入了错误的文件夹,但仍然无法解决。

请不要建议我“不要将 java 代码写入 JSP”。这只是一个演示。我正在努力学习基础知识。

【问题讨论】:

    标签: java maven jsp servlets intellij-idea


    【解决方案1】:

    我已经通过向 pom.xml 添加另一个依赖项来解决它:

      <!-- https://mvnrepository.com/artifact/javax.servlet.jsp/javax.servlet.jsp-api -->
        <dependency>
            <groupId>javax.servlet.jsp</groupId>
            <artifactId>javax.servlet.jsp-api</artifactId>
            <version>2.3.1</version>
            <scope>provided</scope>
        </dependency>
    

    【讨论】:

      猜你喜欢
      • 2022-12-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-09
      • 2015-10-21
      • 2014-03-28
      • 2016-01-20
      • 1970-01-01
      相关资源
      最近更新 更多