以编程方式 start/stop tomcat 来自 c# 代码的 webapps

Programmatically start/stop tomcat webapps from c# code

我最近在搜索如何在 Tomcat 下远程 start/stop webapp 运行 - 要求是因为我正在编写需要控制 WSDL 类型可用性的测试代码远程 Tomcat 服务器上的服务 运行。但是请求总是 returns 403 错误。

string credentialsStr = "tomcatusr" + ":" + "tomcatpwd";
WebRequest request = WebRequest.Create("http://" + hostNameStr + "/manager/start?path=/" + Uri.EscapeDataString(appNameStr));
request.Method = "GET";
request.PreAuthenticate = true;
request.Headers["Authorization"] = "Basic " + Convert.ToBase64String(Encoding.ASCII.GetBytes(credentialsStr));
WebResponse response = request.GetResponse();

只要 tomcat 用户凭据分配了管理脚本角色(即在远程主机上的 conf/tomcat-users.xml 中),我上面的代码片段似乎就可以工作。