web-dev-qa-db-ja.com

Tomcat7サーバーにアプリケーションをデプロイしようとするとエラーが発生する

Eclipse luna経由でTomcat7にWebアプリケーションをデプロイしようとしていますが、このエラーが発生しています:

Uploading: http://localhost:8080/manager/text/deploy?path=%2Floja

[INFO] I/O exception (Java.net.SocketException) caught when processing request: Connection reset
[INFO] Retrying request
Uploading: http://localhost:8080/manager/text/deploy?path=%2Floja

[INFO] I/O exception (Java.net.SocketException) caught when processing request: Connection reset
[INFO] Retrying request
Uploading: http://localhost:8080/manager/text/deploy?path=%2Floja

[INFO] I/O exception (Java.net.SocketException) caught when processing request: Connection reset
[INFO] Retrying request
Uploading: http://localhost:8080/manager/text/deploy?path=%2Floja

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 4.936 s
[INFO] Finished at: 2014-08-15T22:10:04-03:00
[INFO] Final Memory: 13M/112M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.Apache.Tomcat.maven:Tomcat7-maven-plugin:2.2:deploy (default-cli) on project loja: Cannot invoke Tomcat manager: Connection reset -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.Apache.org/confluence/display/MAVEN/MojoExecutionException

Tomcat8にもデプロイしようとしましたが、これと同じエラーが発生します。

私のpom.xmlには、この操作に関連するこの構成があります。

  <build>
    <finalName>loja</finalName>
    <plugins>
        <plugin>
           <groupId>org.Apache.Tomcat.maven</groupId>
           <artifactId>Tomcat7-maven-plugin</artifactId>
           <version>2.2</version>
           <configuration>
                <url>http://localhost:8080/manager/text</url>
                <server>TomcatServer</server>
                <path>/loja</path>
                <username>user001</username>
                <password>123</password>
           </configuration>
        </plugin>
        <plugin>
            <groupId>org.Apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <configuration>
                <failOnMissingWebXml>false</failOnMissingWebXml>
            </configuration>
        </plugin>
    </plugins>
</build>

誰がここで何が起こっているか知っていますか?

[〜#〜] update [〜#〜]

コマンドmvn:Tomcat7 deploy -Xを使用してアプリケーションをデプロイしようとしましたが、出力は次のとおりでした。

[INFO] Retrying request
[DEBUG] Reopening the direct connection.
[DEBUG] Connecting to localhost:8080
[DEBUG] Attempt 4 to execute request
[DEBUG] Sending request: PUT /manager/text/deploy?path=%2Floja HTTP/1.1
[DEBUG]  >> "PUT /manager/text/deploy?path=%2Floja HTTP/1.1[\r][\n]"
[DEBUG]  >> "User-Agent: Apache Tomcat Maven Plugin/2.2[\r][\n]"
[DEBUG]  >> "Content-Length: 18783041[\r][\n]"
[DEBUG]  >> "Host: localhost:8080[\r][\n]"
[DEBUG]  >> "Connection: Keep-Alive[\r][\n]"
[DEBUG]  >> "Authorization: Basic dXNlcjAwMToxMjM=[\r][\n]"
[DEBUG]  >> "[\r][\n]"
[DEBUG] >> PUT /manager/text/deploy?path=%2Floja HTTP/1.1
[DEBUG] >> User-Agent: Apache Tomcat Maven Plugin/2.2
[DEBUG] >> Content-Length: 18783041
[DEBUG] >> Host: localhost:8080
[DEBUG] >> Connection: Keep-Alive
[DEBUG] >> Authorization: Basic dXNlcjAwMToxMjM=
Uploading: http://localhost:8080/manager/text/deploy?path=%2Floja
...
[DEBUG] Connection 0.0.0.0:53183<->127.0.0.1:8080 closed
[DEBUG] Closing the connection.
[DEBUG] Connection 0.0.0.0:53183<->127.0.0.1:8080 closed
[DEBUG] Connection 0.0.0.0:53183<->127.0.0.1:8080 shut down
[DEBUG] Connection 0.0.0.0:53183<->127.0.0.1:8080 closed
[DEBUG] Connection released: [id: 0][route: {}->http://localhost:8080][total kept alive: 0; route allocated: 0 of 2; total allocated: 0 of 5]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 5.271 s
[INFO] Finished at: 2014-08-16T08:11:09-03:00
[DEBUG] Connection manager is shutting down
[INFO] Final Memory: 14M/109M
[INFO] ------------------------------------------------------------------------
[DEBUG] Connection manager shut down
17
Kleber Mota

OK、Tomcat7でも同じ問題がありました。

[INFO] I/O exception (Java.net.SocketException) caught when processing request: Connection reset
[INFO] Retrying request
Uploading: http://localhost:8080/manager/text/deploy?path=%2iplover

[INFO] I/O exception (Java.net.SocketException) caught when processing request: Connection reset
[INFO] Retrying request
Uploading: http://localhost:8080/manager/text/deploy?path=%2iplover

[INFO] I/O exception (Java.net.SocketException) caught when processing request:         Connection reset
[INFO] Retrying request
Uploading: http://localhost:8080/manager/text/deploy?path=%2iplover

私はそれを動作させることができませんでした

mvn Tomcat7:redeploy 

前述のとおり here

私のWARはそれほど大きくなく、わずか4MBでした。

これが根本的な問題と解決策でした

Tomcat-users.xmlに正しい役割が設定されていることが重要です。私はロールmanagerセットアップのみを持っていました。 manager-scriptを追加することが重要と思われ、私の問題を完全に解決しました。

<role rolename="manager"/>
<role rolename="manager-script"/>
<role rolename="manager-gui"/>
<user username="admin" password="admin" roles="manager,manager-gui,manager-script"/>
16
lawinslow

誰かがこの問題を解決したかどうかはわかりません。私の場合、回避策を見つけました:deployの代わりにredeployを使用するとうまくいきます。

この問題はおそらくメモリの問題に関連している可能性がありますか、読み取り/書き込みアクセスではありませんか?

12
christophenoel

デフォルトでは、Tomcatの最大アップロードサイズは50MBです。 (つまり、WARファイルの最大サイズ)

大きなファイルが必要な場合は、Tomcat max-file-size内のmax-request-sizeおよびweb.xmlを増やしてみてください。注:これらの値は両方ともバイトで保存されます。

.../webapps/manager/WEB-INF/web.xmlを編集します。 (ファイルサイズがアップロードしようとしているwarファイルよりも大きいことを確認してください)。つまり、80MBのWARが必要な場合、

  <max-file-size>82914560</max-file-size>
  <max-request-size>82914560</max-request-size>

次に、Apache Tomcatを再起動します。

https://octopus.com/blog/Tomcat-manager-deployment

11
wired00

あなたの戦争の規模は?サイズが大きすぎるためかもしれません。デフォルトでは、Tomcatマネージャーは50MB未満のサイズのwarのみを許可します。 deployの代わりにmvn Tomcat7:redeployも試してください。

戦争のサイズ制限を増やす方法はこちらを参照

10
Wei

私は同じ問題を抱えていて、mavenゴールを実行して解決しました

Tomcat7:redeploy

の代わりに

Tomcat7:デプロイ

Tomcat7とTomcat8の両方で機能し、私のwarファイルは常に50 MB未満でした。

7
cleberz

〜/ .m2/settings.xmlを確認してください

<settings>
  <servers>
    <server>
      <id>Tomcat-manager</id>
      <username>user001</username>
      <password>123</password>
    </server>
  </servers>
</settings>
2
masniimura

時々問題

再展開が失敗する場合、成功する場合がありますが、ログの増加によりDOS保護が示される場合があります。

/conf/logging.propertiesそして行を追加します

org.Apache.catalina.level = FINEST

ファイルの最後。次の出力が表示される場合があります。

FINE [http-nio-8080-exec-7] org.Apache.catalina.authenticator.AuthenticatorBase.invoke Security checking request PUT /manager/text/deploy
FINE [http-nio-8080-exec-7] org.Apache.catalina.loader.WebappClassLoaderBase.loadClass loadClass(org.Apache.catalina.manager.ManagerServlet, false)
FINE [http-nio-8080-exec-7] org.Apache.catalina.loader.WebappClassLoaderBase.loadClass   Delegating to parent classloader1 Java.net.URLClassLoader@568db2f2
FINE [http-nio-8080-exec-7] org.Apache.catalina.loader.WebappClassLoaderBase.loadClass   Loading class from parent
FINE [http-nio-8080-exec-7] org.Apache.catalina.realm.RealmBase.findSecurityConstraints   Checking constraint 'SecurityConstraint[Status interface]' against PUT /text/deploy --> false
FINE [http-nio-8080-exec-7] org.Apache.catalina.realm.RealmBase.findSecurityConstraints   Checking constraint 'SecurityConstraint[Text Manager interface (for scripts)]' against PUT /text/deploy --> true
FINE [http-nio-8080-exec-7] org.Apache.catalina.realm.RealmBase.findSecurityConstraints   Checking constraint 'SecurityConstraint[HTML Manager interface (for humans)]' against PUT /text/deploy --> false
FINE [http-nio-8080-exec-7] org.Apache.catalina.realm.RealmBase.findSecurityConstraints   Checking constraint 'SecurityConstraint[JMX Proxy interface]' against PUT /text/deploy --> false
FINE [http-nio-8080-exec-7] org.Apache.catalina.realm.RealmBase.findSecurityConstraints   Checking constraint 'SecurityConstraint[Status interface]' against PUT /text/deploy --> false
FINE [http-nio-8080-exec-7] org.Apache.catalina.realm.RealmBase.findSecurityConstraints   Checking constraint 'SecurityConstraint[Text Manager interface (for scripts)]' against PUT /text/deploy --> true
FINE [http-nio-8080-exec-7] org.Apache.catalina.realm.RealmBase.findSecurityConstraints   Checking constraint 'SecurityConstraint[HTML Manager interface (for humans)]' against PUT /text/deploy --> false
FINE [http-nio-8080-exec-7] org.Apache.catalina.realm.RealmBase.findSecurityConstraints   Checking constraint 'SecurityConstraint[JMX Proxy interface]' against PUT /text/deploy --> false
FINE [http-nio-8080-exec-7] org.Apache.catalina.authenticator.AuthenticatorBase.invoke  Calling hasUserDataPermission()
FINE [http-nio-8080-exec-7] org.Apache.catalina.realm.RealmBase.hasUserDataPermission   User data constraint has no restrictions
FINE [http-nio-8080-exec-7] org.Apache.catalina.authenticator.AuthenticatorBase.invoke  Calling authenticate()
FINE [http-nio-8080-exec-7] org.Apache.catalina.realm.CombinedRealm.authenticate Attempting to authenticate user [admin] with realm [org.Apache.catalina.realm.UserDatabaseRealm]
FINER [http-nio-8080-exec-7] org.Apache.catalina.realm.RealmBase.authenticate Username [admin] NOT successfully authenticated
FINE [http-nio-8080-exec-7] org.Apache.catalina.realm.CombinedRealm.authenticate Failed to authenticate user [admin] with realm [org.Apache.catalina.realm.UserDatabaseRealm]
WARNING [http-nio-8080-exec-7] org.Apache.catalina.realm.LockOutRealm.filterLockedAccounts 
     An attempt was made to authenticate the locked user [admin]
FINE [http-nio-8080-exec-7] org.Apache.catalina.authenticator.AuthenticatorBase.invoke  Failed authenticate() test
FINE [http-nio-8080-exec-7] org.Apache.catalina.core.StandardHostValve.custom Processing ErrorPage[errorCode=401, location=/WEB-INF/jsp/401.jsp]
FINER [http-nio-8080-exec-7] org.Apache.catalina.core.StandardWrapper.allocate   Returning non-STM instance
FINE [http-nio-8080-exec-7] org.Apache.catalina.core.ApplicationDispatcher.doForward  Disabling the response for further output

(このログでは、アップロードを試みたユーザーのユーザー名はadminです)

この出力でわかるように、ユーザーadminはロックされています。

WARNING [http-nio-8080-exec-7] org.Apache.catalina.realm.LockOutRealm.filterLockedAccounts 
  An attempt was made to authenticate the locked user [admin]

ドキュメントserver.xmlそして、あなたは見つけるでしょう

   <Realm className="org.Apache.catalina.realm.UserDatabaseRealm"
           resourceName="UserDatabase"/>

予見できないユーザー名を使用する

行を削除するのは悪い考えです。再展開のユーザー名を、deploy355547511ロックされません。

2
Peter Rader

私は同じ問題を抱えており、私の場合、問題は/で始まらない構成されたコンテキストパスでした。コンテキストパス「myapp」を「/ myapp」に修正すると、問題が解決しました。

2
Frank

Maven Tomcatプラグインを使用した(再)デプロイも、クライアントでの接続リセットとTomcat 8.5.30でのlocalhost_access.logの403ステータスコードにより失敗しました。

このTomcatバージョンのマネージャーアプリには、デフォルトでRemoteAddrValveが構成されており、/ manager/*パスへのアクセスをローカルホストに制限しています。 $Tomcat_HOME/webapps/manager/META-INF/context.xmlを参照してください。

ロギングをオンにする を見つけて これに対する解決策 を見つけました。

0
KahPhi

私のAWS Amazonインスタンスでの理由は次のとおりです。

ディスク容量は[〜#〜] full [〜#〜]注99% EC2スポットインスタンス

通常、このコマンドを使用してジェンキンを使用しています

 mvn clean Tomcat7:redeploy -Ddeploy.password=xxxAG1
 -Ddeploy.username=admin -Ddeploy.context=/v1 -Ddeploy.url=http://localhost:8080/manager/text

enter image description here

ちょうどそのスペースと私と一緒に働いた。

私が持っていたエラーは

[INFO] I/O exception (Java.net.SocketException) caught when processing request: Connection reset
[INFO] Retrying request


[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 53.914 s
[INFO] Finished at: 2018-01-10T08:38:28+00:00
[INFO] Final Memory: 47M/371M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.Apache.Tomcat.maven:Tomcat7-maven-plugin:2.2:redeploy (default-cli) on project XXXX-app: Cannot invoke Tomcat manager: Connection reset -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.

ヒントこのコマンドを使用して、( command is stackoverflow )Sudo du -x -d1 -h /

0
shareef

これが役立つかどうかはわかりませんが、私の場合。 Tomcat7プラグインは、部屋.m2\settings.xmlではなくmaven conf settings.xmlからサーバーの詳細を選択していました。そのファイルにサーバー情報を追加すると、問題が解決しました。

0
Paritosh Moghe