Как вы заметили, традиционные пользовательские привязки WebSphere JNDI в настоящее время не работают в Liberty. Для дальнейшего использования в настоящее время мы работаем над тем, чтобы заставить их работать в Liberty, чтобы облегчить миграцию в будущем. (https://github.com/OpenLiberty/open-liberty/issues/7918)
Поиск, который вас смущает (InitialContext.lookup("com.abc.cde.Test");
) - это то, что мы назвали краткой связью по умолчанию для удаленного компонента, который является просто удаленным интерфейсом.
Правильно заменить их поисками в пространстве имен Java со следующими шаблонами:
Также, если вы запускаете сервер Liberty, мы распечатываем глобальную привязку java:: CNTR0167I:
Для справки: старые привязки по умолчанию, которые еще не работают:
- Локальная длинная форма:
ejblocal:<appname>/<modulename>.jar/<bean>#<interface>
- Локальная короткая форма:
ejblocal:<interface>
- Удаленная длинная форма:
ejb/<appname>/<modulename>.jar/<bean>#<interface>
- Удаленная короткая форма:
<interface>
Есть также несколько старых пользовательских форм привязок, которые можно указать через ab исходный файл, такой как ejb-jar-bnd.xml
, который в настоящее время будет иметь ту же стратегию миграции, но я не буду go во всех различных стилях, если вы не столкнетесь с ними. Безопасная ставка заключается в том, что если он ищет компонент с поиском, который не является пространством имен java, просто замените его на java: global.