I've never used that app server, and I don't recall any messages from users about this. I think the first thing you need to do is figure out a sensible jndi-pattern. The one it is using is for JBoss, and it's obviously not suitable.
finally i could make it run...
i found this:
if this is the only solution then its a bit annoying :(
i placed this in the ejb-jar.xml. enterprise-beans must be the first thing in the file.
<enterprise-beans> <session> <ejb-name>TestAction</ejb-name> <ejb-class>test.TestAction</ejb-class> <ejb-local-ref> <ejb-ref-name>Test-ejb/TestBean/local</ejb-ref-name> <ejb-ref-type>Session</ejb-ref-type> <local>test.TestLocal</local> <ejb-link>TestBean</ejb-link> </ejb-local-ref> </session> </enterprise-beans>
test is the package
TestAction is the actionbean behind the webpage.
TestBean is the bean that shall be created by seam.
as you can see i could leave the jndi-pattern untouched. i tried to use
so it would have made redundant <ejb-local-ref> entrys for the same ejb in different actionbeans unnecessary but it didnt work. perhaps somebody has a better solution but for the moment it works.
Is there really no global JNDI name you can bind to?
There is really none. I have yelled at the GlassFish team about this already, but they insist there does not need to be any default JNDI binding for a local interface of a session bean. This is of course absurd, and forces users to write this crappy XML for *every* session bean in their application, but I'm not exactly sure why we JBoss guys should waste more time helping the GlassFish guys improve their appserver ;-)
By the way, you should be looking at the examples/glassfish directory for an example of Seam booking on GlassFish.
i have, but injection with create=true is never used there. perhaps you could add this.
be shure we'll change to jboss appserver as soon as it supports ejb3 specs completely ;)