2012-04-20 2 views
2

Я использую JSF 2.0 и Primefaces 3.2.primefaces p: сообщение вне формы формы

Я использую Facelets для шаблонам, и я построил макет в 3 колонки:

Левая колонка - колонка MainContent - Правая колонка. Каждый столбец получил собственный файл xhtml-шаблона с ui: composition, который я вставляю в mainTemplate.

В колонке MainContent я получил инфо-кнопку (р: CommandButton):

<h:form id="mainForm"> 
<p:commandButton id="infoButton" value="Info" actionListener="#{faceletsAttachment.addInfo}"/> 
</h:form> 

Но я хочу, чтобы информация, чтобы показать в правой колонке, с

<h:form id="rightColumnForm"> 
<p:message for="infoButton"> 
</h:form> 

Это явно не работает, потому что не находит infoButton. Любая идея, как я могу сделать эту работу? Я попробовал

<p:message for="mainForm:infoButton"> 

тоже, но нет сигары.

Причина, по которой я хочу использовать сообщение p:, заключается в том, что я хочу, чтобы сообщение позиционировалось в позиции y, имеющейся в infoButton. Если у вас есть альтернативное решение, как я могу это сделать, я был бы также признателен.

ответ

3

При добавлении сообщения вручную из стороны сервера вы можете сделать следующее

<p:message id="myInfoButton" for="myInfoButton" />

и отправлять сообщения от сервера к myInfoButton как этот

FacesContext.getCurrentInstance.addMessage("myInfoButton ", new FacesMessage("My Message", "Some Text goes here...")); 

добавить :rightColumnForm идентификатор для обновления из <p:commandButton id="infoButton"

+0

Привет, спасибо за ответ, но я не получил это для работы: В моей backingbean: public void addInfo (ActionEvent actionEvent) { FacesContext.getCurrentInstance(). AddMessage («myInfoButton», новый FacesMessage («Мое сообщение», «Некоторые тексты идут здесь ...»)); } И <р: идентификатор сообщения = "myInfoButton" для = "myInfoButton" /> в моей форме. Когда я нажал кнопку commandButton, сообщение не появилось. Также я не уверен, как это приведет к выравниванию сообщения в правильной позиции y? – baron5

+0

, вам нужно обновить форму rightColumnForm, чтобы она отображала представление ... – Daniel

+0

Да, это делает меня на один шаг ближе, но важно, чтобы сообщение отображалось в той же позиции y, что и commandButton .. – baron5

Смежные вопросы