0
안녕하세요 제 베이킹 빈에서 메소드를 실행하는 commandLink가 있습니다.이 메소드는 문자열을 작성한 ejb를 호출하고 실행 후 getter 및 setters를 사용하여 빈의 속성으로 배치합니다primefaces commandlink는 모달 대화 상자를 표시하지 않습니다.
XHTML :
그 방법은 해당 속성의 값을 표시하는 모달 대화 상자를 제기해야하지만, 나는 체인 실행을 구축하지만, 대화를 들지 않는 방법을 볼 수 없습니다, 이건 내 코드입니다<ui:composition>
<p:panelGrid columns="3" style="width: 100%" >
<h:form id="headerForm">
<p:column style="width: 15%;height:auto; text-align: center;">
<p:graphicImage value="#{loginBean.url}" style="align:center;"/>
</p:column>
<p:column>
<div align="center">
<h:outputText styleClass="titleHeader" value="#{loginBean.entityName}" />
</div>
</p:column>
<p:column style="width: 15%;height:auto; text-align: center;">
<div align="right">
<h:commandLink onComplete="PF('dlg').show(); return false;" type="button" ajax="false" action="# {xxxxBean.createString}">
<h:outputText value="Contact" />
</h:commandLink>
</div>
</p:column>
</h:form>
</p:panelGrid>
<p:dialog id="dlg" header="Some title here" widgetVar="dlg" modal="true">
<h:outputText value="#{xxxxBean.stringBuild}" />
</p:dialog>
</ui:composition>
뒷받침 빈 :
@ManagedBean
@SuppressWarnings("serial")
public class XxxxBean implements Serializable{
private String stringBuild;
private someBeanRemote ejb;
public XxxxBean() {
// TODO Auto-generated constructor stub
try{
ejb = EjbConsumer.getRemoteEjb();
}catch(Exception e){
e.printStackTrace();
}
}
public void createString(){
List<someObject> list = ejb.findAllActiveObjects(Constants.TOP);
String temp = "";
if(list!=null && list.size() > 0){
for(int i=0; i < list.size(); i++){
temp += list.get(i).getName() + "<br/>";
}
this.stringBuild= temp;
}
System.out.println(this.stringBuild);
}
public void setStringBuild(String stringBuild) {
this.stringBuild= stringBuild;
}
public String getStringBuild() {
return stringBuild;
}
}
미리 감사드립니다.
안녕 작동합니다! 그냥 update = "dlg"를 넣으면 효과적입니다. 정말 고마워요! – Mariah