关键代码:
class StartRunnable implements Runnable {
@Override
public void run() {
try {
File JETTY_DIR = new File(Environment.getExternalStorageDirectory(), "jetty");
// Set jetty.home
System.setProperty("jetty.home", JETTY_DIR.getAbsolutePath());
// ipv6 workaround for froyo
System.setProperty("java.net.preferIPv6Addresses", "false");
server = new Server(8090);
// server.setHandler(new DefaultHandler());
ServletContextHandler contextHandler = new ServletContextHandler(ServletContextHandler.SESSIONS);
contextHandler.setContextPath("/");
server.setHandler(contextHandler);
ServlertConfig.config(contextHandler);
server.start();
server.join();
Toast.makeText(WebService.this, "服务器启动", Toast.LENGTH_SHORT).show();
} catch (Exception e) {
server = null;
e.printStackTrace();
Toast.makeText(WebService.this, "服务器启动失败", Toast.LENGTH_SHORT).show();
}
}
}
class StopRunnable implements Runnable {
@Override
public void run() {
try {
server.stop();
server = null;
Toast.makeText(WebService.this, "服务器关闭", Toast.LENGTH_SHORT).show();
} catch (Exception e) {
e.printStackTrace();
Toast.makeText(WebService.this, "服务器关闭失败", Toast.LENGTH_SHORT).show();
}
}
}