问题标签 [tomcat9]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1379 浏览

eclipse - 在Tomcat 9上从eclipse启动应用程序

我有以下情况:

  • 视窗 10
  • 日食氧气.3
  • Apache Tomcat 9.0.6
  • JRE 9.0.4
  • 外部 Java 应用程序
  • 没有行家

我已使用“文件 > 从文件系统打开项目”选项导入项目。之后,这是我的应用程序树:

在此处输入图像描述

所以这是我遵循的步骤:

  • 窗口 > 首选项 > 已安装的 JRE > 选择 JRE 9.0.4
  • 窗口 > 首选项 > 服务器 > 添加 > Apache Tomcat 9 > tomcat_install_dir + JRE 9.0.4 + 添加应用
  • 发布 + 启动 Tomcat

尝试访问 localhost:8081,我可以看到 Apache Tomcat 主页。我将所有角色分配给 tomcat-users.xml 中的用户,因此我可以访问 localhost:8080/manager/html 并查看所有已部署的应用程序,包括我的应用程序。

在此处输入图像描述

但是,当我尝试访问我的应用程序时,我收到 404 错误,但 Tomcat 日志中没有错误。

在 Tomcat 的部署文件夹(C:\Program Files\Tomcat9.0\wtpwebapps\app\WEB-INF)中搜索我只有一个文件夹。没有静态内容,没有 js,没有 css,没有 jsp,没有 lib,.. 除了 classes 文件夹之外什么都没有:

在此处输入图像描述

关于Tomcat为什么不部署其他文件夹的任何想法?我猜这是我的 404 的主要原因。

0 投票
1 回答
585 浏览

java - Tomcat SecretKeyCredentialHandler 属性?

问题:

Tomcat 9 Realm 是否<CredentialHandler>需要正确的算法参数来散列密码并通过密码验证用户?

无论我通过 PBKDF2WithHmacSHA512 算法传递什么参数,我的 webapp 似乎都能够对用户进行身份验证,即使<CredentialHandler>元素上的属性不同或没有任何属性也是如此。

这是 Tomcat 领域的预期行为吗?如果是这样,这怎么可能?Realm 是否能够从散列的组成中推断出参数?

背景:

Tomcat 9 通过基于 Java 的SecretKeyFactory算法的领域提供容器管理的安全性。

我正在使用 PBKDF2WithHmacSHA512,它有以下选项:

  • 迭代
  • 密钥长度
  • 盐长

我的 webapp 中定义的 CredentialHandlercontext.xml

Tomcat 安装提供了对散列算法的 CLI 访问CATALINA_HOME/bin/digest.[bat|sh]。(有关更多详细信息,请参阅Tomcat 9 领域配置操作指南。)

无论我将选项传递给 CLI 散列算法,Tomcat 都能够从 DataSource Realm(MySQL 数据库)正确验证用户。密码可以通过以下两种方式成功验证:

示例 #1 匹配<CredentialHandler>

示例 #2 不同的参数:

另见

0 投票
1 回答
500 浏览

pdf - Tomcat 不在应用程序目录中提供静态内容

我在 java-1.8.0-openjdk-amd64 上运行的 Ubuntu 16.04 上使用 Tomcat 9.0.6。该应用程序提供一个页面,该页面包含一个指向 pdf 文件的 URL,当用户单击该链接时,该页面应该在浏览器中显示一个 pdf 文件。pdf 文件位于应用程序目录中。目录结构如下

当浏览器查询 pdf 文件的 URL 时,它会得到以下响应

但没有内容。日志中没有错误。我无法弄清楚问题是什么。应用程序是从它工作的 Tomcat 6 迁移而来的。任何帮助或方向表示赞赏。

0 投票
1 回答
3740 浏览

java - 在 Eclipse 中设置系统属性

请帮助了解我如何在 Tomcat 服务器 v9 上设置系统属性。因此,每当我需要属性值时,我都可以在我的 java 代码中使用 System.getProperty("home") 访问它们。我正在使用 Eclipse

我尝试在 catelina.bat 中设置 JAVA_OPTS 但在代码中为空。

这是我的 catelina.bat :

我需要在我的代码中使用家庭财产。

提前致谢。

0 投票
2 回答
1321 浏览

java - 如何在 tomcat9 中禁用 host-manager.logs?

我升级到tomcat9,突然我有了manager.yyyy-mm-dd.loghost-manager.yyyy-mm-dd.log文件。

我怎样才能禁用它们?

我已经尝试过设置/etc/tomcat9/conf/logging.properties

仍然会生成文件(没有内容)。我怎么能阻止这些文件的创建?

0 投票
3 回答
14330 浏览

eclipse - apache tomcat 9.x 不适用于 Eclipse 和 Java 10.0.1

我已经在我的 windows 机器上安装了 apache-tomcat- 9.0.7并具有以下环境配置:

回显 %JAVA_HOME%

C:\Program Files\Java\ jdk-10.0.1


回声 %JRE_HOME%

C:\Program Files\Java\ jre-10.0.1


操作系统:Windows 8 64 位


Eclipse 版本:Oxygen.3a版本 (4.7.3a)


每当我catlina.bat startcmd运行时,服务器在 localhost 上运行良好但我无法从 eclipse 的服务器配置中获取服务器实例。

  1. 在 Eclipse 中定义了一个新服务器并添加了 apache-tomact 9.0 实例
  2. 单击 start server 后,出现以下错误:

    -Djava.endorsed.dirs=C:\Softwares\apache-tomcat-9.0.7\endorsed 不受支持Endorsed standards and standalone APIs in modular form will be supported via the concept of upgradeable modules.

错误屏幕

这个问题有什么解决方案吗?

0 投票
0 回答
69 浏览

java - Tomcat 9 BaseInterceptor jar 丢失

我正在尝试基于 BaseInterceptor 创建一个请求拦截器(使用 Tomcat 9),如以下链接中所建议的那样:BaseInterceptor,但我似乎找不到对 Tomcat 9 的 jar 文件的任何引用。这种实现方式拦截器已被弃用,而较新的 Tomcat 版本有另一种方法吗?

非常感谢任何帮助!

0 投票
1 回答
169 浏览

tomcat - 是否可以在 Tomcat 9 中以编程方式设置 Tomcat 的线程池大小?

我看到很多关于如何通过 xml 配置进行操作的信息,但我使用的是嵌入式 Tomcat,并希望以编程方式设置它。

0 投票
0 回答
74 浏览

spring-mvc - 在 Tomcat 9 上部署 Spring Batch Admin 示例应用程序时遇到问题

我下载了最新的 Spring Batch Admin:https ://github.com/spring-projects/spring-batch-admin

我使用 mvn 打包/安装应用程序并在 /target 目录中获得了一个名为:L spring-batch-admin-sample-2.0.0.BUILD-SNAPSHOT.war 的 WAR 文件

我已经在本地安装了 Tomcat 9。我在 Eclipse 中创建了一个服务器并将项目 WAR 部署到其中。

当我尝试使用http://localhost:8080/spring-batch-admin-sample访问应用程序时,我在浏览器中收到 404 错误。我尝试按照此处参考文档中的所有说明进行操作,但仍然没有成功放置样本。

有人可以给我一个提示。

0 投票
1 回答
809 浏览

spring - Websocket CdiUtils NPE 使用

此应用程序在 TC7、Spring 3 和 JSF 2.2 中运行良好,但我想添加 JSF 2.3 的推送功能,所以在一些简单的初始问题后升级到 TC 9.0.8、Spring 5.0.5 和 JSF 2.3.0由于升级,该应用程序部署良好,Spring Security 工作(我可以登录),但随后出现此错误:

我的调试器显示在 CdiUtils:230 上 beanManager 为空,我怀疑但无法确认 FacesContext 在 CdiUtils:213 上为空。我怀疑这是由于同时拥有多个容器(Tomcat、CDI、Spring 和 JSF)造成的混乱。我确实喜欢 Spring Security、RestTemplate 和 JdbcTemplate,所以我有点不愿意放弃 Spring。这是我的推豆。我把所有的注释都扔给了它:

发送消息的 Facelet 代码:

JS websocket监听器:

用于显示消息的 JSF websocket 标记和代码:

任何想法如何解决这一问题?