我试图将war文件部署到Tomcat。我希望能够通过列出我的war文件的网页执行此操作,然后将我单击的文件转换为Tomcat服务器并进行部署。
根据发现的文档here我应该能够做到这一点......
http://localhost:8080/manager/deploy?path=/footoo&war=file:/path/to/foo
其中path = / footoo是我要部署到我的服务器上的路径,但可以将文件作为URL? 我似乎无法让它发挥作用。
旁注:我可以通过使用tomcat manager websevice手动执行此操作,但我的项目的这一点是您可以从任何地方访问我的网站并部署而无需直接访问服务器。
修改 我不认为我已经很好地提出了这个问题所以我投票将其删除
答案 0 :(得分:2)
如果您阅读文档,请说:
上传指定为的Web应用程序归档(WAR)文件 请求此HTTP PUT请求中的数据,将其安装到appBase中 我们对应的虚拟主机的目录,并启动,使用 目录名称或war文件名称,不带.war扩展名 路径。
所以,你需要的是一个PUT请求。
curl
可以为您做到这一点:
curl --user script:script --upload-file /tmp/test.war http://localhost:8080/manager/deploy?path=/tester
这会以用户script
的身份登录,密码为script
,并上传/tmp/test.war
文件。当它到达Tomcat时,它会将其放在tester.war
文件中,并将其部署为/tester
。
如果您想通过实际的网络界面执行此操作,经理应用程序也会这样做。您可以从浏览器中选择要部署的战争。
Tomcat不会做的是在给定URL的情况下为您提取文件。您需要将文件推送到服务器。
答案 1 :(得分:0)
我认为这个功能不存在。但是,您可以构建一个将war上载到tomcat主机并调用管理器部署URL
的系统