2013-07-25 29 views
1

我正在開發WebSphere Portal 8.0,並且正在嘗試使portlet的表面很少。 任何人都可以與我分享如何在一個portlet中建立到其他JSF站點的簡單鏈接? 我的意思是,我試圖用這個,但它不工作:WebSphere Portal 8.0上的一個portlet中的jsf頁面之間的導航

<h:outputLink value="page2.xhtml"> 
    <h:outputText value="take me to the page2" /> 
</h:outputLink> 

我重定向到misterious鏈接,但我想留在同一個網站,但面對變化在這個單個Portlet 。

回答

1

我已經得到答案。

如果你想使用GET,使用此:由POST使用

<h:link value="take me to the page2" outcome="page2" /> 

或者:

<h:form> 
    <h:commandLink action="#{menager.navigateToPage2}" value="take me to the page2" /> 
</h:form> 

和faces-config.xml中

<managed-bean> 
    <managed-bean-name>menadzer</managed-bean-name> 
    <managed-bean-class>test.Menadzer</managed-bean-class> 
    <managed-bean-scope>request</managed-bean-scope> 
    <managed-property> 
     <property-name>symbolAktywnejSpolki</property-name> 
     <value>#{param.symbol}</value> 
    </managed-property> 
</managed-bean> 

<navigation-rule> 
    <display-name>index.xhtml</display-name> 
    <from-view-id>index.xhtml</from-view-id> 
    <navigation-case> 
     <from-action>#{menager.navigateToPage2}</from-action> 
     <from-outcome>page2</from-outcome> 
     <to-view-id>page2.xhtml</to-view-id> 
    </navigation-case> 
</navigation-rule> 

和類:

public class Menager { 
    ... 
    public String navigateToPage2() { 
     return "page2"; 
    } 
} 

如果您使用WebSphere Portal,請將其添加到faces-config.xml中:

<application> 
    <view-handler>com.ibm.faces20.portlet.FaceletPortletViewHandler</view-handler> 
    <resource-handler>com.ibm.faces20.portlet.httpbridge.PortletResourceHandler</resource-handler> 
    <el-resolver>com.ibm.faces20.portlet.PortletELResolver</el-resolver> 
</application> 
相關問題