Existe o que chamamos de HTTP Methods que são os métodos (tipos de envio) do protocolo HTTP… Ou seja: GET, POST, PUT, DELETE e outros…
Existem os methods do java, que são métodos normais. Esse method que você está me mostrando é do interceptor, certo? Esse cara é o método que você está indo acessar com o interceptor. NADA a ver com os http methods…
Como eu disse: “Debuga e olha os valores dentro do request” ou seja: olhe o que está vindo dentro do HttpServletRequest, pois você quer pegar o http method usado nessa requisição. Algo me diz que está aqui…
Segundo, precisa aprender a debugar e a fazer log da sua aplicação, o tempo de desenvolvimento diminui MUITO!
-EDIT-
Terceiro, não adianta você me postar essa estrutura dos atributos. É para você olhar isso ai e descobrir o que fazer.
Cara, desculpe não entrar na conversa anteriormente, vi que você já fez bastante coisa.
Como um amigo aqui já disse não tenho dúvidas que seu sistema poderá ficar com as requisições mais lentas e você terá muita dificuldade em manter isso posteriormente.
O que você pode e deveria fazer é delegar essa funcionalidade para um sistema externo e lá criar seus relatórios bases exclusivas e acessos restritos.
Você poderia fazer isso utilizando um ESB e aplicar a Event Driven, ou seja, fazer com que seus interceptors enviarem de forma assincrona para ESB suas mensagens de log e ele se encarregará do resto, apartir dai você abre um leque gigante de soluções e tratamentos desta informação e não somente como LOG.
Outra coisa, da maneira como você está fazendo imagine que se algo acontecer com sua base ou essa transação de log falhar, toda sua requisição falhará e acredito que nenhum sistema deveria falha por causa de um log.
Isso tudo depende do volume de requisições e os servidores que serão utilizados na solução.
O que eu realmente não gosto é deixar o método dependente de uma operação que não está diretamente relacionada ao negócio. E como eu disse em caso de falha de gravação desse log, sua operação para.
Quanto a documentação você pode verificar o ESB da Mule soft, tem uma versão community. Todos os ESB seguem o mesmo padrão pois são desenvolvidos em cima dos patterns de integração, procure no google sobre o tema você vai encontrar muita coisa.
Procure também sobre a arquitetura SOA, todas essas ideias vem dela. Não esqueça SOA é o conceito e não ferramenta.
Vou estudar um pouco. To ligado, em SOA. Terminando esse projeto, vou ter tempo de estudar mais esses conceitos.
Onde eu trabalhava(IBTI) eles estão desenvolvendo, utilizando SOA.
Muito interessante!
Eu dei uma lida, sobre o ESB e o Event Driver.
E o que eu entendi foi.
Eu devo criar uma OUTRA APLICAÇÃO para tratar os logs.
E passar para ela, cuidar dessa parte.
Seria isso?
Se você criar essa aplicação com os moldes de log de mercado, você pode criar pequenos robos para análisar os logs e já dar solução/decisão sobre o que fazer com eles independente do seu sistema central, assim você pode usar essa aplicação de log para outros sistemas de sua empresa e ter isso centralizado facilitando a auditoria de todos eles.
Se vc for para uma solução assim, provavelmente vai cair em JMS (que é uma solução muito boa). Se vc estiver usando um servidor JEE, a ideia é boa, mas se estiver usando um container leve (tomcat, jetty… etc…), uma solução com ESB vai deixar tua aplicação inchada, desnecessariamente.
Se vc vai fazer isso como um experimento para aprendizado, ESB é uma boa.
Mas se pensar no problema, primeiramente, sem focar em tecnologia, vc falou que a informação seria usada uma vez por mês, e não no momento. Então vc precisa dela no teu banco de dados de produção? vc precisa dela num banco de dados?
Eu fiz uma solução para um problema semelhante ao teu… usando simplesmente uma thread separada da aplicação, que controlava a escrita em um arquivo txt. De madrugada quando o acesso diminuía… tinha um script que lia e extraia desse arquivo txt e jogado para um banco de dados leve (não o mesmo da produção), no caso o H2 (um ótimo banco de dados), e em cima desse banco eu podia fazer qualquer consulta.
Esse meu arquivo de log, no fim do dia, era comum ficar em torno de 200Mb.
E segundo testes de carga que fiz, essa solução não alterou praticamente nada a performance da aplicação.
Uma solução simples e eficiente.