title: XML mapping with Jackson no String-argument constructor/factory method to deserialize from String value ('Belgian Waffles')
body: <p>for learning purposes I am trying to map xml file to pojo. My xml looks like this:</p>
  
  <pre><code>&lt;breakfast_menu&gt;
     &lt;food&gt;
       &lt;name&gt;Belgian Waffles&lt;/name&gt;
       &lt;price&gt;$5.95&lt;/price&gt;
       &lt;description&gt;
          Two of our famous Belgian Waffles with plenty of real maple syrup
       &lt;/description&gt;
       &lt;calories&gt;650&lt;/calories&gt;
     &lt;/food&gt;
     &lt;food&gt;
       &lt;name&gt;Strawberry Belgian Waffles&lt;/name&gt;
       &lt;price&gt;$7.95&lt;/price&gt;
       &lt;description&gt;
          Light Belgian waffles covered with strawberries and whipped cream
       &lt;/description&gt;
       &lt;calories&gt;900&lt;/calories&gt;
     &lt;/food&gt;
  &lt;/breakfast_menu&gt;
  </code></pre>
  
  <p>Breakfes entity class</p>
  
  <pre><code>@JacksonXmlRootElement(localName = "breakfast_menu")
  public class BreakfestFood {
  
      private List&lt;Food&gt; food;
  
      public BreakfestFood() {}
  
      public List&lt;Food&gt; getFood() {
          return food;
      }
  
      public void setFood(List&lt;Food&gt; food) {
          this.food = food;
      }
  
  }
  </code></pre>
  
  <p>Food entity class</p>
  
  <pre><code>@JacksonXmlRootElement(localName = "food")
  public class Food {
  
      @JacksonXmlProperty(localName = "name")
      private String name;
      @JacksonXmlProperty
      private double price;
      @JacksonXmlProperty
      private String description;
      @JacksonXmlProperty
      private int calories;
  </code></pre>
  
  <p>And main function:</p>
  
  <pre><code>public static void main(String[] args) {
      File file = new File("X:\\food.xml");
      XmlMapper xmlMapper = new XmlMapper();
  
      try {
          String xml = inputStreamToString(new FileInputStream(file));
          BreakfestFood value = xmlMapper.readValue(xml, BreakfestFood.class);
      } catch (FileNotFoundException e) {
          e.printStackTrace();
      } catch (IOException e) {
          e.printStackTrace();
      }
  }
  </code></pre>
  
  <p>When I am running this code I am getting stack like this: 
  String-argument constructor/factory method to deserialize from String value ('Belgian Waffles'). So it seems it cannot map name value of the Food. Anyone has idea what is wrong?</p>