【问题标题】:Deploy large war file in tom cat web application manager在 tom cat Web 应用程序管理器中部署大型战争文件
【发布时间】:2023-03-31 07:04:01
【问题描述】:

我一直在尝试通过 tomcat Web 应用程序管理器部署我的 war 文件,但总是以 uploadFileSizeExceeded 异常结束(请参见下图)。有什么办法可以部署大型战争文件吗?我已尝试更改最大文件大小,建议 here 但仍然面临同样的问题。

有什么建议吗?

提前致谢 :)

【问题讨论】:

  • 链接中的修复应该可以了,更改后您是否重新启动了tomcat?也许重新加载managerapp 就足够了。

标签: java eclipse tomcat deployment war


【解决方案1】:

我认为简单的方法是使用 winscp 或类似的 fttp 客户端来传输 war 文件并重新启动服务器。

【讨论】:

  • 我还是个新手。我可以获得更详细的说明吗?很抱歉给您带来麻烦,并提前致谢。
  • youtube.com/watch?v=ZzXPAAcGXY8 请观看演示连接服务器的视频。还要确保在部署 'war' 之前使用 'sudo ./shutdown.sh' 命令关闭 tomcat 服务器。
【解决方案2】:

如果您要部署到 Tomcat 服务器版本 7 及更高版本,则可能需要设置或更改名为 maxSwallowSize 的配置属性。

此属性指定当 Tomcat 知道服务器将忽略该文件时,它将“吞下”客户端上传的最大字节数。

该属性的默认值为 2097152 (2 MB)。如果保持不变或设置低于我们在 MultipartResolver 中设置的 5 MB 限制,Tomcat 将拒绝任何上传超过 2 MB 文件的尝试,并且永远不会调用我们的自定义异常处理。

为了使请求成功并显示来自应用程序的错误消息,您需要将 maxSwallowSize 属性设置为负值。这指示 Tomcat 吞下所有失败的上传,无论文件大小如何。

在 TOMCAT_HOME/conf/server.xml 文件中尝试一下:

<Connector port="8080" protocol="HTTP/1.1"
  connectionTimeout="20000"
  redirectPort="8443"
  maxSwallowSize = "-1"/>

更多详情请参考http://www.baeldung.com/spring-maxuploadsizeexceeded

【讨论】:

  • 我试过了,但仍然没有解决我的问题。 :(
  • 然后从winscp.net/eng/download.php下载winscp并安装,然后您可以连接到您的服务器并使用拖放传输文件。
  • 非常感谢您的建议。但是,它仍然不能解决我的问题。我在尝试使用 winscp 传输我的 war 文件时收到了权限被拒绝的错误消息。 :(
  • 如果服务器是 linux 那么选项 1 是使用 root 用户帐户或选项 2 是通过运行 sudo chmod 777 -R /directory 授予所有权限然后它会工作。
猜你喜欢
  • 2010-09-24
  • 1970-01-01
  • 2011-05-10
  • 1970-01-01
  • 1970-01-01
  • 2019-02-15
  • 1970-01-01
  • 2015-12-16
  • 1970-01-01
相关资源
最近更新 更多