Vamos por parte maurício.
1) A primeira dúvida tem na documentação, dê uma lida novamente.
http://www.neoframework.org/dist/documentacao/cap_primeira.html
2)
DAO:
Code:
public Atividade loadByDescription(String nome) {
return
query()
.joinFetch("atividade.pessoa pessoa")
.where("atividade.nome=?", nome)
.where("pessoa=?",XXXX.getEmpresaSelecionada())
.unique();
}
Service:
Code:
public Atividade loadByDescription(String nome) {
return atividadeDAO.loadByDescription(nome);
}
na sua action:
Code:
Atividade atividade = atividadeService.loadByDescription(nome);
sendo que atividadeService, e atividadeDAO são injetados pelo spring através de inversão de controle(ioc).
3) Seguinte.. A annotation @DefaultAction serve para marcar qual será o método que será chamado por padrão caso o parametro ACAO não for passaado..
Imagine que você tenha 2 métodos na sua classe..
uma chamada default, que tem a annotation e outro chamado teste.
Quando você chamar a url assim: /modulo/tela ele chama primeiro o método chamado default, porque você anotou ele. logo se você chamar a url assim: /modulo/tela?ACAO=teste ele irá chamar o método teste..
Entendeu?
4) Ter até que tem, mais esta convenção está dentro do NEO.
Teria que mecher em alguma coisa para disponibilizar.. podemos pensar nisso para as próximas versões.
Qualquer dúvida poste novamente.
Obrigado.