2012-03-10 84 views
1

在遵循Liferay in Action書的指導下,爲portlet編寫編輯模式。我成功部署了portlet。該portlet在編輯模式下包含一個文本框和一個按鈕。如果我在文本框中輸入名稱並按下按鈕,該名稱將顯示在portlet的查看模式中。但是當我進入編輯模式,並在文本框中輸入名稱並按下添加名稱按鈕時,它會顯示「Portlet暫時不可用」消息。Portlet暫時不可用

更新:

我檢查日誌文件。它說「javax.portlet.PortletException:processAction方法未實現」。但我已經實現了它。

@Override 
    public void processAction(ActionRequest actionRequest, ActionResponse actionResponse) throws IOException, PortletException { 
     String addName = actionRequest.getParameter("addName"); 
     if (addName != null) { 
      PortletPreferences prefs = actionRequest.getPreferences(); 
      prefs.setValue("name", actionRequest.getParameter("username")); 
      prefs.store(); 
      actionResponse.setPortletMode(PortletMode.VIEW); 
     } 
    } 
+1

您能否顯示您有異常? – 2012-03-10 17:30:30

+0

我沒有看到任何異常。部署portlet後,我打開liferay並將portlet添加到我的門戶。然後我去編輯portlet的模式,並在編輯框中輸入一個名字,然後點擊Add Name按鈕。當它切換回查看模式時,它顯示消息。 – Karadous 2012-03-10 19:50:51

+2

在liferay的日誌文件中您應該看到異常。你也可以顯示你的渲染(視圖)處理程序?或者,如果你正在逐一遵循這個例子,你能知道它在哪個頁面上嗎? – 2012-03-10 20:23:02

回答

2

您可以在日誌中的錯誤(假設你也使用Tomcat)

  • 當服務器上:liferayfolder/tomcatfolder /日誌/ catalina.out中
  • 當服務器關閉時: liferayfolder /日誌/ liferay- 2012-03-11 .LOG(日期更改)

如果你是在Linux或Mac OS可以尾巴日誌文件,以livemoni打倒它。

For example tail -f path\to\tomcat\logs\catalina.out 

直到提供更多信息,我建議您看看the book examples並比較這些代碼。 (資源>下載>代碼示例)

+0

感謝您的路徑 – Karadous 2012-03-12 20:20:19

+1

問題已解決。但不幸的是,我不明白它是如何解決的。我剛剛從manning站點下載了源代碼並替換了processAction方法。我將它與我自己的方法進行了比較。這是一樣的。 – Karadous 2012-03-13 04:37:15