Hi Forum
I'm using the mediaOutput to show a Flash movie.
Now I would like to switch the movie dynamically. I provide a drop down with movie names and a button to start the movie. I thought I could do it with a Ajax reRender but this seems not to work.
Here is my page:
<t:div id="helpMovie"> <h:panelGrid id="helpMovies"> <h:outputLabel value="#{cont.lblHelpMovieSelect}" rendered="true" /> <rich:comboBox id="movieSelect" defaultLabel="#{cont.dropDownDefaultMovieSelect}" value="#{helpHandler.movieSelected}" style="width: 90%" selectFirstOnUpdate="false" listHeight="100" listWidth="300" enableManualInput="false" rendered="true" required="false"> <f:selectItems value="#{helpHandler.movieList }" /> </rich:comboBox> <a4j:commandButton value="#{cont.lblHelpShow}" rendered="true" reRender="flashPanelDynamic"/> </h:panelGrid> <a4j:outputPanel id="flashPanelDynamic"> <script type="text/javascript" src="#{facesContext.externalContext.requestContextPath}/scripts/swfobject.js" /> <a4j:mediaOutput element="a" id="swfLink" style="display: none;" cacheable="false" session="true" createContent="#{helpHandler.startVideo}" value="#{mediaData}" /> <a4j:outputPanel layout="block" id="myFlashContent" style="width: 200px; height: 200px"> <a href="http://www.adobe.com/go/getflashplayer"> <img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /> </a> </a4j:outputPanel> <script type="text/javascript"> var flashvars = {}; var params = {}; params.scale = "noscale"; params.allowfullscreen = "false"; params.loop = "false"; params.play = "true"; var attributes = {}; swfobject.embedSWF(#{rich:element('swfLink')}.href, "#{rich:clientId('myFlashContent')}", "800", "800", "9.0.0", false, flashvars, params, attributes); </script> </a4j:outputPanel> </t:div> </t:div> <t:saveState value="#{helpHandler.movieSelected}" />
This problem is solved. The button was not defined within tag by mistake...