public override void start() { Properties serverProperties = readProperties(); int port = int.Parse(serverProperties.getProperty(PORT_PROPERTY)); tomcat = new Tomcat(); tomcat.Port = port; tomcat.BaseDir = WorkingDir; tomcat.Host.AppBase = WorkingDir; tomcat.Host.AutoDeploy = true; tomcat.Host.DeployOnStartup = true; string contextPath = "/" + ContextPath; PomEquippedResolveStage resolver = Maven.configureResolver().useLegacyLocalRepo(true).workOffline().loadPomFromFile("pom.xml"); WebArchive wa = ShrinkWrap.create(typeof(WebArchive), "rest-test.war").setWebXML(webXmlPath).addAsLibraries(resolver.resolve("org.codehaus.jackson:jackson-jaxrs:1.6.5").withTransitivity().asFile()).addAsLibraries(resolver.addDependencies(MavenDependencies.createDependency("org.mockito:mockito-core", ScopeType.TEST, false, MavenDependencies.createExclusion("org.hamcrest:hamcrest-core"))).resolve().withTransitivity().asFile()).addAsServiceProvider(typeof(ProcessEngineProvider), typeof(MockedProcessEngineProvider)).add(new ClassLoaderAsset("runtime/tomcat/context.xml"), "META-INF/context.xml").addPackages(true, "org.camunda.bpm.engine.rest"); addRuntimeSpecificLibraries(wa, resolver); wa.WebXML = webXmlPath; string webAppPath = WorkingDir + "/" + ContextPath + ".war"; wa.@as(typeof(ZipExporter)).exportTo(new File(webAppPath), true); tomcat.addWebapp(tomcat.Host, contextPath, webAppPath); try { tomcat.start(); } catch (LifecycleException e) { throw new Exception(e); } }
protected internal abstract void addRuntimeSpecificLibraries(WebArchive wa, PomEquippedResolveStage resolver);