Multiple pages on a portlet with Icefaces + Seam + Facelets
tomx Jul 17, 2008 6:06 PMI want to convert my web application into a portlet on liferay.
My welcome page is well rendered into the portlet frame, but I have a problem when I try to call a redirect action to another
page. These pages seem to try rendering out of portlet context, and seam conversation is over.
I can't see any error, but the URL is kind of http://localhost:8080/appliweb/search/page.seam, and not liferay-style.
I just receive the message below :
17:10:50,359 INFO [lifecycle] WARNING: FacesMessage(s) have been enqueued, but may not have been displayed. sourceId=null[severity=(WARN 1), summary=(The conversation ended, timed out or was processing another request), detail=(The conversation ended, timed out or was processing another request)]
Here is my pages.xml:
<pages xmlns="http://jboss.com/products/seam/pages" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jboss.com/products/seam/pages http://jboss.com/products/seam/pages-2.0.xsd" no-conversation-view-id="/search/list.xhtml"> <conversation name="ViewSearch" parameter-name="searchId" parameter-value="#{viewedSearch.id}" /> <page view-id="/search/list.xhtml"> <navigation from-action="#{searchView.selectSearch(s)}"> <redirect view-id="/search/view.xhtml" /> </navigation> </page> </pages>
faces-config.xml
<faces-config> <application> <view-handler>com.icesoft.faces.facelets.D2DSeamFaceletViewHandler</view-handler> </application> </faces-config>
list.xhtml
<ui:define name="content"> <ice:form> <ice:dataTable id="searchTable" rows="10" columnClasses="typeColumn, titleColumn, startDateColumn, endDateColumn, leadingUnitColumn" rowClasses="oddRow, evenRow" sortColumn="#{searchList.sortedColumn}" sortAscending="#{searchList.ascending}" value="#{searchList.list}" var="s" scrollHeight="310px" scrollable="true" columnWidths="24px,560px,70px,70px,200px"> <ice:column id="typeColumn"> <ice:graphicImage url="/img/search/image.png" rendered="#{searchAxesList.getType(s) == 'OK'}"/> <ice:rowSelector value="false" selectionAction="#{searchView.select(s)}" /> </ice:column> </ice:dataTable> </ice:form> </ui:define>
What can I do if I want to keep the navigation and pages into the portlet ?