title: At which phase is managed bean constructed and which constructor is used
body: <p>Consider example of JSF based web-app <code>hello1</code> from official tutorial with addition constructor in managed bean. The follow <code>index.xhtml</code> facelet</p>
  
  <pre><code>&lt;html lang="en"
        xmlns="http://www.w3.org/1999/xhtml"
        xmlns:h="http://xmlns.jcp.org/jsf/html"&gt;
      &lt;h:head&gt;
          &lt;title&gt;Facelets Hello Greeting&lt;/title&gt;
      &lt;/h:head&gt;
      &lt;h:body&gt;
          &lt;h:form&gt;
              &lt;h:graphicImage url="#{resource['images:duke.waving.gif']}" 
                              alt="Duke waving his hand"/&gt;
              &lt;h2&gt;Hello hui, my name is Duke. What's yours?&lt;/h2&gt;
              &lt;h:inputText id="username"
                           title="My name is: "
                           value="#{hello.name}"
                           required="true"
                           requiredMessage="Error: A name is required."
                           maxlength="25" /&gt;
              &lt;p&gt;&lt;/p&gt;
              &lt;h:commandButton id="submit" value="Submit" action="response"&gt;
              &lt;/h:commandButton&gt;
              &lt;h:commandButton id="reset" value="Reset" type="reset"&gt;
              &lt;/h:commandButton&gt;
          &lt;/h:form&gt;
          &lt;div class="messagecolor"&gt;
              &lt;h:messages showSummary="true" 
                          showDetail="false"
                          errorStyle="color: #d20005" 
                          infoStyle="color: blue"/&gt;
          &lt;/div&gt;
      &lt;/h:body&gt;
  &lt;/html&gt;
  </code></pre>
  
  <p>and modidfied managed bean <code>Hello.java</code></p>
  
  <pre><code>package javaeetutorial.hello1;
  
  
  import javax.enterprise.context.RequestScoped;
  import javax.inject.Named;
  
  @Named
  @RequestScoped
  public class Hello {
  
      private String name;
  
      public Hello() {
      }
      public Hello(String name){
          this.name=name;
      }
  
      public String getName() {
          return name;
      }
  
      public void setName(String user_name) {
          this.name = user_name;
      }
  }
  </code></pre>
  
  <p>There are <strong>two</strong> public constructors. Let we deploy this app on server and sent initial request, type the name in <code>inputText</code> and click <code>submit</code>. There is postback request after <code>submit</code> click. Hence, as written in tutroial, we have the following subphase of execute phase:</p>
  
  <ol>
  <li>The application view is built or restored.</li>
  <li>The request parameter values are applied.</li>
  <li>Conversions and validations are performed for component values.</li>
  <li>Managed beans are updated with component values.</li>
  <li>Application logic is invoked.</li>
  </ol>
  
  <p>At what phase instance of managed bean will be created? </p>
  
  <p>What constructor will be invoked for this instance creation and why? I dont understand how it can be observe from the <code>index.xhtml</code> code.</p>