Не могу найти (lookup) бин в JNDI из сервлета
От: danissimo Россия  
Дата: 22.05.07 18:28
Оценка:
Использую glassfish.

Диплою EAR, содержащий ejb.jar с единственным бином и web.war с единственной JSP в корне того самого EAR'а.

Вот кусочек кода в JSP:

LocalTheSlsbHome home = (LocalTheSlsbHome)new InitialContext()
        .lookup(LocalTheSlsb.class.getName());
LocalTheSlsb slsb = home.create();
slsb.log(msg);


А вот содержимое sun-ejb-jar.xml:

<sun-ejb-jar>
    <enterprise-beans>
        <ejb>
            <ejb-name>TheSlsbEJB</ejb-name>
            <jndi-name>gft.LocalTheSlsb</jndi-name>
            <pass-by-reference>false</pass-by-reference>
            <bean-pool>
                <steady-pool-size>0</steady-pool-size>
                <resize-quantity>1</resize-quantity>
                <max-pool-size>1</max-pool-size>
                <pool-idle-timeout-in-seconds>10</pool-idle-timeout-in-seconds>
            </bean-pool>
        </ejb>
    </enterprise-beans>
</sun-ejb-jar>


Приложение успешно диплоится, но пытаясь запустить JSP, получаю такой stack trace:

[#|2007-05-22T18:52:50.989+0400|SEVERE|sun-appserver-pe9.0|javax.enterprise.system.container.web|_ThreadID=15;_ThreadName=httpWorkerThread-8080-1;_RequestID=d9128647-95e4-49a4-9451-00e52ad550de;|StandardWrapperValve[jsp]: Servlet.service() for servlet jsp threw exception
javax.naming.NameNotFoundException: gft.LocalTheSlsb not found
    at com.sun.enterprise.naming.TransientContext.doLookup(TransientContext.java:203)
    [ the rest is skipped... ]
|#]


Кто-нибудь знает, что не так? Кто не прав: я или glassfish?

Спасибо!
Данис Тазеев
Re: Не могу найти (lookup) бин в JNDI из сервлета
От: aefimov Россия
Дата: 22.05.07 20:54
Оценка:
Здравствуйте, danissimo, Вы писали:

D>Вот кусочек кода в JSP:


D>LocalTheSlsbHome home = (LocalTheSlsbHome)new InitialContext()
D>        .lookup(LocalTheSlsb.class.getName());


         .lookup("gft/LocalTheSlsb");


D>А вот содержимое sun-ejb-jar.xml:


            <jndi-name>gft/LocalTheSlsb</jndi-name>


А так?
Re[2]: Не могу найти (lookup) бин в JNDI из сервлета
От: danissimo Россия  
Дата: 23.05.07 10:55
Оценка:
Неа =(
Данис Тазеев
Re[3]: Не могу найти (lookup) бин в JNDI из сервлета
От: Аноним  
Дата: 31.05.07 19:49
Оценка: +1
Здравствуйте, danissimo, Вы писали:

D>Неа =(


В web.xml объявить референс на ваш EJB. Замапить имя референса на реальное имя из sun-ejb-jar.xml
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.