@WebServlet 注释 web.xml 欢迎文件

2023-11-25

我想设置 JSP/JavaBeans 项目的欢迎文件。我有一个名为“Controller.java”的 servlet,带有以下 @WebServlet 注释:

@WebServlet(name="Controller", urlPatterns={"/login", "/show_dbs"})

我有一个包含以下内容的 web.xml 文件:

<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
         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_3_0.xsd" version="3.0">

    <welcome-file-list>
        <welcome-file>Controller</welcome-file>
    </welcome-file-list>
</web-app>

几乎一切都很顺利,我可以打开http://localhost:8080/PROJECT/login and http://localhost:8080/PROJECT/show_dbs我来到Controller.java。但当我打开http://localhost:8080/PROJECT/我收到 404 错误。

我将 Eclipse 与“动态 Web 项目”一起使用,Controller.java 文件位于 /src(默认包)下,web.xml 文件位于 /WebContent/WEB-INF 下。

我希望你能给我一个建议。


感谢您的帮助。这是我的解决方案:

如果您想将 servlet 设置为欢迎文件,您必须执行以下操作:

将标准 html 定义为欢迎文件,例如 web.xml 中的 index.html:

<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
         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_3_0.xsd" version="3.0">

    <welcome-file-list>
        <welcome-file>index.html</welcome-file>
    </welcome-file-list>
</web-app>

确保这个文件(index.html)不存在.

在 @WebServlet 中定义 urlPatterns,如下所示:

@WebServlet(name="Controller", urlPatterns={"/index.html", "/login", "/show_dbs"})

现在每个请求http://.../PROJECT/(root) 将被重定向到http://.../PROJECT/index.html这会调用 servlet。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

@WebServlet 注释 web.xml 欢迎文件 的相关文章

  • Java - 将节点添加到列表的末尾?

    这是我所拥有的 public class Node Object data Node next Node Object data Node next this data data this next next public Object g
  • 在 java 类和 android 活动之间传输时音频不清晰

    我有一个android活动 它连接到一个java类并以套接字的形式向它发送数据包 该类接收声音数据包并将它们扔到 PC 扬声器 该代码运行良好 但在 PC 扬声器中播放声音时会出现持续的抖动 中断 安卓活动 public class Sen
  • 如何找到给定字符串的最长重复子串

    我是java新手 我被分配寻找字符串的最长子字符串 我在网上研究 似乎解决这个问题的好方法是实现后缀树 请告诉我如何做到这一点或者您是否有任何其他解决方案 请记住 这应该是在 Java 知识水平较低的情况下完成的 提前致谢 附 测试仪字符串
  • 使用 Android 发送 HTTP Post 请求

    我一直在尝试从 SO 和其他网站上的大量示例中学习 但我无法弄清楚为什么我编写的示例不起作用 我正在构建一个小型概念验证应用程序 它可以识别语音并将其 文本 作为 POST 请求发送到 node js 服务器 我已确认语音识别有效 并且服务
  • JAXb、Hibernate 和 beans

    目前我正在开发一个使用 Spring Web 服务 hibernate 和 JAXb 的项目 1 我已经使用IDE hibernate代码生成 生成了hibernate bean 2 另外 我已经使用maven编译器生成了jaxb bean
  • 无法展开 RemoteViews - 错误通知

    最近 我收到越来越多的用户收到 RemoteServiceException 错误的报告 我每次给出的堆栈跟踪如下 android app RemoteServiceException Bad notification posted fro
  • 列出jshell中所有活动的方法

    是否有任何命令可以打印当前 jshell 会话中所有新创建的方法 类似的东西 list但仅适用于方法 您正在寻找命令 methods all 它会打印所有方法 包括启动 JShell 时添加的方法 以及失败 被覆盖或删除的方法 对于您声明的
  • Mockito when().thenReturn 不必要地调用该方法

    我正在研究继承的代码 我编写了一个应该捕获 NullPointerException 的测试 因为它试图从 null 对象调用方法 Test expected NullPointerException class public void c
  • Spring @RequestMapping 带有可选参数

    我的控制器在请求映射中存在可选参数的问题 请查看下面的控制器 GetMapping produces MediaType APPLICATION JSON VALUE public ResponseEntity
  • 无法解析插件 Java Spring

    我正在使用 IntelliJ IDEA 并且我尝试通过 maven 安装依赖项 但它给了我这些错误 Cannot resolve plugin org apache maven plugins maven clean plugin 3 0
  • 如何在PreferenceActivity中添加工具栏

    我已经使用首选项创建了应用程序设置 但我注意到 我的 PreferenceActivity 中没有工具栏 如何将工具栏添加到我的 PreferenceActivity 中 My code 我的 pref xml
  • 如何为俚语和表情符号构建正则表达式 (regex)

    我需要构建一个正则表达式来匹配俚语 即 lol lmao imo 等 和表情符号 即 P 等 我按照以下示例进行操作http www coderanch com t 497238 java java Regular Expression D
  • 在两个活动之间传输数据[重复]

    这个问题在这里已经有答案了 我正在尝试在两个不同的活动之间发送和接收数据 我在这个网站上看到了一些其他问题 但没有任何问题涉及保留头等舱的状态 例如 如果我想从 A 类发送一个整数 X 到 B 类 然后对整数 X 进行一些操作 然后将其发送
  • 总是使用 Final?

    我读过 将某些东西做成最终的 然后在循环中使用它会带来更好的性能 但这对一切都有好处吗 我有很多地方没有循环 但我将 Final 添加到局部变量中 它会使速度变慢还是仍然很好 还有一些地方我有一个全局变量final 例如android Pa
  • 无法捆绑适用于 Mac 的 Java 应用程序 1.8

    我正在尝试将我的 Java 应用程序导出到 Mac 该应用程序基于编译器合规级别 1 7 我尝试了不同的方法来捆绑应用程序 1 日食 我可以用来在 Eclipse 上导出的最新 JVM 版本是 1 6 2 马文 看来Maven上也存在同样的
  • 如何从终端运行处理应用程序

    我目前正在使用加工 http processing org对于一个小项目 但是我不喜欢它附带的文本编辑器 我使用 vim 编写所有代码 我找到了 pde 文件的位置 并且我一直在从 vim 中编辑它们 然后重新打开它们并运行它们 重新加载脚
  • 静态变量的线程安全

    class ABC implements Runnable private static int a private static int b public void run 我有一个如上所述的 Java 类 我有这个类的多个线程 在里面r
  • Firebase 添加新节点

    如何将这些节点放入用户节点中 并创建另一个节点来存储帖子 我的数据库参考 databaseReference child user getUid setValue userInformations 您需要使用以下代码 databaseRef
  • 当我从 Netbeans 创建 Derby 数据库时,它存储在哪里?

    当我从 netbeans 创建 Derby 数据库时 它存储在哪里 如何将它与项目的其余部分合并到一个文件夹中 右键单击Databases gt JavaDB in the Service查看并选择Properties This will
  • JGit 检查分支是否已签出

    我正在使用 JGit 开发一个项目 我设法删除了一个分支 但我还想检查该分支是否已签出 我发现了一个变量CheckoutCommand但它是私有的 private boolean isCheckoutIndex return startCo

随机推荐

  • Result 变量是从函数的第一行定义的吗?

    我需要澄清这个案子 根据我的测试 结果变量定义为 从第一行开始 Boolean False Integer 0 String Object nil 等 但我从未见过这方面的官方参考 这也是有道理的 因为这给出了暗示 DCC 警告 Unit1
  • Nodejs (Express) 连接 MySQL - 本地连接和远程连接不同吗?

    伙计们 我正在学习如何使用Express连接远程MySQL 因此 我开始在本地计算机 本地 MySQL 服务器 上进行此操作 在我有了之后在本地环境下成功了 我尝试更改与远程 MySQL 托管 位于 DB4Free 的连接 是的 我有在本地
  • 如何在 Bash 脚本中解析 CSV?

    我正在尝试解析包含可能超过 100k 行的 CSV 这是我的标准 标识符的索引 标识符值 我想检索 CSV 中给定索引 以逗号分隔 中具有给定值的所有行 有什么想法 特别考虑性能吗 作为替代方案cut or awk基于单行 你可以使用专门的
  • TFS Build 找不到 Grunt

    我已经在 TFS 构建服务器上安装了 npm 和 grunt 我使用安装了 grunt clinpm 安装 g grunt cli然后就可以运行了咕噜部署以我自己身份登录时从命令行 Out TFS 构建运行为tfs服务尽管用户 并且当它尝试
  • ZendDeveloperTools 模块在 ZF2 beta5 中不显示工具栏

    我正在尝试安装ZendDeveloperTools模块用于ZF2测试版5 以下是我到目前为止所遵循的步骤 安装成功ZendSkeletonApplication 将模块下载到我的 vendor目录 启用该模块 config applicat
  • 如何在 MySQL 中将 BLOB 转换为 TEXT?

    我有大量记录 其中文本存储在 MySQL 的 blob 中 为了便于处理 我想将数据库中的格式更改为文本 有什么想法可以轻松地进行更改以免中断数据 我想它需要正确编码 那是不必要的 只需使用SELECT CONVERT column USI
  • “删除”-恢复本机功能不适用于更改后的原型,那么怎么办?

    如果你像这样改变本机函数 window open function a b c alert 2 然后你就可以 delete window open 它会恢复原来的功能 但是 如果你像这样改变它的原型 window proto open fu
  • 从 WCF 请求中删除 ActivityId

    我在 WCF 客户端和 Java Web 服务之间遇到了一个有趣的兼容性问题 简而言之 我发现标头的生成方式导致了问题 标头中的 ActivityId 和 Action 元素以及 WCF 对自定义标头的命名空间所做的操作导致了问题 我已成功
  • 在 Android Espresso 测试中关闭警报对话框

    我已经四处寻找解决方案 但找不到 我正在创建一个 Espresso 测试 需要关闭第一次显示特定活动屏幕时出现在屏幕中间的警报对话框 对话框上没有按钮 因此用户需要单击框外的任意位置才能将其关闭 有谁知道我如何用浓缩咖啡做到这一点 我尝试单
  • 在通过电子邮件发送 WhatsApp 聊天时,如何使我的 Android 应用程序出现在应用程序选择器中?

    我有兴趣让我的应用程序出现在我使用 WhatsApp 中的 电子邮件对话 功能时显示的应用程序列表中 当使用 电子邮件对话 WhatsApp 功能登录手机时 我可以看到SEND MULTIPLEGmail 收到的意图 I ActivityM
  • JS 文件中的 PHP 常量

    我面临着一个我无法理解的问题 在插件开发过程中 我包含了一个 file js php 注册 排队 Begin Tests var templateDir
  • 将选择下拉箭头替换为 fa-icon

    我试图用 fa 图标 chevron circle down 替换选择下拉箭头 但我只能发现背景可以用 css 文件中的图像替换 我可以在选择上添加图标 但是它不可点击 如何在选择下拉列表中使用字体图标有任何帮助吗 因为你不能使用pseud
  • CTRL+C 忽略 Webbrick 服务器

    In the past I could exit my rails application launched using webbrick using CtrlC At some point in development this func
  • 检查PHP是否已编译--with-mysql [重复]

    这个问题在这里已经有答案了 可能的重复 检测php中的mysql支持 有没有一种快速的方法来以编程方式检查这个特定的 PHP 安装是否已编译为支持 MYSQL 实际上有多个支持 MySQL 的模块 mysql mysqli pdo mysq
  • Spring Boot如何使用jwt进行用户角色管理

    我正在用 spring boot 编写一个 RESTful api 我正在使用 spring boot jersey mongo db swagger spring boot security 和 jwt 我已经编写了模型 数据库请求的存储
  • Android 上的 Web 视图支持 SSL 吗?

    The WebViewandroid 上的控件 支持 SSL 吗 我正在尝试加载一个使用受信任 ssl 证书的网页 但是WebView只是白色的 有什么建议么 不是专家 只是我在网上找到的 据我了解 WebView确实支持ssl 但是 黑屏
  • NPM 不工作(找不到模块“internal/fs”-nodejs)

    更新时出现 NPM 错误 我最近更新到 Node 版本 7 x 现在 npm 不工作了 我无法定位错误 可能是由于 npm ERR Cannot find module internal fs 当我跑步时我得到以下信息sudo npm up
  • 使用 unique_ptr 进行前向声明[重复]

    这个问题在这里已经有答案了 我发现将类的前向声明与std unique ptr如下面的代码所示 它可以使用 GCC 进行编译和工作 但整个事情看起来有点奇怪 我想知道这是否是标准行为 即标准所要求的 由于当我声明时 B 不是完整类型uniq
  • Android使用支持库来支持SearchView

    这是我的代码 if Build VERSION SDK INT gt Build VERSION CODES HONEYCOMB MenuItem searchItem menu findItem R id searchMenuItem S
  • @WebServlet 注释 web.xml 欢迎文件

    我想设置 JSP JavaBeans 项目的欢迎文件 我有一个名为 Controller java 的 servlet 带有以下 WebServlet 注释 WebServlet name Controller urlPatterns lo