Consegui resolver. Era apenas sobrescrever o metodo novoDetalhe padrão do framework. Não precisava de nada da classe ProBase e ProBaseVO
public void novoDetalhe(DetBox detBox) {
String[] nodos = detBox.getNomeDoObjeto().split("\\.");
String nomeDoAtributoDetalhe = nodos[nodos.length - 1];
if (nomeDoAtributoDetalhe.endsWith("Det")) {
nomeDoAtributoDetalhe = nomeDoAtributoDetalhe.substring(0, nomeDoAtributoDetalhe.length() - 3);
}
Object objetoPai = detBox.getObjectPai();
Method m = null;
Collection listDetAtual = null;
try {
m = Reflexao.recuperaMetodoGetDoObjeto(nomeDoAtributoDetalhe, objetoPai);
listDetAtual = (Collection) getHelperView().recuperaValorDoCampoDoObjetoAtual(m, objetoPai, getWindowAtual());
if (listDetAtual.size() < 5) {
super.novoDetalhe(detBox);
} else {
Messagebox.show("NUMERO MAXIMO DE DEPENDENTES JÁ CADASTRADOS", "Error", null, null, Messagebox.ERROR, null, null, null);
}
} catch (Exception e1) {
log.error("Erro ao criar um novo detalhe", e1);
}
}