Tomcat 7: соединение reset с помощью однорангового или программного обеспечения вызвало прерывание соединения

У меня проблема, когда я пытаюсь развернуть Java-приложение.

Cannot invoke Tomcat manager: Connection reset by peer: socket write error

или

Cannot invoke Tomcat manager: Software caused connection abort: socket write error

В pom.xml У меня есть следующее:

<plugin>
    <groupId>org.apache.tomcat.maven</groupId>
    <artifactId>tomcat7-maven-plugin</artifactId>
    <version>2.2</version>
    <configuration>
        <url>http://localhost:8085/manager/html</url>
        <server>tomcat7</server>
        <path>/java_web</path>
        <username>admin</username>
        <password>admin</password>
    </configuration>
</plugin>

В tomcat-users.xml У меня есть следующее:

 <tomcat-users>
     <role rolename="admin"/>
     <role rolename="manager-script"/>
     <role rolename="manager-gui"/>
     <role rolename="manager-jmx"/>
     <user username="admin" password="admin" roles="manager-gui,admin,manager-jmx,manager-script" />
 </tomcat-users>

Также в Maven/conf/settings.xml у меня есть:

<server>
    <id>tomcat7</id>
    <username>admin</username>
    <password>admin</password>
</server>

Когда я пытаюсь перейти к

http://localhost:8085/manager/html/deploy?path=%2Fjava_web&update=true

и введите имя пользователя и пароль (admin admin) У меня есть ошибка:

403 Access Denied
You are not authorized to view this page.

Но я набрал tomcat-users.xml, что пользовательский администратор имеет роль manager-gui. Я использую Tomcat 7.0.56 и Дженкинс. Также используйте команды: clean и tomcat7-redeploy. Нужна помощь, чтобы понять, что не так: C

Ответ 1

В моем случае настройки выглядели нормально, но я уже загрузил то же самое веб-приложение на tomcat и не указал

<update>true</update>

в плагине tomcat в pom.xml

Ответ 2

Я добавил

<server>
    <id>tomcat7</id>
    <username>admin</username>
    <password>admin</password>
</server> 

в user/.m2/settings.xml

Также я не изменил pom.xml, tomcat-users.xml и Maven/conf/settings.xml, и теперь все работает нормально.

Ответ 3

        <plugin>
            <!-- tomcat deploy plugin -->
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>tomcat-maven-plugin</artifactId>
            <configuration>
                <url>http://localhost:8080/manager/text</url>
                <server>TomcatServer</server>
                <username>XXXX</username>
                <password>XXXX</password>
                <path>/XXXX</path>
            </configuration>
        </plugin>

Это работает для меня:)

Окружающая среда → Windowd 8.1 + Maven 3 + Tomcat 8.1.15 + JDK 1.8 Кроме того, мне пришлось использовать tomcat: redeploy

Кроме того, обновите свои настройки maven с помощью → Preferences- > Maven- > User Settings, чтобы указать на ваш файл настроек maven.xml. Добавьте значения сервера в maven settings.xml(раздел серверов и добавьте там данные сервера tomcat). Используйте это здесь (для меня id является TomcatServer)

Некоторые шаги были предприняты здесь: - http://kosalads.blogspot.de/2014/03/maven-deploy-war-in-tomcat-7.html

Ответ 4

Пользователям с ролью manager-gui не следует предоставлять роли manager- script или manager-jmx.

поэтому администратор пользователя должен удалить роль "manager-gui"

Ответ 5

mvn tomcat7:redeploy

попробуйте это как документация предлагает:

(Псевдоним для цели развертывания с параметром обновления, установленным в true.)