<p: commandButton> não funciona quando desativar = "true" inicialmente

Este é o meu ManagedBean:

@Named(value = "mrBean")
@RequestScoped
public class MrBean {

   public void laugh() {
      System.out.println("HAHAHA");
   }

   public void prepareToLaugh() {
      System.out.println("Drink water.");
   }

}

E esta é a versão de trabalho do meu commandButton:

<p:commandButton actionListener="#{mrBean.laugh}" widgetVar="laughtButton"
                 value="Laugh" oncomplete="laughButton.disable();"  />

Quando clicamos no botão acima, viHAHAHA e o botão está desativado. No entanto, quando defino o laughButton'sdisable atribuir atrue, o botão não funciona mais:

<p:commandButton actionListener="#{mrBean.laugh}" widgetVar="laughtButton"
                 value="Laugh" disabled="true" oncomplete="laughButton.disable();"  />

<p:commandButton actionListener="#{mrBean.prepareToLaugh}"
                 value="Prepare to laugh" oncomplete="laughButton.enable();" />

Quando clico no segundo botão, viDrink water e o 1º botão está ativado. No entanto, quando clico no 1º botão, nada acontece.

Ficaria muito grato se alguém pudesse me dar um conselho sobre como eu deveria resolver esse problema. Estou usando o PrimeFaces 3.0 RC2.

questionAnswers(1)

yourAnswerToTheQuestion