Привет, я новичок с первичками, и у меня есть некоторые проблемы со значениями, которые показаны в моей таблице данных. Я загружаю данные из моей базы данных sql и показываю эти данные в dataTable. Существует один колонок: «Комментарии», где находится кнопка внутри. Если вы нажмете на эту кнопку, откроется диалоговое окно. Внутри этого диалогового фрейма должны быть также некоторые из тех же значений, которые я показываю в dataTable, но он не работает. Я не могу отобразить значения в этом диалоговом окне. Я много гулял и много пробовал, но ничего не помогло. Вот XHTML:Диалог Primefaces не показывает значения
<h:body>
<h:form>
<p:dataTable value="#{gutachtenBean.daten}" var="auftrag"
rowKey="#{gutachtenBean.daten}" selectionMode="multiple">
<f:facet name="header">
<p:outputPanel>
<h:outputText value="Vorgangsliste"
style="position:relative; top: 4px; float:left; font-size:14px" />
<h:outputText value="Search all fields:" style="margin-right:10px" />
<p:inputText style="width:150px" placeholder="Enter keyword" />
</p:outputPanel>
</f:facet>
<p:column style="text-align:center"
filterBy="#{auftrag.schadennummer}" headerText="Schadennummer"
filterMatchMode="contains">
#{auftrag.schadennummer}
</p:column>
<p:column style="width:150px;text-align:center"
filterBy="#{auftrag.vorgangsnummer}" headerText="Vorgangsnummer"
filterMatchMode="contains">
#{auftrag.vorgangsnummer}
</p:column>
<p:column style="width:120px;text-align:center"
filterBy="#{auftrag.kennzeichen}" headerText="Kennzeichen"
filterMatchMode="contains">
#{auftrag.kennzeichen}
</p:column>
<p:column style="width:100px;text-align:center"
filterBy="#{auftrag.kennzeichen}" headerText="Organisation">
<f:facet name="filter">
<p:selectOneMenu>
<f:selectItem itemLabel="Select One" />
<f:selectItems value="#{dtFilterView.brands}" />
</p:selectOneMenu>
</f:facet>
</p:column>
<p:column style="width:220px;text-align:center"
filterBy="#{auftrag.status}" headerText="Status"
filterMatchMode="contains">
#{auftrag.status}
</p:column>
<p:column headerText="SLA-Beginn"
style="width:130px;text-align:center">
</p:column>
<p:column headerText="SLA-Laufzeit"
style="width:130px;text-align:center">
</p:column>
<p:column headerText="SLA-Überschreitung"
style="width:130px;text-align:center">
</p:column>
<p:column filterBy="#{auftrag.kennzeichen}"
style="width:100px;text-align:center" headerText="Ampel">
<f:facet name="filter">
<p:selectOneMenu>
<f:selectItem itemLabel="Select One" />
<f:selectItems value="#{dtFilterView.brands}" />
</p:selectOneMenu>
</f:facet>
</p:column>
<p:column headerText="Kommentare"
style="width:100px;text-align:center">
<p:commandButton styleClass="viewbutton"
style="border-left:1px solid #666; height:20px;font-size:10px"
value="Open" type="button" onclick="PF('dlg1').show();" />
</p:column>
</p:dataTable>
<p:commandButton styleClass="viewbutton" value="View"
icon="ui-icon-search"
style="border-left:1px solid #666;margin-top:10px"></p:commandButton>
</h:form>
<p:dialog header="Kommentar" widgetVar="dlg1" height="600px"
width="900px">
<h:form>
<h:outputText value="#{auftrag.kommentar}"/>
</h:form>
</p:dialog>
</h:body>
Вот мой Bean:
@ManagedBean(name="gutachtenBean")
@SessionScoped
public class GutachtenController implements Serializable{
private static final long serialVersionUID = 8410541973590420821L;
private DatabaseConnector connector = new DatabaseConnector();
private List<GutachtenDaten> daten;
public GutachtenController(){
daten = connector.getAuftragsDaten();
}
public List<GutachtenDaten> getDaten() {
return daten;
}
public void setDaten(List<GutachtenDaten> daten) {
this.daten = daten;
}
}
public class GutachtenDaten {
private String schadennummer;
private String kennzeichen;
private String status;
private String vorgangsnummer;
private String kommentar;
public String getSchadennummer() {
return schadennummer;
}
public void setSchadennummer(String schadennummer) {
this.schadennummer = schadennummer;
}
public String getKennzeichen() {
return kennzeichen;
}
public void setKennzeichen(String kennzeichen) {
this.kennzeichen = kennzeichen;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getVorgangsnummer() {
return vorgangsnummer;
}
public void setVorgangsnummer(String vorgangsnummer) {
this.vorgangsnummer = vorgangsnummer;
}
public String getKommentar() {
return kommentar;
}
public void setKommentar(String kommentar) {
this.kommentar = kommentar;
}
}
Я не понимаю, почему значения Арента отображается в диалоговом кадре. Пожалуйста, помогите!
Спасибо за быстрый ответ, но он не работает. Прежде всего «oncomplete» даже не открывает диалоговый фрейм. только onclick открывает его. вторые значения внутри диалогового фрейма еще не показаны. –
Вы проверяли ошибки на сервере и клиенте, когда используете 'oncomplete'? Нет причин, по которым он не должен работать, кроме случаев, когда есть какое-то исключение –
Он даже не ошибается: D просто не открывает его –