2013-01-16 16 views
2

我中途開發在Eclipse中我的第一個動態的Web項目運行外食的web項目。我正在使用tomcat v7。我開發了一個login.jsp頁面。成功後,它會重定向到另一個home.jsp。使用Tomcat

它在Eclipse中運行良好。我通過將index.jsp更改爲login.jsp來編輯web.xml文件。這兩個jsp文件都在WebContent文件夾中。另外,我在jsp文件中包含了一個servlet.java文件。 servlet文件駐留在projectName/resources/src/pkg文件夾中。

但是,當我粘貼的項目文件夾作爲一個整體到Apache/webapps中的文件夾,並試圖從運行瀏覽器的項目中使用本地主機(起tomcat後):8080 /項目名/它返回錯誤404

當我試圖使用本地主機:8080 /項目名/的WebContent/login.jsp的,則JSP文件裝載。但是在輸入正確的用戶名和密碼時,它沒有重定向到home.jsp。

任何人都可以請幫助我..在此先感謝。

+1

您需要將項目導出爲戰爭。文件 - >導出 - >戰爭 – Patton

+0

@Patton這是**不是必須的**使用WAR歸檔。它可以是一個通常的項目文件夾,只是項目目錄結構**必須是正確的。 – informatik01

回答

3

不要粘貼整個項目,你必須export it作爲WAR file,然後將其複製到Tomcat的webapp文件夾中。

+0

我是這麼做的。在webapps中粘貼ProjectName.war。當它使用本地主機時,它沒有工作:8080/ProjectName – user1538162

+0

這很難說出什麼可能是錯誤的,你的項目中是否有'index.jsp'文件?它在'web.xml'中被配置爲'welcome-file'嗎?你有沒有試過訪問'http:// localhost:8080/ProjectName/login.jsp'? ...你在其他評論中關注MySQL連接,你如何連接到MySQL?它啓動並運行?憑證是否正確? ...對不起,但「不起作用」太寬... –

+0

好的。我爲不解釋事情而道歉。我已將welcome文件index.jsp替換爲login.jsp。我解決了這個問題。這是因爲webapps文件夾中已經有一個名爲ProjectName的文件夾。刪除後,login.jsp加載。但我碰到了新的東西。在輸入證書時,它會拋出錯誤500.我認爲它與servlet相關的smtthing。正如我所提到的,我的servlet.java位於resources/src/pkg文件夾中。在xml文件中,它也被寫爲pkg/servlet。什麼可能是錯的? – user1538162

2

將應用程序打包爲WAR文件,並將其放入Tomcat的webapps目錄中。

Tomcat將在啓動時自動部署應用程序。

您不能簡單地將Eclipse項目目錄放入Tomcat中,因爲Eclipse項目通常不會遵循Java EE webapp目錄結構。 Eclipse在「幕後」開發過程中創建/移動工件到合適的位置,以便一切正常。

+0

thanx。這對我來說很有意義。但通過這樣做,它應該影響數據庫連接,因爲我在項目中使用了mysql數據庫。 – user1538162

+1

@ user1538162 MySQL是一個獨立的數據庫,與Eclipse項目完全無關。這不應該與它有任何關係。 –

+0

非常感謝。 – user1538162

0

正是在面試經驗的候選人最重要的問題。

我們可以通過使用以下文件示例在tomcat中自動部署java源代碼。

位置: E:\ Tomcat6.0 \ conf \ Catalina \ localhost \ DMS.xml。

從這個文件中我們需要在DMS.xml文件中完成我們的配置。

這裏DMS是我的項目名稱。

語境antiJARLocking = 「真」 的docBase = 「E:\ DMS \建立\ WEB」 路徑= 「/ DMS」