草庐IT

java - Guice 3.0 + Tomcat 7.0 = ClassLoader 内存泄漏

我知道这个问题已经存在了至少3年(Issue92),但我仍然对它的当前状态不满意。我也知道,如果您在重新部署后重新启动,这不会影响Tomcat(如Guice+Tomcatpotentialmemoryleak中所建议)。我的问题是在一些重新部署后我遇到了OutOfMemoryError:PermGen错误。请注意,我没有明确使用google-collections,我只使用Guice3.0(通过maven)。分析堆转储后,我仍然看到线程com.google.inject.internal.Finalizer仍然处于Activity状态,保留对Tomcat的WebappClassLoad

java - 编写 jax-ws web 服务并生成无 XSD 的 WSDL

我在java上为tomcat应用程序服务器编写了一个简单的JAX-WSWeb服务。我有一个接口(interface)和一个实现类:界面@WebService(name="myWs")@SOAPBinding(style=Style.RPC)publicinterfaceIMyWs{@WebMethod(operationName="getUser")ResponsegetUser(@WebParam(name="phone",mode=Mode.IN)Stringphone);}实现@WebService(endpointInterface="ge.mari.IMyWs")public

java - 在 tomcat 中的单个 webapp 文件夹上托管多个域

this可能重复但答案不被接受。我有两种情况我们正在构建CRM,我们将有多个客户使用相同的产品。让我们举个例子,subdomain1.maindomain1.com和anysubmain.anothermaindomain.com应该指向同一个webapp文件夹。根据域,我们将动态选择数据库,但代码库将保持不变。此处要注意:整个代码库保持不变。我们正在为客户构建一系列网站,其中部分代码库将对所有网站保持不变,但根据子域,我们将加载默认的servlet文件。让我们举个例子,manage.domain.comcrm.domain.comequote.domain.com应该指向相同的web

java - 如何停止创建 .mdmp 文件

我有一个Solr实例,由最近开始创建小型转储文件的Tomcat托管。任何日志中都没有错误,Solr继续正常工作。这些文件大约有14GB,并且正在填满硬盘。在我们调查问题时,是否有办法关闭此功能? 最佳答案 一般来说,当JVM崩溃时,hs_err错误日志文件(由-XX:ErrorFile控制)的内容通常足以指出问题所在。为了防止OracleJVMHotspot生成Windowsminidump(mdmp文件),在命令行上使用的JVM选项是:-XX:-CreateMinidumpOnCrash它自2011年就存在但很难找到:Howtod

java.io.IOException : failed to decrypt safe contents entry: javax. crypto.BadPaddingException:给定的最终 block 未正确填充

我运行以下命令从PFX文件创建JKS文件以在Tomcat中使用:keytool-importkeystore-srckeystorePFX_P12_FILE_NAME-srcstoretypepkcs12-srcstorepassPFX_P12_FILE-srcaliasSOURCE_ALIAS-destkeystoreKEYSTORE_FILE-deststoretypejks-deststorepassPASSWORD-destaliasALIAS_NAME但是我收到以下错误:keytoolerror:java.io.IOException:failedtodecryptsafec

java - 嵌入式与非嵌入式 Java 服务器

我正在做一个Java项目,一直在使用Tomcat服务器进行本地测试。然而,我正要推送到Heroku,我发现anarticle这建议使用“嵌入式”Tomcat。我环顾四周以了解“嵌入式”在Java服务器上下文中的确切含义,但似乎Google上的每个人都已经理解“嵌入式”的含义。我不。部署“常规”Tomcat服务器和“嵌入式”服务器有什么区别? 最佳答案 “嵌入式”意味着您的程序随其中的服务器一起发布,而不是将Web应用程序部署到外部服务器。对于嵌入式服务器,您的应用程序与所选服务器打包在一起,并负责服务器启动和管理。从用户的角度来看,

java - 适当的 Tomcat 5.5 启动参数来调整 JVM 以满足极高的需求、大堆 Web 应用程序?

我们最近将一个大型、高要求的Web应用程序从Tomcat4迁移到Tomcat5.5,并注意到一些似乎与JVM暂停有关的特殊减速行为。为了在Tomcat4上运行我们的应用程序并支持随着时间的推移增加的负载,许多不太标准的JVM参数被设置和调整如下,我希望有TomcatJVM调整经验的人可以评论任何可能有害的东西到Tomcat5.5安装。另请注意,其中一些可以从以前的Java版本中继承(我们使用这些参数在Java1.6上成功运行Tomcat4一段时间,但可能已经引入了一些以帮助Java1.4上的垃圾收集,这是Java的基础我们的Tomcat4安装了很长时间,现在可能弊大于利)。一些注意事项

java - 如何在 Tomcat 启动期间禁止特定应用程序启动?

我的公司正在准备一个新的生产箱,而当前的生产箱正在运行。我想主动在新生产箱的Tomcat容器中安装应用程序,但希望将它们禁用(类似于Websphere中的功能)——这非常重要,因为一些应用程序轮询数据库中的数据并启动应用程序会干扰当前的生产部署。它们将在生产切换时启用。我将如何做到这一点?任何见解将不胜感激。 最佳答案 在启动tomcat之前,您可以简单地将不想自动启动的web应用程序中的deWEB-INF目录重命名为其他名称,例如Disabled-WEB-INF。稍后,如果您希望在tomcat运行时启动该应用程序,只需将目录重命名

java - IntelliJ 理念 : Deploy a simple Java servlet (no JSP) to Tomcat 7

我尝试按照教程here进行操作部署servlet,但只有在指定JSP文件时才有效。问题是,如果没有JSP,我不知道如何在Tomcat运行/调试配置中设置StartupPage。那么知道该怎么做吗?谢谢! 最佳答案 您应该在web.xml中定义一个servlet-mapping,如下所示:然后将url-pattern添加到服务器根URL: 关于java-IntelliJ理念:DeployasimpleJavaservlet(noJSP)toTomcat7,我们在StackOverflow上

java - 返回 404 的 Rest Web 服务

这是我第一次使用Eclipse,这让我很生气。我安装了Tomcat6.0,下载了Jersey库,并遵循了以下教程:http://www.vogella.com/articles/REST/article.html#first_client我将项目名称创建为RestExample,其中包含一个包de.jay.jersey.first,其中包含一个类HelloWorldResource,它的外观如下:packagede.jay.jersey.first;importjavax.ws.rs.GET;importjavax.ws.rs.Path;importjavax.ws.rs.Produc