A: 

You need to ensure that the conditionals responsible for the outcome of the rendered attribute are also the same in the subsequent request of the form submit. Because when a component isn't rendered, JSF won't apply the request values them.

In a nutshell, the property behind #{selectedPeriodPart} needs to be the same in the subsequent request. There are several solutions:

  1. Put bean in session scope. Easiest solution, but bad for server memory and client experience (updates would be reflected in multiple tabs/windows in same session).

  2. Pass it through using <h:inputHidden>. Not sure though how this fits in the Ajax/Richfaces picture. Better use <a4j:keepAlive> here.

  3. Use a conversation scope. Seam offers facilities for this.

BalusC
Thanks for answering the question =) It doesn't solve my problem =(To make some things clear: The backing bean is a stateful session bean (ejb) with a conversation scope. I tried wrapping <code>selectOneMenu value="#{selectedDaypart}"</code> in a <code>a4j:outputPanel</code> and put the rendered conditional on that component, however this didn't work either.
Casper
Sorry, can't help much more than just suggesting to run a debugger. At least, you now know where to look for the cause of the problem and how to fix it: ensure that the `rendered` attribute of the component in question doesn't evaluate to `false` in the subsequent request.
BalusC
A: 

I fixed it -.- Nothing was wrong with the code I posted. Because I wasn't able to solve this issue I continued on an other page in the same conversation. I noticed some more strange behaviour: outjection of a variable didn't work etc.

I figured the mistake was in some other part of the code which, after corrected, fixed the whole problem.

Thx for answering guys!

Casper