0 Replies Latest reply on Aug 23, 2007 9:57 AM by Rajesh

    Urgent- JMS not working in Cluster( 3 nodes on three differe

    Rajesh Newbie

      Hi Folks,

      I have a cluster having threee nodes in it and EACH NODE IS CONFIGURED IN DIFFERENT SOLARIS ZONES ( i.e each node will have one hostname ) , Now we are trying to configure JMS in it by deploying the .ear file in it and i can see the JMS Queue is bound to only node suppose lets say server-2.

      When i tried to access that mail sending functioality with direct app server URL rather than F5 url... only server-2 is working fine and the rest two nodes are not working and its throwing the below exception .

      INFO | jvm 1 | 2007/08/20 15:44:25 | javax.naming.NameNotFoundException: queue not bound

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.jnp.server.NamingServer.getBinding(NamingServer.java:514)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.jnp.server.NamingServer.getBinding(NamingServer.java:522)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.jnp.server.NamingServer.getObject(NamingServer.java:528)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.jnp.server.NamingServer.lookup(NamingServer.java:252)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:610)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:572)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at javax.naming.InitialContext.lookup(InitialContext.java:351)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at com.ge.hc.lcd.controller.action.LcdSendMailAction.doPost(Unknown Source)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:159)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.jboss.web.tomcat.tc5.session.ClusteredSessionValve.invoke(ClusteredSessionValve.java:81)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.jboss.web.tomcat.tc5.session.JvmRouteValve.invoke(JvmRouteValve.java:73)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.jboss.web.tomcat.tc5.sso.ClusteredSingleSignOn.invoke(ClusteredSingleSignOn.java:366)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:307)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:385)

      INFO | jvm 1 | 2007/08/20 15:44:25 | at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:748)




      Here is the configuration i made .. :-

      Queue name defined in the below config file of EACH NODE.
      <JBOSS_HOME>/server/<NODE_NAME>/deploy-hasingleton/jms/jbossmq-destinations-service.xml

      and Used the below tag to listen HA-JNDI while creating in code as ..

      first time ..
      nitialContext ctx = new InitialContext();
      Properties p = new Properties();
      p.put(ctx.INITIAL_CONTEXT_FACTORY,"org.jnp.interfaces.NamingContextFactory");
      p.put(ctx.URL_PKG_PREFIXES, "jboss.naming:org.jnp.interfaces");
      p.put(ctx.PROVIDER_URL,"HOSTNAME:1100"); // HA-JNDI port.
      new InitialContext(p);

      (HOSTNAME is the JMS Queue available node address)

      second time ..

      Replaced the PROVIDER_URL line with ...

      p.put("jnp.partitionname", "DefaultPartition"); //Partition name

      But either option is not worked with each and every JBOSS app server direct URL .. its only working with one URL where the JMS Queue is configured and visible


      Can you please help me to understand what are the steps i missed and mistakes made ....

      Thanks in advance.
      -Raj