jfinal undertow web.xml


由於 undertow 是為嵌入式 server 而生,所以 jfinal undertow 項目是不需要 web.xml 這個文件的

線上這版 Filter、Servelt、Listener、WebSocket 最新的配置方式如下:
UndertowServer.create(AppConfig.class)
.configWeb( builder -> {
// 配置 Filter
builder.addFilter("myFilter", "com.abc.MyFilter");
builder.addFilterUrlMapping("myFilter", "/*");
builder.addFilterInitParam("myFilter", "key", "value");

// 配置 Servlet
builder.addServlet("myServlet", "com.abc.MyServlet");
builder.addServletMapping("myServlet", "*.do");
builder.addServletInitParam("myServlet", "key", "value");

// 配置 Listener
builder.addListener("com.abc.MyListener");

// 配置 WebSocket,MyWebSocket 需使用 ServerEndpoint 注解
builder.addWebSocketEndpoint("com.abc.MyWebSocket");
})
.start();

這個配置方法在源碼的 UndertowServer.configWeb(...) 上有。注意,上面的配置版本還未發布到中心庫,現在的老版本是通過 
UndertowServer.addFilterInfo(...) 來添加的 Filter

建議通過下面的方法直接用上新版本:
git clone git@gitee.com:jfinal/jfinal-undertow.git
cd jfinal-undertow
mvn clean install
注意要先將 pom.xml 中的 skip 標簽改成 true 才能安裝

最后改一下版本號為 : 1.2-SNAPSHOT 即可用上最新版本

 

public static void main(String[] args) {
        PropKit.use("application.properties");
        UndertowServer.create(Start.class, "undertow.properties").configWeb(builder -> {
            builder.addFilter("filterchainproxy", "dsidealsso.FilterChainProxy");
            builder.addFilterInitParam("filterchainproxy", "casServerLoginUrl", PropKit.get("casServerLoginUrl"));
            builder.addFilterInitParam("filterchainproxy", "serverName", PropKit.get("serverName"));
            builder.addFilterInitParam("filterchainproxy", "casServerUrlPrefix", PropKit.get("casServerUrlPrefix"));
            builder.addFilterInitParam("filterchainproxy", "encoding", "utf-8");
            builder.addFilterInitParam("filterchainproxy", "dofilter", "/**");
            builder.addFilterUrlMapping("filterchainproxy", "/*");
        }).start();
    }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM