2014-10-23 3 views
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; 
} 

} 

미리 감사드립니다.

답변

1
당신은 oncomplete

oncompleteajax=false을 사용하는

: 아약스 요청이 완료 될 때 실행하는 클라이언트 측 콜백.

변경하려면 다음 기본 아약스 =이

<p:commandLink oncomplete="PF('dlg').show();" action="#{yourBean.youraction}"></p:commandLink> 

것은 사실과 모든

+0

안녕 작동합니다! 그냥 update = "dlg"를 넣으면 효과적입니다. 정말 고마워요! – Mariah

관련 문제