Hi,
getSelectedIds only works on a view panel, not in a repeat control. In a repeat control you can bind a checkboxes to a viewScope variable.
The trick to it is that you first fill the viewScope variable with a blank array with the same number of items than the repeat control. You then bind a checkbox to an indexed item of that array.
Copy the following code to a new blank XPage to see a sample:
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">
<xp:this.afterPageLoad><![CDATA[#{javascript:var numEntries = getComponent("repeat1").getRowCount();
viewScope.put("selectedIds", new Array(numEntries) );}]]></xp:this.afterPageLoad>
<xp:repeat id="repeat1" rows="30" var="dataItem"
indexVar="dataIndex">
<xp:this.value><![CDATA[#{javascript:[
{name: "item 1", id: "id1"},
{name: "item 2", id: "id2"},
{name: "item 3", id: "id3"},
{name: "item 4", id: "id4"}
]}]]></xp:this.value>
<xp:checkBox id="checkBox1"
checkedValue="#{javascript:dataItem.id}" uncheckedValue="">
<xp:this.value><![CDATA[#{viewScope.selectedIds[dataIndex]}]]></xp:this.value>
</xp:checkBox>
<xp:text escape="true" id="cfName"
value="#{javascript:dataItem.name}">
</xp:text>
<xp:br></xp:br>
</xp:repeat>
<xp:br></xp:br>
<xp:button value="Show selected" id="button1">
<xp:eventHandler event="onclick" submit="true"
refreshMode="partial" refreshId="cfSelectedIds">
</xp:eventHandler></xp:button>
<xp:br></xp:br>
<xp:br></xp:br>You've selected: 
<xp:text escape="true" id="cfSelectedIds"
value="#{javascript:@Trim(viewScope.selectedIds)}">
</xp:text></xp:view>