草庐IT

java - 有没有办法在 Apache Tomcat 6.x 启动期间执行代码来执行初始化例程等?

我想在我的Tomcat服务器完成启动并开始提供我的servlet之前初始化一个类的全局实例。如果此服务以某种方式初始化失败,我希望整个启动序列也失败(或尽可能接近失败;否则服务器运行将毫无意义)。我能做到这一点的最好方法是什么? 最佳答案 每个Web应用程序都有一个与之关联的ServletContext。ServletContext对象在应用程序启动时创建,并在应用程序关闭时销毁。ServletContext具有全局范围,类似于应用程序中的全局变量。http://www.javabeat.net/tips/178-servletco

java - 在本地主机上发布到 Tomcat v6.0 服务器时出错

当我尝试运行jsf页面时,Tomcat出现问题,出现下一个错误:详细信息:Publishingtheconfiguration...ErrorcopyingfiletoC:/ProgramFiles/ApacheSoftwareFoundation/Tomcat6.0/backup\catalina.policy:C:\ProgramFiles\ApacheSoftwareFoundation\Tomcat6.0\backup\catalina.policy(Thesystemcannotfindthepathspecified)C:\ProgramFiles\ApacheSoftwa

java - Tomcat:getHeader ("Host") 与 getServerName()

我有一个从多个域提供的Tomcat应用程序。以前的开发人员构建了一个方法来返回应用程序URL(见下文)。在方法中,他们请求服务器名称(request.getServerName()),该名称适本地返回httpd.conf文件中的ServerName。但是,我不想那样。我想要的是浏览器将请求发送到的主机名,即浏览器从哪个域访问应用程序。我尝试了getHeader("Host"),但仍然返回httpd.conf文件中设置的ServerName。除了request.getServerName(),我应该使用什么来获取浏览器向其发送请求的服务器名称?例如:httpd.conf中的服务器名称:w

java - 运行tomcat时设置Java窗口的标题

我正在写一个脚本来启动几个tomcat服务器,就像这样cd"F:\...\apache-tomcat-5.5.33\bin"call"cmd/cstartup.bat"cd"F:\...\apache-tomcat-5.5.33\bin"call"cmd/cstartup.bat"etc我正在工作,但每个都在一个Java窗口中打开,该窗口的顶部仅显示“tomcat”。我可以具体说明这段文字说的是什么吗?我真的很想能够区分它们! 最佳答案 您必须设置一个环境变量。阅读最后一个说TITLE的内容。我在catalina.bat中找到了它。

java - 我无法登录 Tomcat Manager 应用程序

我在stackoverflow中阅读了很多主题来解决我的问题,但没有一个有用。当我尝试使用许多不同的配置登录管理器应用程序([http://localhost:8080/manager/html][1])时,我总是得到401Unauthorized尝试使用权限凭据登录。我重启了tomcat服务器几次。这是我在conf/tomcat-users.xml中的最后一个配置这是server.xml中tomcat-users相关的部分这是我的配置:ApacheTomcat:版本7.0.4064位在Chrome26上测试如果我忘记了其他有用的东西,请告诉我。提前致谢 最

java - 为什么我的 tomcat 应用程序的内存使用量不断增长?

我的应用程序在WindowsServer2000上运行。内存使用量不断增长(从145m)。这正常吗?我是Java的新手。版本为Tomcat5.5。 最佳答案 如果它一直增长,那就是内存泄漏。但是如果它增长到你的最大堆,然后下降,那么这是正常的垃圾收集行为。您可以使用许多工具来了解更多信息。最简单的方法之一是连接JConsole(JDK的一部分)并随时间观察您的堆。您还可以使用各种开关和参数(例如-verbose:gc)来查看垃圾回收信息。如果您想诊断内存泄漏,有许多优秀的工具可用,包括几个可与Eclipse、NetBeans、Int

apache - Tomcat (win7) 缺少 JRE_HOME 变量

两周前我安装了tomcat和Apachehttp服务器。我让它运行起来,并且能够从另一台计算机上运行JSP页面。我稍作停顿,现在我正在尝试运行它不起作用的系统。我可以访问中的默认索引页http://[my-IP-address]:8080但无法访问jsp文件夹的页面,甚至无法访问.html文件。它给了我503servicetemporarilyunavailable.甚至本地主机似乎都不起作用。我不记得是否需要启动Tomcat服务器,或者mod_jk.so是否会自动处理。当我尝试使用startup.bat启动tomcat时,它给了我消息JRE_HOMEenvironmentvariab

java - 在 apache tomcat 7.0 上运行时出现 jersey 2.7 问题

我正在使用apachetomcat7.0和eclipse创建一个Jersey应用程序。我在eclipse中创建了一个动态web项目,并将资源文件定义为:-importjavax.ws.rs.GET;importjavax.ws.rs.Path;importjavax.ws.rs.Produces;importjavax.ws.rs.core.MediaType;//PlainoldJavaObjectitdoesnotextendasclassorimplements//aninterface//TheclassregistersitsmethodsfortheHTTPGETreque

java - 在 Tomcat 上处理 URI 中的字符编码

在我试图帮助的网站上,用户可以在浏览器中输入一个URL,比如跟随汉字,http://localhost:8080?a=测试在服务器上,我们得到GET/a=%E6%B5%8B%E8%AF%95HTTP/1.1如您所见,它是UTF-8编码的,然后是URL编码的。我们可以通过在Tomcat中将编码设置为UTF-8来正确处理这个问题。但是,有时我们会在某些浏览器上获得Latin1编码,http://localhost:8080?a=ß变成GET/a=%DFHTTP/1.1有没有办法在Tomcat中正确处理这个问题?看起来服务器必须进行一些智能猜测。我们不期望100%正确地处理Latin1,但假

java - Tomcat JDBC 连接池 VS c3p0 连接池

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于StackOverflow来说是偏离主题的,因为它们往往会吸引自以为是的答案和垃圾邮件。相反,describetheproblem以及迄今为止为解决该问题所做的工作。关闭8年前。Improvethisquestion我最近遇到了这个连接池实现。http://people.apache.org/~fhanik/jdbc-pool/jdbc-pool.html我觉得挺有意思的。有人试过吗?我认为它看起来很棒,除了它不支持像c3p0那样的自动重试和语句缓