2009-08-05 53 views
0

我有一個工作正常的JSF/ICEFaces應用程序,但突然間它開始花費很長時間渲染響應階段!我可以從控制檯得知java部分完成,但需要10分鐘才能顯示網頁!JSF/ICEFaces在渲染響應中需要很長時間

我使用JBoss作爲我的應用程序服務器。

你能告訴我如何去調試這個問題嗎?我甚至不知道從哪裏開始。請告訴我,如果在這裏提供一些代碼將有助於瞭解問題的根源。首先,你認爲這是一個JBoss問題或應用程序問題?

感謝,

回答

1

BalusC: Debug JSF lifecycle

是您的頁面特別複雜的讀?例如,如果你有一個大的dataTable,其中每一行包含邏輯,那麼渲染階段可能需要很長時間。

+0

很好的鏈接和建議!是的,我有很多行數據表,但我也有另一個簡單的東西上,仍然很慢。令我困惑的是,它從來沒有用過這麼久! 使用你提到的鏈接:RENDER_RESPONSE 6階段正在永遠取得你知道我可以深入挖掘嗎? – Tam 2009-08-06 18:54:46

+0

Bean部分似乎完成得相當快,所以它不是從那裏開始的,但是渲染JSF響應的一部分似乎需要很長時間。 – Tam 2009-08-06 18:59:59

+0

看看您是否可以調整您的log4j級別以便JSF進行調試或跟蹤。這將是超級嘈雜的,但你可能會知道是什麼造成延遲。 – Damo 2009-08-07 09:22:42

1

你可以嘗試使用工具,如Firebug,看看是否有一些Ajax功能,阻止渲染過程。據我所知,IceFaces很大程度上依賴於在應用程序的服務器端執行所有操作,然後將結果發送到瀏覽器進行顯示。 也許您使用這些組件會產生大量與服務器的通信,或者組件無法更新。

我會研究IceFaces,它已被證明是不穩定的,並且隨時都會出現問題。他們有一個自己的論壇,你經常可以找到你的問題的答案。我認爲它在Icefaces.org上。但是,如果不知道更多,我不能真正知道問題出在哪裏。

+0

謝謝Janusz。我會檢查他們的論壇,也許會在那裏發帖。我注意到,雖然這是發生在我第一次啓動應用程序,所以Firebug沒有顯示任何內容,因爲這是我第一次加載應用程序! – Tam 2009-08-05 17:58:14

+1

這是一個非常好的提示:)第一次啓動應用程序時,應用程序需要初始化所有內容,加載所有的庫和類等。這可能需要一些時間,具體取決於你在做什麼。它不應該需要10分鐘,但這可能是看待的方向。你是否創建了大量的應用程序範圍的bean?初始化數據庫連接需要多長時間等。 – Janusz 2009-08-05 18:16:21

+0

我沒有應用程序範圍bean,我的所有bean都是請求範圍!加上我可以從控制檯消息中知道它從DB中獲取了東西,然後成功關閉連接!你是對的,它始終需要更長的時間,因爲它初始化所有內容,但從未像現在這樣10分鐘+!加上它過去需要2-3分鐘來啓動應用程序,但現在突然它需要這麼長時間!我不記得做任何重大變化(這是什麼驅使我堅果:D) – Tam 2009-08-05 18:29:59