参考にさせていただいたサイト
Jetty/Tutorial/Embedding Jetty - Eclipsepedia
http://wiki.eclipse.org/Jetty/Tutorial/Embedding_Jetty
main()からJettyを起動 - ねこだいすき
http://d.hatena.ne.jp/tubureteru/20100829/p1
pom.xmlには、
<dependency> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-server</artifactId> <version>7.2.1.v20101111</version> </dependency>
ではなく、
<dependency> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-webapp</artifactId> <version>7.2.1.v20101111</version> </dependency>
が必要だ(依存性解決でjetty-serverもセットアップされる)。
サーバーを起動するコード。
public class SampleServer { public static void main(String[] args) { Server server = new Server(8080); WebAppContext context = new WebAppContext(); context.setContextPath("/"); context.setWar("src/main/webapp"); context.setParentLoaderPriority(true); server.setHandler(context); try { server.start(); server.join(); } catch (Exception e) { e.printStackTrace(); } } }
ちなみにparentLoaderPriorityは、
The parentLoaderPriority parameter is a boolean that selects of the standard java parent first delegation Classloading will be used or the servlet specification webapp Classloading priority.
のため。