Boa tarde.
Tenho um dialog que contém um vídeo, o problema é que quando fecho o dialog o vídeo continua rodando (o dialog fecha mas o áudio continua).
[code] <p:dialog header=“Ver Video” widgetVar=“carDialog” modal="true"
appendToBody=“true”>
<p:outputPanel id="carDetail" style="text-align:center;"
layout="block">
<h:outputText id="data"
value="Data: #{videoLista.videoSelecionado.descricao}" />
<p:media value="/videos/#{videoLista.videoSelecionado.local}" width=“350” height=“286” player=“quicktime”>
<f:param name=“autoPlay” value=“false” />
</p:media>
</p:outputPanel>
</p:dialog>[/code]
Queria parar o video quando fecho o dialog.
Oi Thales ,
Eu nunca usei o <p:media , mas acredito que vc consiga parar a execução atraves do seu Bean desta forma :
<p:dialog ...>
<p:ajax event="close" listener="#{videoListaBean.limparComponente()}" update="@this" immediate="false" />
<p:media value="/videos/#{videoListaBean.videoSelecionado.local}" width="350" height="286" player="quicktime" binding="#{videoListaBean.videoBinding}">
...
</p:media>
</p:dialog>
public class videoListaBean (){
import org.primefaces.component.media.Media;
private Media media;
public void limparComponente(CloseEvent event){
this.media.setValue(null); // Ou tenta outro método desse "Media" que pare a execução
// Você pode tentar tambem caso não der certo
UIComponent comp = event.getComponent().findComponent(event.getComponent().getClientId());
comp.clearInitialState();
comp.getChildren().clear();
}