Próbowałem dotychczasowe rozwiązania z primefaces 4,0, ale nie dla mnie.
Więc jako obejście musiałem położyć <h:inputHidden>
i ustawić wartość na własność ManagedBean, i tuż przed wywołaniem <p:remoteCommand>
ustawić wartość tego H: inputHidden (jQuery) i wywołać t: remoteCommand (przy upewnieniu się, że polecenia zdalnego przetwarzania h: inputHidden)
FormBean.java
@ManagedBean(name = "formBean")
@ViewScoped
public class FormBean {
private String myValue;
public String getMyValue() {
return myValue;
}
public void setMyValue(String myValue) {
this.myValue = myValue;
}
public void remoteAction() {
someAction(myValue);
}
}
form.xhtml
.....
<p:remoteCommand name="remoteAction" actionListener="#{formBean.remoteAction()}" process="@this myValueHidden" />
<h:inputHidden id="myValueHidden" value="#{formBean.myValue}" />
.....
form.js
function onClickOfSomeButton() {
$('#formName\\:myValueHidden').val('myValue test value');
remoteAction();
}
EDIT
Również ten działa idealnie ..
remoteAction([{name: 'name1', value: 'value1'}, {name: 'name2', value: 'value2'}]);
Nadzieja to pomaga ...
Odpowiedź tutaj jest nieaktualna, zobacz http://stackoverflow.com/a/18510102/55070 – leo