Problema com ViewScoped JSF2 e render do Richfaces 4

Bom dia Pessoal,

tenho o seguinte código:

teste.xhtml:

[code]

Teste
<rich:panel id="teste_panel"> 

<a4j:outputPanel rendered="#{teste.testeStr == 'teste2' or teste.testeStr == null}"> 
 	<h:form>
		<a4j:commandButton value="Teste1" action="#{teste.teste1}" render="teste_panel"/>
	</h:form>
</a4j:outputPanel>

<a4j:outputPanel rendered="#{teste.testeStr == 'teste1' or teste.testeStr == null}">
	<h:form>
		<a4j:commandButton value="Teste2" action="#{teste.teste2}" render="teste_panel"/>
	</h:form>
</a4j:outputPanel>
 
 <a4j:outputPanel rendered="#{teste.testeStr == null}">
  	oi
 </a4j:outputPanel>
 <h:outputText value="#{teste.testeStr}"/>

</rich:panel>

</h:body>

[/code]

e TesteManagedBean:

[code]
import javax.annotation.PostConstruct;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;

@ManagedBean(name = “teste”)
@ViewScoped
public class TesteManagedBean {

private String testeStr;

public String getTesteStr() {
	return testeStr;
}

public void setTesteStr(String testeStr) {
	this.testeStr = testeStr;
}

@PostConstruct
public void postConstruct(){
	System.out.println("Construct");
}

public void teste1(){
	testeStr = "teste1";
	System.out.println("Teste1");
}

public void teste2(){
	testeStr = "teste2";
	System.out.println("Teste2");
}

}[/code]

Ao clicar nos botões Teste1 e Teste2 o conteúdo escrito no console deveria ser:
Construct
Teste1
Teste2

mais não é isso que acontece, escreve o seguinte:

Construct
Teste1
Construct

ou seja, ao clicar no botão Teste2 ele chama o construtor novamente.

Alguém sabe como posso estar resolvendo?