当我在不同端口上部署两个Web应用程序时,“无法调用Tomcat管理器:管道损坏”

时间:2018-08-21 21:38:59

标签: java maven tomcat deployment maven-tomcat-plugin

我试图在不同的端口上部署两个Web应用程序。我将以下代码添加到 server.xml

<Service name="quickseis">
    <Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol" />
    <Engine name="Catalina8080" defaultHost="localhost">
        <Host name="localhost" appBase="quickseis" unpackWARs="true" autoDeploy="true" />
    </Engine>
</Service>

<Service name="quickwell">
    <Connector port="8181" protocol="org.apache.coyote.http11.Http11NioProtocol" />
    <Engine name="Catalina8181" defaultHost="localhost">
        <Host name="localhost" appBase="quickwell" unpackWARs="true" autoDeploy="true" />
    </Engine>
</Service> 

tomcat-users.xml

<role rolename="manager-script"/>
    <role rolename="manager-jmx"/>
    <role rolename="manager-status"/>
    <role rolename="manager"/>
    <role rolename="manager-gui"/>

    <user username="admin" password="admin" roles="manager-script"/>

〜/ .m2 / settings.xml

<settings>
   <servers>
      <server>
        <id>tomcat</id>
        <username>admin</username>
        <password>admin</password>
      </server>
      <server>
        <id>remote</id>
        <username>admin</username>
        <password>admin</password>
      </server>
   </servers>
   <pluginGroups>
    <pluginGroup>org.apache.tomcat.maven</pluginGroup>
  </pluginGroups>
</settings>

pom.xml

<plugin>
    <groupId>org.apache.tomcat.maven</groupId>
    <artifactId>tomcat7-maven-plugin</artifactId>
    <version>2.1</version>
    <configuration>
        <url>http://localhost:8181/manager/text</url>
    <server>tomcat</server>
    <path>/</path>
</plugin>

tomcat启动后,对应的appBase文件夹为空,mvn tomcat7:deploy之后出现错误“无法调用Tomcat管理器:管道损坏”。如果我将ROOT.war文件手动放在这些目录中,则可以在浏览器中打开这两个Web应用程序,但是仍然不能使用 tomcat7-maven-plugin 部署Webapp。

webapps tomcat目录包含 host-manager manager 目录,因此我尝试将它们复制到我的appBase目录中,但没有帮助。

请帮助我解决此问题

0 个答案:

没有答案