问题标签 [context.xml]

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 回答
2134 浏览

java - Tomcat 更新 context.xml 但不应该

Tomcat 文档 (http://tomcat.apache.org/tomcat-6.0-doc/config/context.html)

仅当 $CATALINA_BASE/conf/[enginename]/[hostname]/ 中不存在应用程序的上下文文件时,应用程序文件内 /META-INF/context.xml 的单个文件中。如果 Web 应用程序被打包为 WAR,那么 /META-INF/context.xml 将被复制到 $CATALINA_BASE/conf/[enginename]/[hostname]/ 并重命名以匹配应用程序的上下文路径。此文件一旦存在,如果将具有较新 /META-INF/context.xml 的新 WAR 放置在主机的 appBase 中,它将不会被替换。

粗体字清晰。但我通知不正确。(我正是需要这种行为)

以下是步骤:

  1. 带有 context.xml 的 aaa.war 包含在 META-INF 中
  2. 复制到网络应用程序。Tomcat 部署。文件conf\Catalina\localhost\aaa.xml确定
  3. 通过更改 META-INF/context.xml 来更改 aaa.war
  4. 复制到网络应用
  5. 文件conf\Catalina\localhost\aaa.xml变了!!!

怎么了?它是错误还是隐藏功能?

背景 - 我要解决的问题:

配置独立构建和安装。我厂出货战争档案。客户端使用他自己的设置来配置他的 Tomcat。当我发布一个新版本时,我只是在没有配置的情况下交付战争,并且在部署时它将使用客户端特定的配置。

根据文档,最好的地方是 context.xml 但如果每次都被覆盖,那么使用起来毫无意义。(如果必须创建新的交付物,我为什么要使用 JNDI 之类的东西?在构建时更改某些东西并不是一个很大的配置优势。)

环境:windows,tomcat 6.0.33

0 投票
1 回答
12081 浏览

java - 在上下文 Tomcat 7 上启用自动部署

我一直在阅读,启用该autoDeploy选项将导致在放置新的战争文件时热部署应用程序。如果我只想autoDeploy在一个应用程序中设置而不是在整个服务器中设置,我应该启用它,<app>/META-INF/context.xml对吗?

如果是这样,该文件应类似于以下哪一项?

或者

当我尝试任何一个时,都会出现警告[SetContextPropertiesRule]{Context} Setting property 'autoDeploy' to 'true' did not find a matching property.

有什么建议吗?

更新

很抱歉给您带来不便,我误解了文档。我必须启用<Host>属性autoDeploy

所以我应该在context.xml中有类似的东西

我对吗?

0 投票
1 回答
5592 浏览

tomcat - Tomcat 6 context.xml 是否有 XML 模式?

NetBeans 非常支持显示 XML 中可用的节点和属性,但它需要加载模式。Tomcat 的上下文容器 XML 是否有一个?

0 投票
1 回答
4093 浏览

xml - 我想用另一个项目的 xml 和源运行 main() 加载 spring 上下文 xml

我有两个java项目。一个是main,另一个是导入项目到main。使用 Maven,我加载了两个项目的 spring 上下文 xml。但是如果我想在主项目下面执行但是,这个源不能加载导入项目的xml。请帮我。我想加载另一个项目的 spring 上下文 xml 和源代码。

0 投票
2 回答
15450 浏览

spring - 使用 Jetty 以编程方式部署 servlet

我有一个希望使用 Jetty 以编程方式部署的 servlet。servlet 使用 Spring,它的 web.xml 指向 Spring 上下文 XML 文件,正如您所期望的那样。

目前,我只是尝试使用 Jetty 文档中的示例代码,但使用的是我自己的 servlet:

这会导致以下异常:

如何设置我的 servlet 以便 Jetty 知道它的 web.xml 和 Spring 上下文在哪里?

任何帮助将不胜感激!

编辑

所以,显然我不需要 web.xml,但我确实需要将 Jetty 指向我的 Spring 上下文。我尝试过类似以下的方法:

但它不起作用(仍然产生相同的异常)。我还尝试在 ServletHolder 上设置“contextConfigLocation”,但无济于事。

0 投票
1 回答
710 浏览

jndi - 使用 Tomcat 7.0.27 和 Atomikos 3.7.1 自动发布后未找到 JNDI 资源

我正在使用 Spring、Tomcat 7.0.27 和 Atomikos 3.7.1 构建一个 Web 应用程序。我遵循了 Atomikos 的集成指南:Tomcat7Integration35。除了 Tomcat 7.0.27 中不再存在的两个侦听器之外,一切都正常。所以我没有在 server.xml 文件中包含这两个监听器。

<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />

<Listener className="org.apache.catalina.storeconfig.StoreConfigLifecycleListener"/>

当我第一次启动 Tomcat 时,一切正常。当我进行一些代码更改并且 Tomcat 尝试自动发布应用程序时,找不到在 context.xml 中定义的 JNDI 资源(异常:javax.naming.NameNotFoundException)。我需要停止服务器并重新启动它。通过这样做,应用程序被成功发布。

有没有其他人经历过这个?如果您能给我任何指示,我将不胜感激。

0 投票
1 回答
580 浏览

java - 将 META-INF/context.xml 重新加载到 ../conf/Catalina/localhost/myapp.xml 不起作用

我正在尝试进行热部署。数据库连接信息存储在我的 META-INF/context.xml 中。

当我将文件夹放到我的 $TOMCAT_HOME/webapps/ 时,它会尝试重新加载然后失败,因为它找不到数据库连接信息。当我在 ../conf/Catalina/localhost/myapp.xml 中查看时,它不在那里。

有人可以给我一些线索,这样我就可以找到可能出了什么问题?

(我认为它不是权限错误,因为 localhost 在 777 - 用于测试)

0 投票
1 回答
1559 浏览

session - 创建自定义tomcat会话管理器而不将jar放在CATALINA_HOME目录中?

我正在为 Tomcat 开发一个自定义会话管理器,并且我得到了一个警告,我必须将 jar(以及所有相关的 jar)放在 CATALINA_HOME/lib 目录中,否则我会得到一个 noclassdef found 异常,即使这些类位于 WEB-INF/lib 目录中。

有什么方法可以强制 tomcat 在加载会话管理器时查看 web 应用程序 lib 目录?将它放在 lib 目录中很容易出错(因为您必须记住在新系统上升级和/或安装时复制 jar)并使 jar 的开发更加困难。

0 投票
2 回答
17111 浏览

tomcat - 如何使 Tomcat 与 META-INF/context.xml 中定义的 TomcatInstrumentableClassLoader 以及 WEB-INF/lib/spring-instrument-tomcat.jar 一起工作

我构建了一个简单的应用程序,它在服务器端使用 Spring Data 3.1.0.RELEASE 和 Eclipselink 2.4 - 它托管在 Tomcat 7.0.27 中。在 mywebapp/META-INF/context.xml 我有 Spring 类加载器

如果我放入spring-instrument-tomcat.jar$TOMCAT_HOME/lib则 Tomcat 运行 mywebapp 很好,但如果我放入spring-instrument-tomcat.jar- $TOMCAT_HOME/webapps/mywebapp/WEB-INF/libTomcat 异常死亡

上下文加载器参数useSystemClassLoaderAsParent设置为false也无济于事。

我不想在 Tomcat 中有任何(自定义)全局库(在我们的现实生产系统中拥有全局库并不容易),因此我试图简单地本地化所有需要的东西(但很大)战争文件。关于如何实现这种封装的任何想法?

0 投票
1 回答
1276 浏览

root - 如何在 Tomcat 6 的 Web 应用程序中定义 context.xml 的上下文路径?

谁能向我建议我必须将上下文路径放在 Tomcat 服务器中的哪个位置?我必须把它放进去context.xml还是我必须在里面创建一个新的 .xml apache-tomcat-6.0.18\conf\Catalina\localhost

当我输入 URL 时,http://localhost:9796/这应该会将我重定向到登录页面。但我越来越404 exception。任何建议都会非常有帮助。