Hello, everybody! To Sam: Have you figured it out? The cause could be the beans are in different jars and you use ejb-local-ref. It should work in case of remote interfaces and: ejb-ref in ejb-jar.xml and jboss.xml or place your beans in the same jar file and use ejb-local-ref.
To all: Mastering EJB II says about ejb-link this: "... The ejb-name of the bean we're referring to. Note: You can also refer to beans in different jar file, by using a syntax such as ../products/product.jar#ProductEJB." How should it be applied to JBoss? If there is declaration of ejb-ref in ejb-jar.xml and neither of ejb-ref in jboss.xml and ejb-link in ejb-jar.xml is specified, jboss complains that either ejb-ref in jboss.xml or ejb-link in ejb-jar.xml must be specified. I've made to jar files each containing one SLSB with remote interfaces. ReferencingBean references ReferencedBean and calls its method. Declaring ejb-ref in ejb-jar.xml and jboss.xml it works. But when I tried to use ejb-link in ejb-jar.xml instead of ejb-ref in jboss.xml it said me this: 2002-03-11 11:17:10,207 DEBUG [org.jboss.ejb.StatelessSessionContainer] Binding an EJBReference ejb/Referenced 2002-03-11 11:17:10,207 DEBUG [org.jboss.ejb.StatelessSessionContainer] Binding ejb/Referenced to internal JNDI source: referenced-ejb.jar#ReferencedBean 2002-03-11 11:17:10,207 ERROR [org.jboss.ejb.StatelessSessionContainer] Exception in service lifecyle operation: create org.jboss.deployment.DeploymentException: Bean referenced-ejb.jar#ReferencedBean not found within this application. I guess I reference referenced-ejb.jar incorrectly. Could someone shed a light? Thanks in advance! alex > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED]]On Behalf Of > Sam De Backer > Sent: Friday, March 08, 2002 5:10 PM > To: '[EMAIL PROTECTED]' > Cc: '[EMAIL PROTECTED]' > Subject: [JBoss-user] ejb-local-ref from an MDB to an Entity > in the same EAR, but diffe rent ejb jars (jboss 3.0.0beta2) > > > I would like to call an Entity bean from within an MDB and added an > <ejb-local-ref> in my MDB's ejb-jar.xml > I also added an <ejb-link> inside that <ejb-local-ref> with > the name of my > Entity bean. Everything packed up in an EAR. > When deploying to JBoss i get an > org.jboss.deployment.DeploymentException > (Bean Workplace not found within this application.) > > Isn't this supported in JBoss? Or am I overlooking things? > > Sam. > > > The ear struct: > ------------------------------------------ > lab04app.ear > -> META-INF > -> application.xml (containing <modules> lab03.jar and lab04.jar) > -> lab03.jar > -> lab04.jar > ------------------------------------------- > lab03.jar > -> META-INF > -> ejb-jar.xml > -> jboss.xml > -> lab03 > -> ... (classes of lab03 package, including the Workplace > Entity bean) > -------------------------------------------- > lab04.jar > -> META-INF > -> ejb-jar.xml (containing <ejb-local-ref>+<ejb-link> to Workplace) > -> jboss.xml > -> lab04 > -> ... (classes of lab04 package calling Workplace bean > through ref) > -------------------------------------------- > > the log: > ... > 2002-03-08 15:49:41,090 DEBUG > [org.jboss.deployment.MainDeployer] Done with > create step of deploying lab03.jar > 2002-03-08 15:49:41,090 DEBUG > [org.jboss.deployment.MainDeployer] create > step for deployment > njar:file:/C:/experimental/jboss-3.0.0beta2/server/mysql/tmp/d eploy/C/experi > mental/jboss-3.0.0beta2/server/mysql/deploy/lab04app.ear/70.la b04app.ear^/la > b04.jar > 2002-03-08 15:49:41,220 DEBUG [org.jboss.ejb.EJBDeployer] Verifying > njar:file:/C:/experimental/jboss-3.0.0beta2/server/mysql/tmp/d eploy/C/experi > mental/jboss-3.0.0beta2/server/mysql/deploy/lab04app.ear/70.la b04app.ear^/la > b04.jar > 2002-03-08 15:49:41,230 DEBUG [org.jboss.ejb.EJBDeployer] Deploying: > njar:file:/C:/experimental/jboss-3.0.0beta2/server/mysql/tmp/d eploy/C/experi > mental/jboss-3.0.0beta2/server/mysql/deploy/lab04app.ear/70.la b04app.ear^/la > b04.jar > 2002-03-08 15:49:41,230 INFO [org.jboss.ejb.EjbModule] Creating > 2002-03-08 15:49:41,230 DEBUG [org.jboss.ejb.EjbModule] > Application.start(), > begin > 2002-03-08 15:49:41,230 DEBUG [org.jboss.management.j2ee.EjbModule] > EjbModule.create(), server name: J2EEServer=Single > 2002-03-08 15:49:41,240 DEBUG > [org.jboss.management.j2ee.J2EEDeployedObject] > File: > njar:file:/C:/experimental/jboss-3.0.0beta2/server/mysql/tmp/d eploy/C/experi > mental/jboss-3.0.0beta2/server/mysql/deploy/lab04app.ear/70.la b04app.ear^/la > b04.jar, descriptor: META-INF/ejb-jar.xml > 2002-03-08 15:49:41,240 DEBUG > [org.jboss.management.j2ee.EjbModule] Create > EJB-Module, name: lab04.jar, application: > jboss.management.single:J2EEDomain=Manager,J2EEServer=Single,n > ame=lab04app.e > ar,type=J2EEApplication, dd: <?xml version="1.0"?> > <!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Enterprise > JavaBeans 2.0//EN" "http://java.sun.com/dtd/ejb-jar_2_0.dtd" > > <ejb-jar> > <enterprise-beans> > <message-driven> > <ejb-name>WorkplaceCreator</ejb-name> > <ejb-class>lab04.WorkplaceCreatorBean</ejb-class> > <transaction-type>Container</transaction-type> > <message-driven-destination> > <destination-type>javax.jms.Queue</destination-type> > </message-driven-destination> > <ejb-local-ref> > <ejb-ref-name>ejb/local/Workplace</ejb-ref-name> > <ejb-ref-type>Entity</ejb-ref-type> > <local-home>lab03.WorkplaceLocalHome</local-home> > <local>lab03.WorkplaceLocal</local> > <ejb-link>Workplace</ejb-link> > </ejb-local-ref> > </message-driven> > </enterprise-beans> > </ejb-jar> > > 2002-03-08 15:49:41,240 DEBUG > [org.jboss.management.j2ee.J2EEManagedObject] > getObjectName(), name: > jboss.management.single:J2EEDomain=Manager,name=lab04.jar,J2EE > Server=Single, > J2EEApplication=lab04app.ear,type=EjbModule > 2002-03-08 15:49:41,240 DEBUG > [org.jboss.management.j2ee.J2EEManagedObject] > postRegister(), parent: > jboss.management.single:J2EEDomain=Manager,J2EEServer=Single,n > ame=lab04app.e > ar,type=J2EEApplication > 2002-03-08 15:49:41,240 INFO [org.jboss.ejb.EjbModule] Deploying > WorkplaceCreator > 2002-03-08 15:49:41,261 DEBUG > [org.jboss.ejb.MessageDrivenContainer] Begin > java:comp/env for EJB: WorkplaceCreator > 2002-03-08 15:49:41,261 DEBUG > [org.jboss.ejb.MessageDrivenContainer] TCL: > java.net.URLClassLoader@72be27 > 2002-03-08 15:49:41,261 DEBUG > [org.jboss.ejb.MessageDrivenContainer] Binding > an EJBLocalReference ejb/local/Workplace > 2002-03-08 15:49:41,261 DEBUG > [org.jboss.ejb.MessageDrivenContainer] Binding > ejb/local/Workplace to bean source: Workplace > 2002-03-08 15:49:41,261 ERROR > [org.jboss.ejb.MessageDrivenContainer] Serious > error in init: > org.jboss.deployment.DeploymentException: Bean Workplace not > found within > this application. > at org.jboss.ejb.Container.setupEnvironment(Container.java:982) > at org.jboss.ejb.Container.create(Container.java:497) > at > org.jboss.ejb.MessageDrivenContainer.create(MessageDrivenConta iner.java:159) > at org.jboss.ejb.Container.invoke(Container.java:783) > at > com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl. > java:1555) > at > com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl. > java:1523) > at > org.jboss.system.ServiceController$ServiceProxy.invoke(Service Controller.jav > a:779) > at $Proxy0.create(Unknown Source) > at > org.jboss.system.ServiceController.create(ServiceController.java:277) > at java.lang.reflect.Method.invoke(Native Method) > at > com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl. > java:1628) > at > com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl. > java:1523) > at org.jboss.util.jmx.MBeanProxy.invoke(MBeanProxy.java:78) > at $Proxy3.create(Unknown Source) > at org.jboss.ejb.EjbModule.createService(EjbModule.java:297) > at > org.jboss.system.ServiceMBeanSupport.create(ServiceMBeanSuppor > t.java:134) > at java.lang.reflect.Method.invoke(Native Method) > at > com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl. > java:1628) > at > com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl. > java:1523) > at > org.jboss.system.ServiceController$ServiceProxy.invoke(Service Controller.jav > a:779) > at $Proxy0.create(Unknown Source) > at > org.jboss.system.ServiceController.create(ServiceController.java:277) > at java.lang.reflect.Method.invoke(Native Method) > at > com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl. > java:1628) > at > com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl. > java:1523) > at org.jboss.util.jmx.MBeanProxy.invoke(MBeanProxy.java:78) > at $Proxy3.create(Unknown Source) > at org.jboss.ejb.EJBDeployer.create(EJBDeployer.java:397) > at > org.jboss.deployment.MainDeployer.create(MainDeployer.java:432) > at > org.jboss.deployment.MainDeployer.create(MainDeployer.java:426) > at > org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:344) > at > org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:325) > at java.lang.reflect.Method.invoke(Native Method) > at > com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl. > java:1628) > at > com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl. > java:1523) > at org.jboss.util.jmx.MBeanProxy.invoke(MBeanProxy.java:78) > at $Proxy2.deploy(Unknown Source) > at > org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDe > ploymentScanne > r.java:295) > at > org.jboss.deployment.scanner.URLDeploymentScanner.scanDirector > y(URLDeploymen > tScanner.java:466) > at > org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDepl > oymentScanner. > java:356) > at > org.jboss.deployment.scanner.AbstractDeploymentScanner$Scanner > Thread.loop(Ab > stractDeploymentScanner.java:190) > at > org.jboss.deployment.scanner.AbstractDeploymentScanner$Scanner > Thread.run(Abs > tractDeploymentScanner.java:179) > 2002-03-08 15:49:41,271 ERROR [org.jboss.ejb.MessageDrivenContainer] > Exception in service lifecyle operation: create > > _______________________________________________ > JBoss-user mailing list > [EMAIL PROTECTED] > https://lists.sourceforge.net/lists/listinfo/jboss-user _______________________________________________ JBoss-user mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-user
