title: inputField databinding issue with VisualForce
body: <p>I'm having strange results with a Visualforce page (yes, Salesforce.com is icky, I know). My issue is that I am trying to use the inputField to bind data on a custom sObject, but in my custom controller, it is not recognizing the user input data. </p>
  
  <p>Here is the code snippet from the page: </p>
  
  <pre><code>&lt;apex:pageBlockSection title="Enter New Fee" rendered="{!isRenderedFees}" &gt;
  
      &lt;apex:inputField value="{!workingFee.Fee_Type__c}"  required="True"/&gt;
     &lt;apex:inputField value="{!workingFee.Fee__c}"  required="True"/&gt; 
  
      &lt;apex:pageBlockSectionItem &gt;
          &lt;apex:CommandButton value="Save Fee" action="{!saveFee}"  immediate="true" /&gt;
          &lt;apex:CommandButton value="Cancel" action="{!cancelFee}" immediate="true" /&gt;
      &lt;/apex:pageBlockSectionItem&gt; 
   &lt;/apex:pageBlockSection&gt;
  </code></pre>
  
  <p>and here is the code from the controller:</p>
  
  <pre><code>public Fee__c workingFee {get; set;}
   ....
  public PageReference saveFee(){
  
      this.workingFee.Trade_Group__c = tradeGroup.id;
      try{
          System.debug('~~~~#~~#~~workingFee: '+workingFee.Fee_Type__c +'='+workingFee.Fee__c);
          upsert workingFee;
      }catch (System.Dmlexception e){
          ApexPages.addMessages(e);
          return null;
      }
      System.debug('~~~~#~~#~~workingFee: '+workingFee.Fee_Type__c +'='+workingFee.Fee__c);
      //savedFees.add(workingFee.clone());
  
      //re-render the page
      this.isRenderedFees = False;
      return null;
  }
  </code></pre>
  
  <p>I've made sure the workingFee property is not null. Whenever I hit the "Save Fee" button after entering the values, it reloads the page and gives me the message "Error: Required fields are missing: [Fee__c]" (note, Fee__c here is a currency field -- it's not that it expects this to be an sObject, is it?)</p>
  
  <p>The debug statement in the saveFee() method shows that workingFee's important fields are null, when I would expect them to have been assigned the values input by the user. </p>