JBoss 7 jndi имена на пакета на ejb във война

Някой знае ли как да модифицира компонента "модул" на глобалните jndi имена за ejb, разгърнати във война под JBoss 7.2 (EAP 6.1)?

Според спецификацията името на модула е същото като името на основната война, което в моя случай включва номер на версия.

Ето спецификацията от Oracle:

java:global/[<application-name>]/<module-name>/<bean-name>

В моя случай се получава:

java:/global/mywar-1.0/MyService

Това, което бих искал е:

java:/global/mywar/MyService

Знам, че мога да променя името на войната преди внедряването, но бих предпочел изрично да наименувам модула чрез конфигурационен файл. Опитах се да използвам името на модула ejb-jar.xml, но нямаше ефект.


person Bill Pfeiffer    schedule 01.05.2014    source източник


Отговори (2)


Решено: В крайна сметка трябваше да включа/актуализирам xsd/namespace за по-късната спецификация 3.0 за web.xml. Това позволява да се укаже елемент "module-name" в web.xml, който ще се използва при създаване на името на jndi. Тестван и работещ на JBoss EAP 6.1.

Ето заглавката web.xml и елементът име на модула:

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xmlns="http://java.sun.com/xml/ns/javaee"
     xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
                         http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
     id="WebApp_ID" version="3.0">

     <module-name>mywar</module-name>
person Bill Pfeiffer    schedule 03.05.2014

Това, което трябва да направите, е да създадете jboss-web.xml и да го поставите в META-INF точно до web.xml. Поставете това вътре в него:

<jboss-web>
    <context-root>mywar</context-root>
</jboss-web>

наздраве!

Ако това беше пакетирано в EAR, бихте използвали application.xml, за да направите това.

person jgitter    schedule 02.05.2014
comment
Благодаря за отговора Всъщност вече съм настроил контекстния корен и той работи според очакванията (задава контекстния корен на URL адреса на приложението). Опитвах се да коригирам jndi имената, присвоени на пакетираните във войната ejb. Когато зададох контекстния корен, имената на jndi все още съдържаха основното име за война (включена версия). - person Bill Pfeiffer; 04.05.2014
comment
Разбрах - съжалявам, че не можах да помогна повече. - person jgitter; 05.05.2014