Header Names on Grid contains random spaces

I use the following code to setup content for a Grid. In the UI, the actual header name "
CREATED_ BY_ NAME" is displayed as “CREATE D_ B Y_ NAME”. Note the spaces betweeb E & D and space between B & Y. I am using Valo theme and when debugged in firebug, the content sent by the server itself contains spaces.

IndexedContainer container = new IndexedContainer();
String headers = queryService.getHeaders(businessPath, objectName.toString());
for (String header : headers) {
container.addContainerProperty(header, String.class, "");
}
List<Object> dataObjects = queryService.getDataForObject(businessPath, objectName.toString());
for (int i = 0; i < dataObjects.size() ; i++) {
Object dataObject = dataObjects.get(i);
Item newItem = container.getItem(container.addItem());
for (int j = 0; j < headers.length ; j++) {
newItem.getItemProperty(headers[j]
).setValue(dataObject[j]
);
}
}
resultsGrid.removeAllColumns();
resultsGrid.setContainerDataSource(container);