title: Set field to a shared value
body: <p>I have a class that looks like this:</p>
  
  <pre><code>class Data {
      @JsonCreator
      public Data(@JsonProperty("string") String s, Widget w) {
           string = s;
           widget = w;
      }
      String string;
      Widget widget;
  }
  </code></pre>
  
  <p>I want to deserialize it from this from JSON like</p>
  
  <pre><code>{
      "string": "string value"
  }
  </code></pre>
  
  <p>When deserializing, I want to set <code>widget</code> to a shared instance. I have that instance when I create the object mapper, but I can not see how to tell Jackson to use this instance. </p>
  
  <p>I see <code>JsonDeserialize.getNullValue</code> and <code>getEmptyValue</code>, but those look like they are for handling</p>
  
  <pre><code>{
     "string": "string value", "widget": null 
  }
  </code></pre>
  
  <p>which is not the JSON that I have.</p>