|
|
|
Supreme Being
      
участник
Last Login: 23.05.2007 20:20
Сообщ.: 662,
Visits: 5 795
|
|
Использую 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
<jndi-name>gft.LocalTheSlsb
<pass-by-reference>false
<bean-pool>
<steady-pool-size>0
<resize-quantity>1
<max-pool-size>1
<pool-idle-timeout-in-seconds>10
</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?
Спасибо!
|
|
|
|
|
Supreme Being
      
модератор
Last Login: 10.03.2008 23:02
Сообщ.: 2 077,
Visits: 21 402
|
|
| s glassfish ne rabotal no est takoe oshushenie chto ejb ne vidny iz wara. Eto Local ili Remote?
|
|
|
|
|
Supreme Being
      
модератор
Last Login: 10.03.2008 23:02
Сообщ.: 2 077,
Visits: 21 402
|
|
| escho odin vopros a chto uzhe he hado v descriptore ukazivat?:)
|
|
|
|
|
Supreme Being
      
модератор
Last Login: 10.03.2008 23:02
Сообщ.: 2 077,
Visits: 21 402
|
|
sorry vspilil:)
eto ne tot descriptor vi pokazali:)
Posmotrite zdes mozhet pomozhet:)
https://glassfish.dev.java.net/javaee5/ejb/EJB_FAQ.html
|
|
|
|
|
Supreme Being
      
участник
Last Login: 23.05.2007 20:20
Сообщ.: 662,
Visits: 5 795
|
|
Это local. FAQ почитал. Спасибо, mishgun.
Задница получается. Я ж ленивый. Я не хочу вписывать в каждый сервлет reference на все бины, которые он (сервлет) использует. Как удобно положить local interface в JNDI's global namespace, и брать его оттуда.
Я вот думаю, может как-нибудь можно автоматически их прописывать. В Java EE 5 какой-то injection появился. Может он позволит мне пребывать в лени и дальше...
|
|
|
|
|
Supreme Being
      
модератор
Last Login: 10.03.2008 23:02
Сообщ.: 2 077,
Visits: 21 402
|
|
Может малость поздновато но всё таки
http://www.caucho.com/resin-3.0/ejb3/tutorial/stateless/index.xtp
Там есть как делать injection
|
|
|
|