Enlace dinámico de columnas y filas de la tabla

Tengo problemas para que funcione el enlace dinámico de las columnas y filas de mi tabla.

Supongamos que tengo dos modelos, uno con la información de la columna de la tabla:

    var aColumnData = [
        {
            columnId : "col1"
        },
        {
            columnId : "col2"
        },
        {
            columnId : "col3"
        },
        {
            columnId : "col4"
        },
        {
            columnId : "col5"
        }
    ];

y uno con los datos:

var aData = [
    {
        col1 : "Row 1 col 1",
        col2 : "Row 1 col 2",
        col3 : "Row 1 col 3",
        col4 : "Row 1 col 4",
        col5 : "Row 1 col 5"
    },
    {
        col1 : "Row 2 col 1",
        col2 : "Row 2 col 2",
        col3 : "Row 2 col 3",
        col4 : "Row 2 col 4",
        col5 : "Row 2 col 5"
    }
];

Luego configuro el modelo:

    var oModel = new sap.ui.model.json.JSONModel();
    oModel.setData({
        columns : aColumnData,
        rows    : aData
    });

Luego creo mi tabla en la vista:

    var oTable = new sap.ui.table.Table();

    var oColumnTemplate = new sap.ui.table.Column({
        label : "{columnDesc}",
        template : new sap.ui.commons.TextView().bindProperty("text", "<this_should_be_dynamic_but_how?>")
    });

    oTable.bindColumns("/columns", oColumnTemplate);
    oTable.bindRows("/rows");

La parte que me molesta es el enlace a la columna actual en la plantilla TextView; Esto debería ser dinámico ("col1", "col2", etc.) y hecho sobre la marcha, para eso son los enlaces, supongo, pero no puedo hacer que funcione ...

Supongo que me falta algo simple y trivial, pero ahora estoy un poco perdido ... ¡Cualquier ayuda es muy apreciada!

==============================

EDITAR: Lo hice funcionar iterando a través de la matriz de columnas y usando el método addColumn ():

    jQuery.each(aColumnData, function(i, v) {
        oTable.addColumn(new sap.ui.table.Column({
            label : v.columnDesc, 
            template: new sap.ui.commons.TextView().bindProperty("text", v.columnId) 
        })); 
    });

... pero esperaba que hubiera un enfoque más limpio usando el enfoque bindColumns () / bindRows ():

Respuestas a la pregunta(1)

Su respuesta a la pregunta