?
Dieses Dokument verwendet PHP-Handbuch für chinesische Websites Freigeben
Spring Portlet MVC應用的部署過程和JSR-168 Portlet應用的一樣。然而, 這部分內(nèi)容常常使人感到困惑,所以值得在這里簡單地介紹一下。
通常情況下,portal/portlet容器在servlet容器的某個Web應用中運行,
你的Portlet運行在servlet容器的另一個Web應用里。為了使得Portlet容器能夠調(diào)用
Portlet應用,Portlet容器必須對一個顯式的Servlet進行跨Context的調(diào)用,那個Servlet
提供了對在 portlet.xml
定義的Portlet服務的訪問支持。
JSR-168規(guī)范對這方面沒有規(guī)定,所以每個Portlet容器都有自己的機制,通常 會引入一些“布署時的處理”來改變Portlet應用并且把Portlet注冊到Portlet容器里。
至少,在Portlet應用中 web.xml
文件需要通過修改來注入
Portlet容器會顯式調(diào)用的Servlet。有時候,單個Servlet實例對Web應用中的所有
Portlet提供支持,有時候,對于每個Portlet需要一個Servlet實例。
有些Portlet容器也會在Web應用中注入類庫或者配置文件。Portlet容器需要實現(xiàn)Portlet JSP Tab庫以供使用。
最重要的是理解你選擇的portal對Portlet布署的要求,并且確保滿足它們 (通常是按照它提供的自動布署程序)。仔細閱讀portal這方面的文檔。
在你布署完Portlet后,檢查 web.xml
。有些老的portal
會破壞 ViewRendererServlet
的定義,破壞你的Portlet顯示。