2012-08-30 22 views
6

問題我開始學習JavaEE的昨天,我選擇了一個Oracle官方指南FirstCup to get started與JavaEE的樣品FirstCup dukesAge

我使用NetBeans 7.2的GlassFish服務器3.1.2.2,我敢肯定,我也跟着一步每一步指令。但我有兩個問題:

  1. 我沒有看到任何REST資源配置對話框,因爲它在文檔中說。
  2. 我最終得到了404錯誤。但如果我更改的網址爲

    http://localhost:8080/DukesAgeService/webresources/dukesAge 
    

    它的工作原理!我通過擴大基於REST的Web服務 - 得到了這個網址>右鍵單擊DUkesAgeResource [dukesAge] - >測試資源的URI

我想知道:

  1. 在哪裏可以找到這個REST資源配置dialong在1.

  2. 如果2是Oracle文檔中的打印錯誤。它說相對的網址應該是/resources/dukesAge

  3. 爲什麼url必須以/webresources/dukesAge結尾,我可以改變它嗎?

回答

5

正如在評論中指出,NetBeans 7.2實現了RESTful Web服務的默認配置是從以前的版本有所不同。在創建Web服務期間,可以覆蓋此標準配置。一旦使用默認值創建,就不能再使用該向導(右鍵菜單中的配置選項變灰)。

因此,爲了查看/編輯REST風格的路徑,則需要直接編輯自動生成的Java類:

  1. ApplicationConfig.java類包含在註釋中的REST風格的主路徑@javax.ws.rs.ApplicationPath("webresources")
  2. 每個自動生成XYZFacadeREST類包含相對於每個實體類的註解@Path("entity.XYZ")

如果你想有相同的路徑,在本教程中,你網元路徑用代替resources(點1),並用點號2代替dukesAge

+0

感謝您的回覆,我現在看到REST資源配置,但它是灰色的,所以我不能點擊它....我使用nb7.2 – ChandlerQ

+1

奇怪的事情。 「測試資源」可能是造成這種情況的原因。也許重新啓動IDE和/或重建項目和/或從頭重新創建項目可能會有所幫助。您也可以在web.xml和類代碼中編輯路徑。 – perissf

+0

嘗試重新啓動後,沒有任何更改......此外,沒有web.xml但只有一個glassfish-web.xml ...但我發現這個http://netbeans.org/bugzilla/show_bug.cgi?id=211853,似乎Rest Resources Configuration已經在JavaEE6項目中被禁用了...而且我創建了一個EE6項目... – ChandlerQ