相关疑难解决方法(0)

什么可以使用<f:metadata>,<f:viewParam>和<f:viewAction>?

任何人都可以澄清我们如何在一般情况下使用,或者在现实世界中使用这个代码片段?

<f:metadata>
    <f:viewParam id="id" value="#{bean.id}" />
    <f:viewAction action="#{bean.init}" />
</f:metadata>
Run Code Online (Sandbox Code Playgroud)

jsf jsf-2 viewparams viewaction

146
推荐指数
1
解决办法
12万
查看次数

ViewParam vs @ManagedProperty(value ="#{param.id}")

定义View Params之间有什么区别:

<f:metadata>
  <f:viewParam name="id" value="#{someBean.id}"/>
</f:metadata>
Run Code Online (Sandbox Code Playgroud)

并在ManagedBean中定义属性,如下所示:

@ManagedProperty(value = "#{param.id}")
private Integer id;
Run Code Online (Sandbox Code Playgroud)

jsf jsf-2 managed-bean viewparams managed-property

95
推荐指数
2
解决办法
5万
查看次数

在JSF表单提交上保留GET请求查询字符串参数

我有3页:

  • main.xhtml
  • agreement.xhtml
  • generated.xhtml

agreement.xhtml需要两个参数正确加载:serviceIdsite.所以,正常的网址看起来像这样:/app/agreement.xhtml?site=US&serviceId=AABBCC.

我有这个按钮 agreement.xhtml

<h:form>
   <h:commandButton value="Generate License File" action="#{agreement.generateMethod}" />   
</h:form>
Run Code Online (Sandbox Code Playgroud)

@RequestScoped#{agreement}有这样的方法:

public String generateMethod(){
    .......
    return "generated";
}
Run Code Online (Sandbox Code Playgroud)

我需要,在点击时,generateMethod()方法被执行,完成后,用户被重定向到generated.xhtml页面.发生了什么事是,在点击,网页浏览器发送的用户/app/agreement.xhtml,而且由于它不发送参数siteserviceId,它崩溃.

我尝试过generateMethod()返回a "generated?faces-redirect=true",但仍然没有.有任何想法吗?

navigation jsf jsf-2 http-request-parameters

17
推荐指数
2
解决办法
2万
查看次数

如何在h:form submit期间将查询参数附加到POST请求

当我<h:form>在下面提到的页面中单击标签的命令按钮时,我希望在我点击提交按钮后,查询参数作为请求参数发送,就像我的页面URL一样../index.xhtml?cid=12&ctype=video.

我希望在我的动作方法中它应该被打印CID=12,然而,它打印出来CID=NULL.有什么问题,如何解决?

我的看法:

<h:body id="body">
    <h:form id="form">    
        <p:commandButton action="#{authorizationBean.getParameters()}" value="Ajax Submit" id="ajax" />   
    </h:form> 
</h:body>
Run Code Online (Sandbox Code Playgroud)

我的托管bean:

@ManagedBean
@SessionScoped
public class AuthorizationBean {

    public boolean getParameters(){
        Map<String, String> parameterMap = (Map<String, String>) FacesContext.getCurrentInstance()
                    .getExternalContext().getRequestParameterMap();
        String cid = parameterMap.get("cid");
        System.out.println("CID="+cid);
        return true;
    }

}
Run Code Online (Sandbox Code Playgroud)

jsf get primefaces commandbutton

2
推荐指数
1
解决办法
3129
查看次数