Я переношу приложение из Jboss 3 в Jboss 7. Я использую jboss-as-7.1.1.Final. Приложение представляет собой .ear с несколькими EJB .jars и .war, содержащими все сервлеты и jsp-страницы. EJB - это как сущности-компоненты CMP, так и сессионные бобы и интенсивно используют Xdoclet. Я нахожусь в точке, где приложение строит и развертывает ОК, но EJB не могут быть созданы правильно из-за того, что явно связано с JNDI. Я знаю, что Jboss 7 имеет изменения в том, как использовать JNDI, но документация о том, как применять эти изменения к EJB 2 xdoclet, разрешена для несуществующих. Предположим, что у меня есть код сеанса боб UserManagerEJB.java со следующим XDocletИзменение EJB 2 Xdoclet JNDI для Jboss AS 7
* @ejb.bean
* name="UserManager"
* jndi-name="ejb/UserManager"
* type="Stateless"
* view-type="remote"
* transaction-type="Container"
UserManagerEJB ссылается на объект боб пользователя с folowing XDoclet в
* @ejb.ejb-ref
* ejb-name="User"
* view-type="local"
* ref-name="ejb/UserLocal"
и сущность кода боб UserEJB.java имеет феллинг XDoclet декларация
* @ejb.bean
* name="User"
* local-jndi-name="ejb/UserLocal"
* primkey-field="userId"
* type="CMP"
* view-type="local"
Как правильно Jboss AS 7 способа указать имя-JNDI, локальный_файл JNDI-имя, а имя-реф?
Какое имя JNDI используется в файле .war/WEB-INF/web.xml веб-приложения как ejb-ref-name?
Раньше ejb/EJBNAME
только что сработал, но теперь это только что дает мне исключение NamingException. Слепо изменив все имена JNDI на что-то вроде java:app/myuser/User!com.myco.module.myuser.ejb.entity.UserLocal
просто не работает, и я начинаю спускаться с рутины изменения вещей, которые, честно говоря, я не слишком хорошо понимаю. Изменение схемы именования JNDI, похоже, является таким огромным скачком, кроме того, к чему я привык.
Если кто-то может предложить короткое краткое объяснение новой схемы именования JNDI, которая была бы очень оценена!