如何使用Java启动和停止Tomcat容器?

我有一个Maven项目,它启动了tomcat容器进行集成前测试(jUnit测试)。我的大多数测试都要求重新启动正在测试的Web应用程序。因此,我想在执行每个jUnit测试之前重新启动Tomcat容器。

到目前为止,我使用cargo-maven2-plugin配置了tomcat容器。

因此,是否可以使用Java语句启动和停止容器?

回答:

因此,是否可以使用Java语句启动和停止容器?

您的用例看起来很奇怪(必须在两次测试之间重新启动容器),但我们不要讨论这个。要回答您的问题,可以,可以使用Cargo的Java

API完成。

要启动Tomcat容器并部署您的战争,您可以在setUp()方法中执行以下操作:

// (1) Optional step to install the container from a URL pointing to its distribution

Installer installer = new ZipURLInstaller(new URL("http://www.apache.org/dist/tomcat/tomcat-6/v6.0.20/bin/apache-tomcat-6.0.20.zip"));

installer.install();

// (2) Create the Cargo Container instance wrapping our physical container

LocalConfiguration configuration = (LocalConfiguration) new DefaultConfigurationFactory()

.createConfiguration("tomcat6x"), ContainerType.INSTALLED, ConfigurationType.STANDALONE);

container = (InstalledLocalContainer) new DefaultContainerFactory()

.createContainer("tomcat6x", ContainerType.INSTALLED, configuration);

container.setHome(installer.getHome());

// (3) Statically deploy some WAR (optional)

WAR deployable = new WAR("./webapp-testing-webapp/target/webapp-testing-webapp-1.0.war");

deployable.setContext("ROOT");

configuration.addDeployable(deployable);

// (4) Start the container

container.start();

并停止该tearDown()方法。

// (6) Stop the container

container.stop();

以上是 如何使用Java启动和停止Tomcat容器? 的全部内容, 来源链接: utcz.com/qa/398880.html

回到顶部