Boa tarde… desviando um pouco do rumo que a discussão tomou…
Eu li os links que vocês passaram, de fato entendi a proposta do pattern… mas entre o “entender” e o “fazer” ainda existe uma grande lacuna.
Digamos que eu tenha um servlet, chamado “ServletController”, ele receberá todas as minhas requisições, TODAS.
Mas não vejo outra maneira de implementar isso sem encher o “ServletController” de if ou como mostra a apostila da caelum (reflexão).
Veja:
if(origemRequest == “material”) {
if(operacao == “listar”) {
…chama o que seria um Command ou Helper (pelo que eu entendi vendo a documentação), que faria o processamento, buscar as informações da base, etc…
}
} else if(origemRequest == “item”) {
if(operacao == “cadastrar”) {
… chama o Command/Helper… etc…
}
}
dispatch()…
Dessa forma eu estaria atendendo ao Front Controller?
Eu queria fazer algo sem precisar fazer incluir ou alterar os if/else, como eu vi na documentação:
// Use a helper object to gather parameter
// specific information.
RequestHelper helper = new RequestHelper(request);
Command cmdHelper= helper.getCommand();
// Command helper perform custom operation
page = cmdHelper.execute(request, response);
Só que não faço a mínima idéia de como ficaria o código.
O que é o RequestHelper e o Command no exemplo, são classes da própria API do Servlet?
São muitas dúvidas, eu sei…
Obrigado!