用动态值Java替换html文本

用动态值Java替换html文本,java,jsf-2,Java,Jsf 2,如何在java中用动态值替换HREF值 <a href=\"http://www.example.com\"> with <a href=\ outcome \"> 使用时,需要使用EL(比如JSTL)在那里渲染字符串 示例JSTL是: <a href=#{outcome}> with <a href=\ outcome \"> 与相比,可能有不同类型的结果。如果您使用的是纯HTML或组件,如h:outputLink和h:link,则EL表

如何在java中用动态值替换HREF值

  <a href=\"http://www.example.com\"> with <a href=\ outcome \">
使用时,需要使用EL(比如JSTL)在那里渲染字符串

示例JSTL是:

<a href=#{outcome}> with <a href=\ outcome \">

与相比,可能有不同类型的结果。如果您使用的是纯HTML或组件,如h:outputLink和h:link,则EL表达式将在呈现页面时进行解释,而不是100%动态

<h:link outcome="#{bean.link}" value="I go to a page!"/>
另一方面,像h:commandButton和h:commandLink这样的元素有一个action属性,该属性引用返回类型为String或void的方法。如果方法返回字符串,则可以返回“#”或导航规则(隐式导航或配置的规则):

<h:commandLink value="Log In" action="#{bean.logIn}"/>

隐式导航(JSF2.x)通过返回页面名称,可以在同一文件夹中的页面之间导航。例如,返回
index
会将用户发送到
index.jsf

将“a”标记替换为“h:commandLink”标记,并根据需要绑定值和操作

  <h:commandLink value="#{..}" action="#{yourBean.yourMethod()}"/>

public String logIn() {
    //Your login logic
    if(userIsLoggedIn) {
        return "userDashboard"; //Implicit navigation
    } else {
        return "index"; //Implicit navigation
    }
}
  <h:commandLink value="#{..}" action="#{yourBean.yourMethod()}"/>