Hi! It's me again!
I have next problem: I have one page - where I can show images, which I can get from certain directory (for example - call - /root).
So I have the dropdown menu (I use rich:comboBox) to choose the directory with images (I can have more than one directory, but now I have only one).
Then I have another page - where I upload image and save it in the neccessary directory (/root).
And after I come back to first page and try to choose "/root" directory from comboBox - nothing happens. The table with images doesnt update and even valueChangeListener doesnt invoke.
My bean - its session bean. I couldnt save it in request scope, so it must be in session.
Here is my page code:
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:a4j="http://richfaces.org/a4j"
xmlns:rich="http://richfaces.org/rich"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:fc="http://www.fusioncharts.com"
xmlns:t="http://myfaces.apache.org/tomahawk"
template="template.xhtml">
<ui:define name="title">Companies page</ui:define>
<ui:define name="content">
<style type="text/css">
.pic-normal {
width: 200px;
border: 2px solid #ACBECE;
}
.wrap1 {
width:260px;
height: 200px;
float: left;
}
.button-width {
width: 200px;
height: 40px;
}
</style>
<h:panelGroup rendered="#{sessionBean.companyId != null}">
<h:form id="clientAdminButtons">
<h:panelGrid id = "buttonsPanelGrid" columns="4" style="width: 100%;">
<h:commandButton value="Budget" action="setbudget" immediate="true" styleClass="button-width"/>
<h:commandButton value="Sales" action="custom-import" immediate="true" styleClass="button-width"/>
<h:commandButton value="Store sales" action="setstoresales" immediate="true" styleClass="button-width"/>
<h:commandButton value="Load image from PPT" action="upload" immediate="true" styleClass="button-width"/>
</h:panelGrid>
</h:form>
<br/><br/><br/>
<table id="mainTable" style="width: 100%;">
<tr>
<td style="width: 30%;">
<div id="leftDiv">
Some information :)
</div>
</td>
<td style="width: 70%;">
<h:form id="clientAdminForm">
<h:outputText value="Select user for preview his/her pages"/><br/><br/><br/>
<div style="width: 900px;">
<rich:comboBox id="selectClientPages" value="#{clientAdminBean.selectedDirectory}" defaultLabel="Select the user" width="300"
valueChangeListener="#{clientAdminBean.loadSelectedDirectory}">
<f:selectItems value="#{clientAdminBean.companyDirectories}" />
<a4j:support ajaxSingle="true" event="onselect" reRender="clientAdminForm"/>
</rich:comboBox>
<br/><br/><br/>
<rich:dataTable id="clientPages" rows="#{clientAdminBean.rowNumber}" width="100%" var="image" value="#{clientAdminBean.userImages}">
<rich:column>
<f:facet name="header">
<h:outputText value="Name"/>
</f:facet>
<h:outputText value="#{image.name}"/>
</rich:column>
<rich:column>
<f:facet name="header">
<h:outputText value="User pages"/>
</f:facet>
<h:graphicImage value="/#{clientAdminBean.webCompanyDirectory}/#{clientAdminBean.selectedDirectory}/#{image.name}.png"
style="width: 200px;" styleClass="jimg"/>
</rich:column>
<rich:column>
<f:facet name="header">
<h:outputText value="Configure"/>
</f:facet>
<h:selectBooleanCheckbox id="hiddenCheckbox" value="#{image.available}">
Show/hide
</h:selectBooleanCheckbox>
</rich:column>
</rich:dataTable>
<br/><br/>
<h:commandButton id="saveChanges" value="Save changes" actionListener="#{clientAdminBean.saveChanges}"/>
<rich:jQuery selector=".jimg" query="addClass('pic-normal')"/>
<rich:jQuery selector=".jimg" query="wrap('<div class=\'wrap1\'></div>')" />
<rich:jQuery selector=".jimg" query="mouseover(function(){enlargePic(this)})"/>
<rich:jQuery selector=".jimg" query="mouseout(function(){normalPic(this)})"/>
<rich:jQuery name="enlargePic" timing="onJScall" query="stop().animate({width:'300px'})" />
<rich:jQuery name="normalPic" timing="onJScall" query="stop().animate({width:'200px'})" />
</div>
</h:form>
</td>
</tr>
</table>
</h:panelGroup>
</ui:define>
<ui:define name="return" />