相关疑难解决方法(0)

处理"java.lang.OutOfMemoryError:PermGen space"错误

最近我在我的Web应用程序中遇到了这个错误:

java.lang.OutOfMemoryError:PermGen空间

这是在Tomcat 6和JDK 1.6上运行的典型Hibernate/JPA + IceFaces/JSF应用程序.显然,重新部署应用程序几次后就会发生这种情况.

导致它的原因以及可以采取哪些措施来避免它?我该如何解决这个问题?

memory-leaks exception out-of-memory permgen java-6

1215
推荐指数
17
解决办法
102万
查看次数

如何更改ROOT应用程序?

我正在尝试将Tomcat 6网络服务器的默认应用程序更改为与"ROOT"(在webapps文件夹内)不同的应用程序.做这个的最好方式是什么?

tomcat tomcat6

129
推荐指数
6
解决办法
22万
查看次数

使用Maven时如何在Tomcat 7.0中设置root("/")的上下文路径

我有一个maven项目,pom.xml包含tomcat插件.

<plugin>
 <groupId>org.apache.tomcat.maven</groupId>
 <artifactId>tomcat7-maven-plugin</artifactId>
 <version>2.2</version>
</plugin>
Run Code Online (Sandbox Code Playgroud)

我已经下载了Tomcat 7,所以我有Tomcat目录(apache-tomcat-7.0.56).我尝试了三个目标来运行我的项目:

tomcat7:run, tomcat7:run-war, tomcat7:run-war-only

http://localhost:8080/projectname如果我运行tomcat7:run-war, 我的应用程序运行在projectname-0.0.1-SNAPSHOT.war我的项目的/ target目录中.

我想运行我的应用程序http://localhost:8080/.

我知道之前曾问过这个问题,但遗憾的是这些解决方案对我没有帮助.

我试图从第一个答案两种方法.

第一种方法对我不起作用,在重命名战争后没有任何改变,tomcat7:run-war-only需要使用类似projectname-0.0.1-SNAPSHOT.war的名称进行战争.

第二种方法没有改变(我试过了两种方法

<Context path="" docBase="projectname-0.0.1-SNAPSHOT" debug="0" reloadable="true"></Context>

<Context path="" docBase="projectname" debug="0" reloadable="true"></Context>)
Run Code Online (Sandbox Code Playgroud)

我也看了这个,但<catalina_home>/conf/Catalina/localhost/我的Tomcat目录中没有目录.

java tomcat maven-plugin maven

16
推荐指数
1
解决办法
1万
查看次数

Tomcat:无法销毁与ProtocolHandler关联的端点

问题:运行我的项目tomcat我遇到以下问题:

SCHWERWIEGEND: Failed to destroy end point associated with ProtocolHandler ["ajp-nio-8009"]
java.lang.NullPointerException
    at org.apache.tomcat.util.net.NioEndpoint.releaseCaches(NioEndpoint.java:316)
    at org.apache.tomcat.util.net.NioEndpoint.unbind(NioEndpoint.java:492)
    at org.apache.tomcat.util.net.AbstractEndpoint.destroy(AbstractEndpoint.java:821)
    at org.apache.coyote.AbstractProtocol.destroy(AbstractProtocol.java:534)
    at org.apache.catalina.connector.Connector.destroyInternal(Connector.java:1023)
    at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:297)
    at org.apache.catalina.core.StandardService.destroyInternal(StandardService.java:589)
    at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:297)
    at org.apache.catalina.core.StandardServer.destroyInternal(StandardServer.java:877)
    at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:297)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:633)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:351)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:485)
Run Code Online (Sandbox Code Playgroud)

问题:问题是由我的web.xml文件引起的吗?

web.xml中

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
  <display-name>SMS Cloud Service</display-name>


</web-app>
Run Code Online (Sandbox Code Playgroud)

HomeController.java

  @RestController
    public class HomeController {

        private final MachineRepository machineRepository; …
Run Code Online (Sandbox Code Playgroud)

java spring tomcat spring-mvc

8
推荐指数
1
解决办法
3万
查看次数

apache-tomcat-9.0.0.M10:更改 META-INF/context.xml 中的上下文路径不起作用

我有一个标准的 Tomcat9 安装。我只是将 helloworld.war 放在 webapps 文件夹中,并在 META-INF 中将 context.xml 放在不同的路径中,例如: <Context path="/newcontext" />

但上下文仍然是http://localhost/helloworld而不是http://localhost/newcontext

我尝试了很多方法,但无法说服 Tomcat 使用新路径。有谁可以帮忙吗?谢谢。

java xml tomcat

4
推荐指数
1
解决办法
1万
查看次数

如何在tomcat服务器中部署应用程序

我想在tomcat服务器中部署myapp.我知道一种方法是从webapps中删除Root文件夹,并将我的app.war重命名为ROOT.WAR.但我不想这样做.我希望像用户访问我的应用程序一样部署为www.xxx.com,它应该转到我的应用程序,如www.xxx.com/login.html.请帮忙

tomcat tomcat8

4
推荐指数
1
解决办法
2708
查看次数