2012-06-07 58 views
0

我正在使用Struts2.0。當我寫一個程序時,在struts.xml文件中獲得警告「該文件無法驗證,因爲存在連接問題」: - 「!DOCTYPE struts PUBLIC」 - // Apache Software Foundation // DTD Struts配置2.0 // EN「」http://struts.apache.org/dtds/struts-2.0.dtd「」在使用struts.xml文件時發出警告。

當我執行應用程序的第一頁加載但提交後,下一頁不加載並顯示如下錯誤:「請求的資源(/ TestProject/login)不可用」。

我使用struts2.0的,Tomcat6.0,幷包括jar文件:

  1. 共享記錄-1.1
  2. 的freemarker-2.3.8
  3. OGNL-2.6.11
  4. Struts2的核心 - 2.0.6
  5. XWork的-2.0.1

plz幫助我,爲什麼這個錯誤是未來EIT她由於警告或其他原因。

+0

檢查最新版本是否有任何不必要的字符或空格之前!Doctype – gnanz

+0

請嘗試以下行:'<?xml version =「1.0」encoding =「UTF-8」?> <!DOCTYPE struts PUBLIC 「 - // Apache Software Foundation // DTD Struts Configuration 2.0 // EN 「 」http://struts.apache.org/dtds/struts-2.0.dtd「>'參見在<?xml – gnanz

+0

之前沒有空格將devMode打開,打開日誌到DEBUG,並檢查您的控制檯。您需要提供有關您要提交的操作的操作配置,訪問第一頁(通過操作或直接訪問JSP)的更多信息,等等。這也是S2的非常早期版本,真的不應該使用。我不記得那麼久了,但你可能還需要Commons IO和Commons fileupload - 你應該真的使用Maven來管理你的依賴關係。 –

回答

2

第一個錯誤可能是因爲您的項目無法找到tld的。

- 檢查你的sturts-core.jar添加包含的struts-2.0.dtd - 你的struts.xml開始這樣

<?xml version="1.0" encoding="UTF-8" ?> 
<!DOCTYPE struts PUBLIC 
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" 
    "http://struts.apache.org/dtds/struts-2.0.dtd"> 

第二個錯誤是因爲當你將應用程序部署和struts.xml中不部署,看起來你使用的是eclipse,而你的struts.xml在資源文件夾中。

確保您的資源文件夾中的src目錄添加,

Project - > Build Path - > Configure Build Path - > Source (If resources is not present here click on Add Folder and select Resources. 

如果你是剛剛與Struts的開始,請升級到這是Struts2.3

+0

頂級域名?!我不認爲我們知道爲什麼頁面不可用;沒有足夠的信息繼續下去。 –

+0

@DaveNewton,我從Struts2開始就遇到了類似的問題,在eclipse中添加了一個資源文件夾,但沒有將它標記在源文件夾中,因爲在web.xml中定義了索引頁沒有任何問題,但是之後的任何操作都導致了同樣的錯誤。 – mprabhat

+0

thnx mprabhat。你的建議幫助我很多。 – brajnandan

相關問題