1. 程式人生 > >使用eclipse+Maven部署Servlet3.0Web時的一個問題

使用eclipse+Maven部署Servlet3.0Web時的一個問題

今天,嘗試了一下Spring MVC 3.2的一個對Servlet3.0免web.xml部署。
開發環境用的是Maven+eclipse。

正常流程是,
1. 寫好自己的繼承於AbstractAnnotationConfigDispatcherServletInitializer的Initializer,在裡邊配置RootConfigClasses(作為WebApplicationContext)和ServlectConfigClass(作為ServletApplicationContext)。
2. 編寫WebApplicationContext設定檢視解析器。
3. 部署
正常情況下,7.0以上的Tomcat是支援Servlet3.0的,也就是會自動去掃描ServletContainerInitializer的實現,Spring中是org.springframework.web.SpringServletContainerInitializer。這個類會根據我們在步驟1中所定義的兩個Spring容器的定義來載入Spring容器,並完成初始化DispatcherServlet等工作。但最終我卻發現tomcat並沒有這麼做。

找了半天原因,最後發現,我的deploy有問題,並沒有把Maven管理的jar包部署到WEB-INF/lib這個目錄下,所以tomcat當然掃描不到SpringServletContainerInitializer這個類。從而也就不會載入DispatcherServlet和我們的Controller等。

解決辦法:
右鍵專案->Properties->Deployment Assembly中,Add->Java Build Path Entries,選擇 Maven Dependencies,設定它的Deploy Path為WEB-INF/lib(一般預設就會是WEB-INF/lib)。再重新部署,OK。

相關推薦

使用eclipse+Maven部署Servlet3.0Web一個問題

今天,嘗試了一下Spring MVC 3.2的一個對Servlet3.0免web.xml部署。 開發環境用的是Maven+eclipse。 正常流程是, 1. 寫好自己的繼承於AbstractAnnotationConfigDispatcherServle

maven部署專案執行,丟擲空指標異常處理

個人在程式碼中犯的一個錯誤,有一個servlet的路徑有誤導致映射出問題. 異常資訊 java.lang.NullPointerException     at java.lang.Class.searchMethods(Class.java:3003) &nb

eclipse+maven部署javaweb專案到遠端tomcat8伺服器

在使用eclipse做javaee開發的時候,我們通常是在eclipse中建立一個tomcat,然後將專案部署到tomcat下,如果部署到遠端,我們需要手動將war包部署到遠端伺服器的tomcat/webapps目錄下,tomcat7-maven-plugin外掛讓我們可以對

Eclipse+Maven構建web專案及部署Maven lib依賴問題的解決

目錄 Eclipse中m2e外掛構建web專案的步驟 Maven工具構建web專案再匯入Eclipse的步驟 [一]、Eclipse中m2e外掛構建web專案的步驟 第一步:建立專案,按照 New –>  FIle –> Other –> Maven –> MavenProje

eclipse maven項目中使用tomcat插件部署項目

.net eclips blog lean 插件 聽說 min apache 參考 maven的tomcat插件部署web項目,我簡單認為分兩種,一種是部署到內置tomcat,另一種是部署到安裝的tomcat。 第一種部署,默認是部署在內置tomcat的8080端口,如果不

使用eclipsemaven項目打包,報 invalid LOC header (bad signature)異常處理

http switch ati exception ogg 異常處理 name .org and 在eclipse上打包,報錯: [INFO] Including org.codehaus.groovy:groovy-all:jar:2.4.3 in the shade

eclipse部署到tomcat不能自動部署maven管理的額jar包

http maven tomcat jar 圖片 分享圖片 自動部署 .com inf eclipse上部署到tomcat不能自動部署maven管理的額jar包

Eclipse部署專案,Tomcat啟動報錯 “Failed to start component [StandardServer[8005]]”的解決方法

【錯誤現象】SEVERE: The required Server component failed to start so Tomcat is unable to start. org.apache.catalina.LifecycleException: F

只需兩步!Eclipse+Maven快速構建第一個Spring Boot專案

隨著使用Spring進行開發的個人和企業越來越多,Spring從一個單一簡介的框架變成了一個大而全的開源軟體,最直觀的變化就是Spring需要引入的配置也越來越多。配置繁瑣,容易出錯,讓人無比頭疼,簡化Spring配置簡直可以說是民心所向。 Spring Boot是由Pivotal團隊提供的

如何在Eclipse部署Maven(一)

一、準備好我們上次下載的Mvaen檔案 二、建立一個本地倉庫 (建立一個資料夾)    三、現在就要讓你的中央倉庫 和 本地倉庫產生聯絡      然後右擊選擇寫字本開啟  找到 localRepository  那個路徑就是之前建立的本地倉庫的路

eclipse使用maven新建類目錄,提示The folder is already a source folder

我們有時候新建一個webapp的maven專案時,生成的目錄結構是這樣子的: 缺少maven規範必須的src/main/java 和 src/test/java 但是當我們新建這兩個目錄時,卻報The folder is already a source fold

eclipse新建maven的web專案,pom.xml的war報錯解決方法/pom.xml將jar直接修改為war報錯解決方法

步驟一 在pom.xml中的(若有)裡面新增外掛,沒有就直接複製一下程式碼。 <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</group

maven web專案部署在伺服器出現無法載入css和js的問題

最近做一個往老專案中新增新功能的活,該專案是一個運用ssm框架做的maven專案,將老專案匯入自己的編輯器後添加了新的程式碼,部署在tomcat中,啟動伺服器,開啟瀏覽器發現頁面混亂,點選F12發現是沒有正常載入css和js檔案。經過長時間的檢查發現在root.css檔案頭部

Eclipse部署專案,Tomcat啟動報錯 “Failed to start component“

    你修改了tomcat的server.xml檔案,如下 <Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true"> <

eclipse+maven遠端(自動)部署web專案到tomcat

eclipse整合maven後可以用maven命令把web專案自動部署到tomcat,具體步驟如下 一、修改tomcat-users.xml配置檔案開啟tomcat管理使用者,配置檔案位置在tomcat目錄/conf下。修改如下圖 二、配置maven的settings.x

Eclipse maven工程打war包進行部署

前言 通過war的形式將專案部署到伺服器上是一種既簡單又實用的方法。可以快速的進行專案部署 在Eclipse中將Maven工程打包 1.1進行打包配置 1.2建立新的Maven Build 1.3選擇打包專案和輸入打包指令pac

spring boot 專案maven打war包,部署Tomcat啟動spring boot未載入,專案訪問404

寫了個restful風格的spring boot專案,maven打成war包後部署Tomcat後,啟動頁面沒有看到spring boot載入的資訊,即控制檯沒有打印出那個大大的spring boot 字串,這是spring boot沒有被容器載入,修改方法如下:@Spring

Maven多模組專案 eclipse部署 Maven專案實現 tomcat熱部署

Maven多模組專案 eclipse熱部署 Maven專案實現 tomcat熱部署 二  最近看到有好多童鞋比較熱衷熱部署,特別是多模組的專案,其實這熱部署如果多模組比較大資源,容易記憶體溢位或者電腦卡住,並不建議這麼做。   不過了解下也沒有關係,這裡我就在說說熱部署的另

eclipse部署j2ee應用同時部署依賴jar包

一、問題描述 先說一下j2ee開發環境:eclipse + tomcat + maven。 開發完j2ee應用時,部署到tomcat後,啟動時報錯java.lang.ClassNotFoundException:(這裡以缺少ch.qos.logback.ex

maveneclipse中建立web專案不能建立三個資料夾的解決方法

我報的這錯,是因為我先用了一個版本的eclipse,並且也在其中把maven配置了,但使用maven建立web過程中,沒有maven專案轉換成web專案,所以換了eclipse的另一個版本,我在用新版本時,也重用了之前的eclipse的workspace,下面的錯便順理成章