-
1. Re: Adding a dependency on HornetQ RAR deployment
jbertram Oct 28, 2013 3:51 PM (in response to igarashitm)Try setting your dependency on "jboss.ra.hornetq-ra" and let me know if that works.
-
2. Re: Re: Adding a dependency on HornetQ RAR deployment
igarashitm Oct 28, 2013 7:07 PM (in response to jbertram)Thanks for the idea Justin, but no luck... apparently it's looking for the module.
Caused by: org.jboss.modules.ModuleNotFoundException: jboss.ra.hornetq-ra:main at org.jboss.modules.Module.addPaths(Module.java:949) [jboss-modules.jar:1.2.0.Final-redhat-1] at org.jboss.modules.Module.link(Module.java:1304) [jboss-modules.jar:1.2.0.Final-redhat-1] at org.jboss.modules.Module.relinkIfNecessary(Module.java:1332) [jboss-modules.jar:1.2.0.Final-redhat-1] at org.jboss.modules.ModuleLoader.loadModule(ModuleLoader.java:226) [jboss-modules.jar:1.2.0.Final-redhat-1] at org.jboss.as.server.moduleservice.ModuleLoadService.start(ModuleLoadService.java:71) [jboss-as-server-7.2.0.Final-redhat-8.jar:7.2.0.Final-redhat-8] ... 5 more
"deployment." prefix is obviously working as a magic word, but just doesn't work for HornetQ built-in RAR.
-
3. Re: Adding a dependency on HornetQ RAR deployment
igarashitm Oct 30, 2013 9:37 AM (in response to igarashitm)Anyone has any idea? Sounds like the only way to do this is adding subsystem dependency in the code... I'd really like to avoid it if I can....
-
4. Re: Re: Adding a dependency on HornetQ RAR deployment
synclpz Nov 25, 2013 6:38 AM (in response to igarashitm)I fixed via dumb way:
1. Made a web-application with ServletContextListener which tries to lookup for java:/JmsXA in a loop until it is available (actually after HornetQ startup)
2. Add a jboss-all.xml dependencies to all other deployments so they depend on my webapp deployment
3. Profit!!!111
Could not attach files, so the sources inlined:
@WebListener public class StartupListener implements ServletContextListener { private static final Logger LOGGER = LoggerFactory .getLogger(StartupListener.class); public void contextInitialized(ServletContextEvent event) { InitialContext ctx; try { ctx = new InitialContext(); } catch (Throwable t) { throw new RuntimeException(t); } Object jmsXA = null; while (true) { try { jmsXA = ctx.lookup("java:/JmsXA"); if (jmsXA != null) { LOGGER.info("JmsXA found to be started"); break; } Thread.sleep(1000); } catch (Exception e) { LOGGER.info("Waiting for JmsXA to start..."); LOGGER.trace("Exception looking up JmsXA", e); try { Thread.sleep(1000); } catch (InterruptedException e1) { LOGGER.warn("Interrupted waiting for JmsXA to start"); } } } } public void contextDestroyed(ServletContextEvent event) { // nothing } }
-
5. Re: Re: Adding a dependency on HornetQ RAR deployment
igarashitm Nov 25, 2013 6:57 AM (in response to synclpz)Just FYI - Since I couldn't find any way to do this except polling, decided to let the AS7 deployment processor handle it.
[SWITCHYARD-1789] JCAActivator should wait for the HornetQ RAR deployment - JBoss Issue Tracker
Now SwitchYard JCA gateway always waits for the RAR initialization including HornetQ built-in RAR. You don't have to do anything after SwitchYard 1.1.