jetty服务器上运行html页面,web项目嵌入Jetty运行的两种方式(Jetty插件和自制Jetty服务器)...
自制Jetty服務類
這種方式可以支持websocket,如果項目中需要使用到可以試試這種。
首先pom.xml引入jetty的依賴:
org.eclipse.jetty.aggregate
jetty-all
9.2.14.v20151106
javax.servlet
javax.servlet-api
3.1.0
org.eclipse.jetty
jetty-jsp
9.2.15.v20160210
接下來自己寫一個JettyServer類:我自己的完整代碼如下
import javax.websocket.server.ServerContainer;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.webapp.WebAppContext;
import org.eclipse.jetty.websocket.jsr356.server.deploy.WebSocketServerContainerInitializer;
import org.json.JSONObject;
import com.web.test.MyWebSocket;
public class JettyServer {
public static void main(String[] args) {
int port = 8080;
Server server = new Server(port);
WebAppContext webAppContext = new WebAppContext("webapp","/web");
webAppContext.setDescriptor("webapp/WEB-INF/web.xml");
webAppContext.setResourceBase("src/main/webapp");
webAppContext.setDisplayName("web");
webAppContext.setClassLoader(Thread.currentThread().getContextClassLoader());
webAppContext.setConfigurationDiscovered(true);
webAppContext.setParentLoaderPriority(true);
server.setHandler(webAppContext);
System.out.println(webAppContext.getContextPath());
System.out.println(webAppContext.getDescriptor());
System.out.println(webAppContext.getResourceBase());
System.out.println(webAppContext.getBaseResource());
try {
ServerContainer wscontainer = WebSocketServerContainerInitializer.configureContext(webAppContext);
// Add WebSocket endpoint to javax.websocket layer
wscontainer.addEndpoint(MyWebSocket.class); //這行是如果需要使用websocket就加上,不需要就注釋掉這行,mywebsocket是自己寫的websocket服務類
server.start();
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("server is start, port is "+port+"............");
}
}
運行項目就只要運行這個main函數即可。
假如正式發布需要放到tomcat里運行,需要把下面這個依賴去掉,tomcat和下面的依賴不兼容,會報錯(javax.servlet.ServletException: Not running on Jetty, JSR-356 support unavailable)
這種方式運行項目可以在開發的時候用用
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的jetty服务器上运行html页面,web项目嵌入Jetty运行的两种方式(Jetty插件和自制Jetty服务器)...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: idea修改html不能立刻生效,解决i
- 下一篇: html文件本质上是一个,html文件是