title: Wicket table with variable number of columns
body: <p>I've been creating tables by adding a <code>ListView</code> (providing it with my data as a <code>List&lt;MyObject&gt;</code>) to the page, and assigning the corresponding ids to each column in the html file.</p>
  
  <p>However now I have a situation where instead of a simple <code>List&lt;MyObject&gt;</code> I have <code>List&lt;Map&lt;String,MyObject&gt;&gt;</code>. I also get a list with all the possible keys of the nested map (<code>List&lt;String&gt;</code>). Now I need to create a table where each value of the <code>Map</code> should be in the column with the name of the key pointing to that value.</p>
  
  <p>Let's say I have the following data:</p>
  
  <pre><code>keys = ['a', 'b']
  
  data = [ { 'a' = 1, 'b' = 2 },
           { 'a' = 3, 'b' = 4 },
           { 'a' = 5, 'b' = 6}] 
  </code></pre>
  
  <p>I would like to create the table:</p>
  
  <pre><code>&lt;table&gt;
      &lt;tr&gt;
          &lt;th&gt;a&lt;/th&gt;
          &lt;th&gt;b&lt;/th&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;1&lt;/td&gt;
          &lt;td&gt;2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;3&lt;/td&gt;
          &lt;td&gt;4&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;5&lt;/td&gt;
          &lt;td&gt;6&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/table&gt;
  </code></pre>
  
  <p>Knowing that the names and number of keys in the nested Map can change, what is the best way to implement this in wicket?</p>