Hello all. I have a (simplified) code below. The submit button has a binded action. This action is invoked always normally. But a value setter method is not invoked sometimes and I see default values in bean.save() method. I guess it occurs when server simultaneously gets requests from tc:reload and from the submit button. Can you help me?

Thanks.

[code]

MyFaces Core 2.1.14,
MyFaces Tobago 2.0 alpha 3

<!-- I have 6 same forms on a page -->
<tc:form>
<tc:panel>
   <f:facet name="reload">
       <tc:reload frequency="3000" update="true"/>
   </f:facet>
   <tc:out value="#{bean.test}"/>
</tc:panel>
<tc:panel>
   <tc:button>
       <f:facet name="popup">
           <tc:popup>
               <tc:panel>
                   <tc:in value="#{bean.test}"/>
                   <tc:button label="submit" action="#{bean.save}">
<tc:attribute name="popupClose" value="afterSubmit"/>
                   </tc:button>
                   <tc:button label="cancel">
                       <tc:attribute name="popupClose" value="immediate"/>
                   </tc:button>
               <tc:panel>
           </tc:popup>
       </f:facet>
   </tc:button>
</tc:panel>
</tc:form>

@ManagedBean
@ApplicationScoped
class Bean
{
   ...
   public void setTest(String value)
   {
       // I don't know why but this method are not called sometimes
   }
   ...
   public void save()
   {
       // store submitted values to database
   }
}

[/code]

Reply via email to