selectBooleanCheckbox como utilizar?

Não estou conseguindo fazer que o selectBooleanCheckbox fique “marcado” quando já foi gravado no banco e desmarcado quando não estiver na tabela de detalhe.
Estou listando em dataTable as empresas que um usuário terá acesso, nesse dataTable tem um selectBooleanCheckbox que está vinculado ao um atributo HashMap<Integer, Boolean> empresasSelecionadas da minha classe de controller, listar e gravar no banco já estou conseguindo, como fazer com que fique marcado os itens da lista que já foram salvos?

segue meu código:

cadastro_usuario.jsp

<t:dataTable id="listaEmpresas"   cellpadding="6" styleClass="dataTable" 
	rowClasses="linhaClara, linhaEscura" value="#{userController.listarEmpresas}" var="item">
	<t:column headerstyleClass="headerTable" >
			<f:facet name="header">
				<h:outputText value="Razão Social"></h:outputText>
			</f:facet>
					<h:outputText value="#{item.razao}"></h:outputText>
				</t:column>
				<t:column headerstyleClass="headerTable" >
					<f:facet name="header">
						<h:outputText value="CNPJ"></h:outputText>
					</f:facet>
					<h:outputText value="#{item.inscrMf}"></h:outputText>
				</t:column>
				<t:column headerstyleClass="headerTable">
		
<tr:selectBooleanCheckbox id="empresaSelecionada"  value{userController.empresasSelecionadas[item.codigo]}"/>
					
				</t:column>
			</t:dataTable>

Classe UsuariosController.java
aqui é o metodo que preenche o dataTable:

	public DataModel getListarEmpresas() {
		try {
			InterfaceDAO<Empresas> dao = new HibernateDAO<Empresas>(Empresas.class, FacesContextUtil.getRequestSession());
			empresas = new ListDataModel(dao.getBeansOrderByAsc("razao"));
		} catch (Exception e) {
			System.out.println(">>>>>>>>>>>>>Erro ao LISTAR EMPRESAS NO CADASTRO DO USUARIO: " + e.getMessage());
			e.printStackTrace();
		}
		return empresas;
	}

Metodo que verifica os que foram marcados e salva na sequência:

private HashMap<Integer, Boolean> empresasSelecionadas = new HashMap<Integer, Boolean>();

	public void selecionarEmpresa(ActionEvent evt)
	{
		try{
			
		if(getEmpresasSelecionadas() == null)
			setEmpresasSelecionadas(null);
		
		for(Integer i: empresasSelecionadas.keySet())
		{
			if(empresasSelecionadas.get(i))
			{
				UsuariosEmpresas usuariosEmpresas = new UsuariosEmpresas();
				usuariosEmpresas.setEmpresasCodigo(i);
				usuariosEmpresas.setUsuariosCodigo(getLoginBean().getUsuarioCodigo());
				InterfaceDAO<UsuariosEmpresas> usuariosEmpresasDAO = new HibernateDAO<UsuariosEmpresas>(UsuariosEmpresas.class, FacesContextUtil.getRequestSession());
				usuariosEmpresasDAO.salvar(usuariosEmpresas);
			}
		}
		
		}catch (Exception e) {
			System.out.println("UsuarioController.selecionarEmpresa: "+e);
		}
	}

claudiocgalvao, você conseguiu fazer com que os selectBooleanCheckbox viessem marcados? estou tentando e nada :?