SpringBoot項目部署在weblogic中間件的註意事項說明
SpringBoot項目部署在weblogic中間件的註意事項
1、SpringBoot項目Tomcat部署無需手動配置web.xml
但是使用weblogic部署項目時需配置所有相關的監聽器和過濾器等。
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <context-param> <param-name>contextConfigLocation</param-name> <param-value>com.cebbank.CebbankLoansMeetingApplication</param-value> </context-param> <listener> <listener-class>org.springframework.boot.legacy.context.web.SpringBootContextLoaderListener</listener-class> </listener> <listener> <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class> </listener> <filter> <filter-name>characterEncoding</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> </filter> <filter-mapping> <filter-name>characterEncoding</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <!-- <filter> <filter-name>metricFilter</filter-name> <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class> </filter> <filter-mapping> <filter-name>metricFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> --> <servlet> <servlet-name>appServlet</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextAttribute</param-name> <param-value>org.springframework.web.context.WebApplicationContext.ROOT</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>appServlet</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> </web-app>
2、隻配置web.xml配置文件
部署在weblogic上會失敗,需另外配置一個weblogic.xml文件(跟web.xml在同一目錄)
<?xml version="1.0" encoding="UTF-8"?> <wls:weblogic-web-app xmlns:wls="http://xmlns.oracle.com/weblogic/weblogic-web-app" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd http://xmlns.oracle.com/weblogic/weblogic-web-app http://xmlns.oracle.com/weblogic/weblogic-web-app/1.4/weblogic-web-app.xsd"> <wls:container-descriptor> <wls:prefer-application-packages> <wls:package-name>org.slf4j</wls:package-name> </wls:prefer-application-packages> </wls:container-descriptor> <wls:context-root>/</wls:context-root> <wls:virtual-directory-mapping> <wls:local-path>d:/</wls:local-path> <wls:url-pattern>/recordings/*</wls:url-pattern> </wls:virtual-directory-mapping> </wls:weblogic-web-app>
註意:<wls:virtual-directory-mapping>為虛擬目錄相關配置,可用來保存上傳的資源,可作為靜態資源直接訪問
weblogic部署springboot項目中的問題
設置步驟
一、修改setDomainEnv.cmd文件
地址為 XX\user_projects\domains\域名\bin
修改內容:
添加代碼段如下(位置建議在圖中所示位置):
set debugFlag=true
二、啟動weblogic
在命令行上看到Listening for transport dt_socket at address:8453,說明weblogic的debug模式已經啟動。
三、eclipse設置
打開Debug Configuration,選擇“Remote Java Application”,右鍵—>new創建一個Debug應用 。
- Name:隨便起,方便記憶
- Project:調試的目標工程
- Connection Type:==選中“Standard (Socket Attach)” ==
- Host:weblogic:地址
- port:weblogic:調試端口,默認8453
四、點擊Debug按鈕進入調試視圖,可以開始調試程序瞭
以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。
推薦閱讀:
- 解決weblogic部署springboot項目步驟及可能會出現的問題
- SpringMVC記錄我遇到的坑_AOP註解無效,切面不執行的解決
- Web三大組件之Filter,Listener和Servlet詳解
- Spring MVC文件配置以及參數傳遞示例詳解
- 詳解JavaWeb中的過濾器Filter