如何在tomcat中设置org.apache.tomcat.util.digester.EnvironmentPropertySource

2023-12-10

我想通过 Kubernetes 为 tomcat 中的 server.xml 设置环境变量。这是我的部署.yaml:

apiVersion: v1
kind: Pod
metadata:
 name: tomcat-test-pod
...
...
env:
  - name: hostName
    value: 'test.com'
  - name: localhost
    value: 'localhost.com'

这是我的 server.xml:

<?xml version='1.0' encoding='utf-8'?>
<Resource 
      auth="Container" 
      description="Global E-Mail Resource" 
      mail.debug="false" 
      mail.smtp.auth="false" 
      mail.smtp.ehlo="true" 
      mail.smtp.host="${hostName}"
      mail.smtp.localhost="${localhost}"  
      mail.smtp.port="25" 
      mail.smtp.sendpartial="true" 
      mail.transport.protocol="smtp" 
      name="mail/Session" 
      type="javax.mail.Session"/>

From https://tomcat.apache.org/tomcat-9.0-doc/config/systemprops.html,它说我需要设置org.apache.tomcat.util.digester. PROPERTY_SOURCE to org.apache.tomcat.util.digester.EnvironmentPropertySource,但我不确定我应该做什么。我需要在 setenv.sh 中设置它还是需要创建另一个类?任何帮助将不胜感激..


org.apache.tomcat.util.digester.PROPERTY_SOURCE是一个 Java 系统属性,因此您可以在接受系统属性的地方设置它:

  • 您可以将其添加到命令行选项中,例如通过添加到setenv.sh:
CATALINA_OPTS="$CATALINA_OPTS -Dorg.apache.tomcat.util.digester.PROPERTY_SOURCE=org.apache.tomcat.util.digester.EnvironmentPropertySource

仅当您致电时这才有效catalina.sh/startup.sh启动 Tomcat(直接或间接)。例如,当将 Tomcat 作为服务启动时,它将无法在 Windows 上运行。

  • 将系统属性添加到catalina.properties:
org.apache.tomcat.util.digester.PROPERTY_SOURCE=org.apache.tomcat.util.digester.EnvironmentPropertySource

这总是有效的。

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

如何在tomcat中设置org.apache.tomcat.util.digester.EnvironmentPropertySource 的相关文章

随机推荐

  • 页面渲染上的自定义 html 标签由于某种原因跳过 HTML 解析

    我不知道为什么会发生这种情况 但如果确实有很多这样的元素 看起来自定义 html 标签无法在页面加载时正确解析其内容 document registerElement x tag prototype Object create HTMLEl
  • 家谱的 Graphviz 点边缘端口

    I am very接近能够生成一个看起来并不糟糕的家谱 但我遇到了以下问题 file tree dot digraph edge dir none node fillcolor black fixedsize true shape box
  • 当我的应用程序指向其他地方时,如何使用 Url.Action 和 Html.ActionLink?

    我在 apps server com appname 上托管了一个 C MVC 应用程序 但我在公司的 F5 上进行了 URL 重写 使该应用程序对 www server com apps appname 可见 现在 当我导航到该 url
  • 如何使用 SDL Tridion TOM.NET API 获取页面或组件的已发布时间戳

    我正在尝试使用 TOM NET API 获取给定页面或组件到给定目标的已发布时间戳 这并不是立即显而易见的Page or Component对象 有人能指出我正确的方向吗 您可以使用PublishEngine GetPublishInfo
  • 如何在Java中复制HashMap(不是浅复制)

    我需要复印一份HashMap
  • UI 之外用于 javascript 链接的闪亮模块命名空间

    我正在尝试使用闪亮的模块来重用 UI 和服务器代码来呈现共享相同演示文稿的三个不同数据集 在 UI 服务器代码之外使用基于 JavaScript 的模态弹出链接创建时 在处理命名空间时遇到了一些挑战 这是我的非工作应用程序代码 librar
  • 大括号扩展和参数扩展的顺序

    StackOverflow 上的常见比喻bash is 为什么不x 99 echo 1 x work 答案是 因为大括号在参数 变量之前展开 因此 我认为应该可以使用单个变量来扩展多个变量 和一个支架 我预计a 1 b 2 c 3 echo
  • 如何使 FlowLayout 包裹在其 JSplitPane 中?

    我编写此代码示例是为了说明我的程序遇到的问题 我希望能够将 JSplitPane 的滑块向左滑动 超出按钮的边缘 压缩 JPanel 并使 FlowLayout 将按钮包装到第二行 相反 JSplitPane 不允许我将滑块移过屏幕上最右边
  • 反序列化时的备用属性名称

    关于这个问题 使用 Json net 序列化时如何更改属性名称 当然 很好 但是我可以把蛋糕吃掉吗 我正在寻找一种令人赏心悦目的方式 为属性提供一个备用名称 使得字符串可以包含其中之一 就像是 BetterJsonProperty Prop
  • Android 构建错误

    当尝试在 Eclipse 中构建我的应用程序时 我遇到了这些错误 当编译器警告我我的 project 文件丢失时 事情开始走下坡路 然后我尝试修复该项目 现在收到以下错误 构建期间发生错误 在项目 net learn2develop Lay
  • 如何关闭 dropwizard 应用程序?

    我正在尝试使用 dropwizard 提出一个微服务 该文档讲述了如何启动应用程序 但没有提及如何优雅地终止它 例如 apache tomcat 都有启动and关闭脚本 那么有谁知道除了按之外如何终止 dropwizard 应用程序Ctrl
  • Python如何通过多重继承传递__init__参数

    我有这段代码 显示了经典的菱形图案 class A def init self x print A x class B A def init self x print B x super init b class C A def init
  • 如何从react调用存储过程

    我得到了一个已经用 ASP NET 开发的网站 我需要在 React 中开发同样的东西 下面是在 net 中编写的代码 用于在用户单击登录时调用存储过程 Dal objDal new Dal DataSet ds objDal ByText
  • c 编程 shmat() 权限被拒绝

    当我运行我的代码时遇到问题 我的 shmat 失败并且打印权限被拒绝 我在谷歌上搜索了如何解决它 但我不能 我的代码如下 include
  • AWS EMR 5.11.0 - Spark 上的 Apache Hive

    我正在尝试在 AWS EMR 5 11 0 上设置 Apache Hive on Spark Apache Spark 版本 2 2 1 Apache Hive 版本 2 3 2 纱线日志显示以下错误 18 01 28 21 55 28 错
  • C++ 数字加负数

    所以我只是练习编写斐波那契数列的动态解决方案 该解决方案将返回第 n 个斐波那契数 但我不断遇到一个我不太明白的问题 我得到两个正数加上一个负数 Code int fib int n vector
  • 使用 $window 配置 AngularJS 路由到深层路径

    我有一个 Rails 应用程序 其中有一些复杂的路由 我的 Angular 应用程序存在于深层 URL 中 例如 quizzes 1 我希望通过将 window 注入到我的路由配置中 然后嗅探 window location pathNam
  • ImportError:没有名为 sip 的模块(python2.7 PyQt4)

    我目前使用的是 Ubuntu 18 04 LTS 我正在尝试安装一个需要 PyQt4 和 QtWebKit 的程序 因此需要手动安装 因为 QtWebKit 已从 PyQt4 中排除 我下载了 sip 4 19 12 4 19 14 安装
  • 通过用逗号分隔的关键字突出显示文本

    我想用逗号分隔文本 即关键字如下 keyword1 keyword2 keyword3 keyword4 如何为每个以逗号分隔的关键字提供黑色样式元素 是否有捷径可寻 文本总是动态的 所以我永远不知道这些关键字到底是什么以及有多少 因此每个
  • 如何在tomcat中设置org.apache.tomcat.util.digester.EnvironmentPropertySource

    我想通过 Kubernetes 为 tomcat 中的 server xml 设置环境变量 这是我的部署 yaml apiVersion v1 kind Pod metadata name tomcat test pod env name