blob: 98cf16e82817444b37839735c5dc04b3da2f9133 [file] [log] [blame]
/*
*/
package org.apache.coyote.lite;
import javax.servlet.ServletException;
import org.apache.catalina.LifecycleException;
import org.apache.catalina.connector.Connector;
import org.apache.tomcat.lite.TestMain;
/**
* Startup tomcat + coyote lite connector.
* No config files used.
*
* @author Costin Manolache
*/
public class TomcatStandaloneMain {
public static Tomcat setUp(int port) {
try {
Tomcat tomcat = new Tomcat();
tomcat.setPort(port);
String base = TestMain.findDir("/output/build");
tomcat.setBaseDir(base);
// Absolute path - tomcat6 and 7 are different,
// 7 adds webapps.
tomcat.addWebapp("/", base + "/webapps/ROOT");
LiteProtocolHandler litePH = setUp(tomcat, port);
tomcat.start();
return tomcat;
} catch (LifecycleException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ServletException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
public static LiteProtocolHandler setUp(Tomcat tomcat, int port) {
Connector connector;
try {
connector = new Connector(LiteProtocolHandler.class.getName());
tomcat.getService().addConnector(connector);
connector.setPort(port);
tomcat.setConnector(connector);
LiteProtocolHandler ph =
(LiteProtocolHandler) connector.getProtocolHandler();
return ph;
} catch (Exception e) {
throw new RuntimeException(e);
}
}
}