Hello. i think i have found a bug:
I can change the style 1 time but not more...
JSF:
<%-- jsf:pagecode language="java" location="/src/pagecode/Test.java" --%>
<%-- /jsf:pagecode --%>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@ taglib uri="http://richfaces.org/a4j" prefix="a4j"%>
<%@ taglib uri="http://richfaces.org/rich" prefix="rich"%>
<html>
<head>
<title>Test</title>
<script language="Javascript" type="text/javascript">
</script>
<style type="text/css">
.inputError {
 border: 1px solid rgb(255, 0, 0) ! important;
 background-color: rgb(255, 239, 239) ! important;
}
.noError {
 border: 1px solid rgb(0, 0, 0) ! important;
 background-color: rgb(255, 255, 255) ! important;
}
</style>
</head>
<body>
<f:view>
 <h:form>
 <h:inputText styleClass="noError" id="inputFileNumber" value="#{pc_Test.fileNumber}">
 <a4j:support event="onchange" action="#{pc_Test.doOnChangeFileNumber}" reRender="inputFileNumber" />
 </h:inputText>
 </h:form>
</f:view>
</body>
</html>
Backing Bean: 
import javax.naming.NamingException;
import org.richfaces.component.html.HtmlInputText;
public class Test extends PageCodeBase {
 protected HtmlInputText inputFileNumber;
 protected String fileNumber;
 public String getFileNumber() {
 return fileNumber;
 }
 public void setFileNumber(String fileNumber) {
 this.fileNumber = fileNumber;
 }
 protected HtmlInputText getInputFileNumber() {
 if (inputFileNumber == null) {
 inputFileNumber = (HtmlInputText) findComponentInRoot("inputFileNumber");
 }
 return inputFileNumber;
 }
 public void doOnChangeFileNumber() throws NamingException {
 if (fileNumber.equals("1")) {
 getInputFileNumber().setStyleClass("noError");
 } else {
 getInputFileNumber().setStyleClass("inputError");
 }
 }
}