在 JSF h:link 中传递参数

mar*_*lon 1 jsf

在搜索框中,用户输入一个词,如“iPhone”,点击“搜索”,系统进行后台搜索,返回“iPhone”的所有信息。最后还通过wordController.related变量输出一个相关的词“iPod”。如果用户点击“iPod”链接,系统需要将iPod作为另一个词进行搜索,并再次返回结果。我的问题是,如何将“iPod”(“相关”变量)作为另一个搜索变量传递并执行后端搜索?这一次,它不是通过 h:inputText 和 h:commandButton,因为它不是用户输入的值。

感谢您的帮助!

<h:form id="wordForm">
        <h:panelGrid columns="3">
            <h:outputLabel for="word">Enter a word:</h:outputLabel>
            <h:inputText id="word"
                value="#{wordController.word}" />
            <h:message for="word" />
        </h:panelGrid>
        <h:commandButton id="search" value="Search!"
            action="#{wordController.info}" />
    </h:form>
    <br />
    <h:outputText value="#{wordController.wordInfo}"
        rendered="#{not empty wordController.wordInfo}" />

    <h:link value="#{wordController.related}" />
Run Code Online (Sandbox Code Playgroud)

Use*_*404 7

<h:link value="This is a link" outcome="login" >
    <f:param name="firstname" value="Matt" />
</h:link>
Run Code Online (Sandbox Code Playgroud)

HTML 输出

<a href="......./faces/login.xhtml?firstname=Matt">This is a link</a>
Run Code Online (Sandbox Code Playgroud)