Я большой поклонник принципа KISS (Keep It Simple Stupid). Должна существовать веская причина для разделения приложения между JVM и создания уровня интерфейса WS. Возможные причины включают необходимость масштабировать уровень представления в отличие от бизнес-уровня. Различия в настройке JVM, такие как другой алгоритм сборки мусора. Или необходимость в DMZ.
Если убедительной причины не существует, разделение добавляет ненужную сложность, которая, скорее всего, вызовет головную боль от разработки до операций.
А необходимость предоставления бизнес-логики другим приложениям не является убедительной причиной для разделения уровней между JVM. Бизнес-логику по-прежнему можно предоставлять через WS для внешних приложений, в то время как уровень презентации физически находится в той же JVM и напрямую ссылается на бизнес-уровень через реализацию бизнес-службы POJO. Хотя вокруг реализации POJO будет оболочка веб-службы, представляющая бизнес-службы как веб-службы.