Enterprise Service Bus

Pessoal, gostaria da sugestão de vocês.

Tenho que implementar um ESB. Mas não sei por onde começar, visto que não tenho conhecimentos sólidos das tecnologias.
Meu ESB constituirá de um Listener, para receber as requisições do cliente. Um core, para verificar existência de serviços e mapealos. Um transform, onde será convertido JSON/SOAP; SOAP/JSON, JSON/RNI e RNI/JSON. por fim, um mediador que solicitara os serviços e receberá o retorno deles.

Uma aplicação solicitará um serviço ao ESB em JSON, esse por sua vez, verificará a existência do serviço no mapeamento. Caso exista, transformará para o protocolo correto e passa para o mediador solicitar o serviço.

Para criar o JSON, preciso de uma linguagem que o defina, para que o cliente possa analisar e utilizar. No caso do JSON, a linguagem é a WADL?
O Listener, como posso implementar? tenho que fazer uso de webservices?

Enfim, alguém poderia me ajudar como poderia fazer isso? Quais API poderia utilizar, quais as melhores práticas nesse tipo de aplicação?

Qualquer sugestão que possa levar a solução, eu agradeço.
Qualquer detalhe ou “descrição inadequada do problema” só falar que tento melhorar.

Bom, eu cheguei a ver pouquíssima coisa de ESB, mas cheguei a começar a montar um projeto com o MuleESB.
Vc pode usar WebServices, JSON, RESTFul, pois o MuleESB dispõe de mecanismos de transformação de dados.

Na época era para se implementar um serviço REST, que chamava outro serviço REST plugado ao meu barramento.

MuleESB para mim parecia uma ótima ferramenta, além de ser free.