I wrote a test EJb3 ear project to run on Jboss 6.
I can't understand why <jee:xxxxxx-slsb> not work, could someone tell my how to resolve this problem?
My application-context.xml is
and it's my controller codeCode:<beans xmlns="http://www.springframework.org/schema/beans" ...> <jee:local-slsb id="storeLocal" jndi-name="StoreBean/local" business-interface="ejb3.bean.StoreLocal" resource-ref="false" lookup-home-on-startup="true"/> <jee:remote-slsb id="sotreRemote" jndi-name="StoreBean/remote" business-interface="ejb3.bean.StoreRemote" resource-ref="false" lookup-home-on-startup="true"> <jee:environment> java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces java.naming.provider.url=jnp://localhost:1399 </jee:environment> </jee:remote-slsb>
and output isCode:@Controller public class StoreController implements InitializingBean { private static Logger logger = LoggerFactory.getLogger(StoreController.class); @Autowired(required = false) @Qualifier("storeLocal") private StoreLocal storeLocal; @Autowired(required = false) @Qualifier("sotreRemote") private StoreRemote storeRemote; public void afterPropertiesSet() throws IllegalArgumentException, NamingException { logger.info("********************Autowired Local:{}:", storeLocal); if (storeLocal == null) { LocalStatelessSessionProxyFactoryBean lslsb = new LocalStatelessSessionProxyFactoryBean(); lslsb.setBusinessInterface(StoreLocal.class); lslsb.setJndiName("StoreBean/local"); lslsb.setResourceRef(false); lslsb.setLookupHomeOnStartup(true); lslsb.afterPropertiesSet(); storeLocal = (StoreLocal) lslsb.getObject(); logger.info("********************setupLocal:{}:", storeLocal); } logger.info("********************Autowired Remote:{}:", storeRemote); if (storeRemote == null) { SimpleRemoteStatelessSessionProxyFactoryBean sslsb = new SimpleRemoteStatelessSessionProxyFactoryBean(); sslsb.setBusinessInterface(StoreRemote.class); sslsb.setJndiName("StoreBean/remote"); sslsb.setLookupHomeOnStartup(true); sslsb.setResourceRef(false); Properties jndienv = new Properties(); jndienv.put("java.naming.factory.initial", "org.jnp.interfaces.NamingContextFactory"); jndienv.put("java.naming.factory.url.pkgs", "org.jboss.naming:org.jnp.interfaces"); jndienv.put("java.naming.provider.url", "jnp://localhost:1099"); sslsb.setJndiEnvironment(jndienv); sslsb.afterPropertiesSet(); storeRemote = (StoreRemote) sslsb.getObject(); logger.info("********************setup Remote:{}:", storeRemote); } logger.info("************************************"); } ... }
Thnak you.Code:17:13:42,486 INFO [STDOUT] 2012-06-13 17:13:42,486 [HDScanner] INFO e.c.StoreController.afterPropertiesSet[38] - ***** ***************Autowired Local:null: 17:13:42,517 INFO [STDOUT] 17:13:42,548 INFO [STDOUT] 2012-06-13 17:13:42,548 [HDScanner] INFO e.c.StoreController.afterPropertiesSet[47] - ***** ***************setup Local:Proxy to jboss.j2ee:jar=Ejb3-ejb-1.0-SNAPSHOT.jar,name=StoreBean,service=EJB3 implementing [in terface ejb3.bean.StoreLocal]: 17:13:42,564 INFO [STDOUT] 17:13:42,580 INFO [STDOUT] 2012-06-13 17:13:42,580 [HDScanner] INFO e.c.StoreController.afterPropertiesSet[49] - ***** ***************Autowired Remote:null: 17:13:42,595 INFO [STDOUT] 17:13:42,736 INFO [STDOUT] 2012-06-13 17:13:42,736 [HDScanner] INFO e.c.StoreController.afterPropertiesSet[63] - ***** ***************setup Remote:Proxy to jboss.j2ee:jar=Ejb3-ejb-1.0-SNAPSHOT.jar,name=StoreBean,service=EJB3 implementing [i nterface ejb3.bean.StoreRemote]: 17:13:42,751 INFO [STDOUT] 17:13:42,767 INFO [STDOUT] 2012-06-13 17:13:42,767 [HDScanner] INFO e.c.StoreController.afterPropertiesSet[65] - ***** *******************************


Reply With Quote