EJB - это в основном программная модель для реализации вызываемой бизнес-логики. Ваш код выполняется в контейнере, который заботится об управлении, кластеризации, транзакциях и безопасности. Ваш компонент может быть вызван множеством различных механизмов, включая локальные вызовы Java, RMI / IIOP для удаленного вызова, а также веб-службы, поэтому да, ваш EJB действительно может иметь WSDL и может вызываться из других не-Java сред.
Если вы начнете вместо этого с точки зрения наличия WSDL, который, вероятно, будет определять SOAP / HTTP, то вы можете свободно реализовать это во многих различных технологиях и, разумеется, вызывать его через указанный протокол, который очень разные клиенты могут использовать. Большой вопрос в том, насколько легко вы можете справиться с этими проблемами качества реализации - выбранная вами среда реализации может оказать вам большую помощь или многое оставить.
Резюме: вы на самом деле не сравниваете подобное с похожим. Веб-сервисы очень важны для интерфейса, EJB - для реализации.