En primer lugar, debe tener claro qué es lo que está compartiendo. Debe diferenciar entre el servicio y una biblioteca. La biblioteca le permite compartir la funcionalidad común, esto es lo que logra cuando utiliza la biblioteca log4j, por ejemplo. En ese caso, configura log4j en cada proyecto que lo está usando. Por otro lado, podría tener el servicio de registro centralizado que tiene su propia configuración de registro y le permite administrar esto en un solo lugar. En este caso, debe compartir el servicio.
Puede compartir la biblioteca colocando el recipiente dentro de cada guerra o dentro de la oreja. Puede compartir el servicio siendo el cliente de servicio. Entonces, sus servicios web pueden usar otro servicio. En ese caso, un servicio web es un cliente de otro, logrando la composición del servicio (un patrón común en el desarrollo empresarial)
Si tanto el servicio cliente como el servicio residen en el mismo oído, entonces puede evitar algunos gastos indirectos llamando al servicio "directamente", por ejemplo, utilizando la función de contexto principal de Spring: http://springtips.blogspot.com/2007/06/using-shared-parent-application-context.html , pero aconsejaría que no se acople el servicio porque perderá diferentes beneficios que tener servicio en primer lugar proporciona la gobernanza, la capacidad de gestión, etc.
Para dos guerras comunicarse sin servicios web que son un requisito explícito parece un poco extraño, si se puede decir, ¿por qué tiene este requisito? – cynicalman
cínico: WS no está descartado: el operador pidió otras alternativas. – BraveSirFoobar
I segundo @cynicalman - ¿por qué necesita la intercomunicación? – johnstok