Algo como fiação EJB na primavera para não EJB
-
20-09-2019 - |
Pergunta
Notei recentemente que a primavera pode conectar meus EJBs para mim se eu anotar o EJB com @Interceptores (SpringBeanaUtowiringIntercept.Class). Eu nunca fiz isso, então não sei os detalhes.
Eu estava me perguntando, existe uma maneira de fazer isso funcionar com outros tipos de feijão, por exemplo, @WebService Annotated também.
No momento nas minhas classes de serviço da web (porque o servidor de aplicativos as gerencia), tenho que carregar as dependências do Beanfactory e, portanto, preferiria que eles sejam executados automaticamente.
Sei que poderia usar a anotação @Configurable, mas não estou particularmente interessado em especificar e agente na VM.
Isso é possível?
Solução
Mais uma vez, a primavera pensou nesse caso de uso e atendeu!
O problema é que @WebService não é um primavera anotação, é um JAX-WS Anotação e, portanto, as classes anotadas com @WebService a serem expostas como serviços da Web não são gerenciadas na primavera, mas seu ciclo de vida é gerenciado pelo JAX-WS.
A maneira de lidar com este caso é fazer com que o Jax -WS gerenciou o feijão org.springframework.web.context.support.springbeanautowiringsupport - Isso permitirá a Annotação @Autowire, por exemplo, trabalhar neste feijão. Vejo aqui Para maiores informações
Outras dicas
Sim claro. Há @WebService, @Repository, @Controller, @service, @endPoint e outras anotações na primavera. Aqui está um exemplo.