Java 在tomcat 7中,是否可以在同一端口上运行多个web应用程序

Java 在tomcat 7中,是否可以在同一端口上运行多个web应用程序,java,spring,hibernate,tomcat,Java,Spring,Hibernate,Tomcat,我们有两个使用Spring和Hibernate开发的web应用程序。我们已经在Tomcat7上部署了这两个应用程序。有时,如果我们不同时访问两个应用程序,这些应用程序运行正常。如果同时访问两个应用程序,有时会出现一些异常 例如:java.lang.ClassNotFoundException:org.apache.xerces.parsers.SAXParser 我们访问的第一个应用程序可以正常工作,但第二个不工作 我们确信我们可以在服务器上运行大量的应用程序 在同一端口上运行的多个web应用程

我们有两个使用Spring和Hibernate开发的web应用程序。我们已经在Tomcat7上部署了这两个应用程序。有时,如果我们不同时访问两个应用程序,这些应用程序运行正常。如果同时访问两个应用程序,有时会出现一些异常

例如:
java.lang.ClassNotFoundException:org.apache.xerces.parsers.SAXParser

我们访问的第一个应用程序可以正常工作,但第二个不工作

我们确信我们可以在服务器上运行大量的应用程序

在同一端口上运行的多个web应用程序将 除非彼此的上下文路径相同,否则不会产生问题 被推翻

从异常中可以明显看出,其中一个web应用程序没有正确配置以访问所需的jar。您可以将所需的JAR复制到Tomcat/libs,例如在windows上,路径是“C:\Program Files(x86)\Apache Software Foundation\Tomcat 7.0\lib”

$Tomcat/lib目录中的JAR对所有部署的web应用程序都可见。参考:


欢迎发表评论,寻求进一步帮助。

回答您的实际问题

在tomcat 7中,是否可以在同一端口上运行多个web应用程序

是的。Tomcat可以在一个端口上运行多个web应用程序。默认的Tomcat端口号是8080

java.lang.ClassNotFoundException:org.apache.xerces.parsers.SAXParser


其他原因导致此错误。

如果有多个Web应用程序,则每个应用程序都有自己的上下文路径。在这种情况下,应该没有问题。所以你在webapp上有,在你的webapp中是ROOT.war,其他webapp如果是stackoverflow.war,那么上下文路径是domain name/stackoverflow/remaingurl。我并没有在server.xml或server中的任何xml文件中进行任何配置。我应该吗?我现在也有这个例外。HTTP状态500-org.springframework.web.util.NestedServletException:处理程序处理失败;嵌套异常为javax.xml.parsers.FactoryConfigurationError:未找到提供程序org.apache.xerces.jaxp.saxparserfactorympl。请帮助此错误与tomcat未在同一端口上运行某些内容无关。这是500,因此开发人员编程服务器端webapp的错误。您有一个类路径问题,您的一个应用程序正在设置系统范围属性,但此依赖关系仅在一个应用程序的类路径上可用。每当需要xml解析器时,请在所有应用程序中显式设置此属性,或者将此依赖关系放在tomcat可以将其放在类路径中的位置,这样所有web应用程序都可以使用它。此错误是因为我没有在生成路径中包含xml解析API。现在我包括在内了。运行良好。非常感谢。