I would like to send & receive mesages to JBOSSMQ (jboss 3.2.5) over internet. 
The server is behind NAT & Firewall plus DNS. The JNDI lookup keeps on failing. 
I traced out the reason being RMI protocol issue. please refer 
http://forum.java.sun.com/thread.jspa?threadID=289869&messageID=1242288 Also 
tried with HTTP tunneling enabled for JNDI. Below is the stack trace and code 
snippet.


Error Trace
javax.naming.NamingException: Failed to retrieve Naming interface.  Root 
exception is java.net.UnknownHostException: arunp
      at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:153)
      at java.net.Socket.connect(Socket.java:434)
      at java.net.Socket.connect(Socket.java:384)
      at sun.net.NetworkClient.doConnect(NetworkClient.java:139)
      at sun.net.www.http.HttpClient.openServer(HttpClient.java:386)
      at sun.net.www.http.HttpClient.openServer(HttpClient.java:602)
      at sun.net.www.http.HttpClient.(HttpClient.java:303)
      at sun.net.www.http.HttpClient.(HttpClient.java:264)
      at sun.net.www.http.HttpClient.New(HttpClient.java:336)
      at sun.net.www.http.HttpClient.New(HttpClient.java:317)
      at sun.net.www.http.HttpClient.New(HttpClient.java:312)
      at 
sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:481)
      at 
sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:472)
      at 
sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:574)
      at 
sun.net.www.protocol.http.HttpURLConnection.getHeaderField(HttpURLConnection.java:1178)
      at java.net.URLConnection.getHeaderFieldInt(URLConnection.java:475)
      at java.net.URLConnection.getContentLength(URLConnection.java:370)
      at 
org.jboss.naming.HttpNamingContextFactory.getNamingServer(HttpNamingContextFactory.java:112)
      at 
org.jboss.naming.HttpNamingContextFactory.getInitialContext(HttpNamingContextFactory.java:65)
      at 
javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:662)
      at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:243)
      at javax.naming.InitialContext.init(InitialContext.java:219)
      at javax.naming.InitialContext.(InitialContext.java:195)
      at JMSTest.doSend(JMSTest.java:28)
      at com.dialup.test.JMSTest.main(JMSTest.java:53)


Test Case.

import java.util.Properties;

import javax.jms.Message;
import javax.jms.Queue;
import javax.jms.QueueConnection;
import javax.jms.QueueConnectionFactory;
import javax.jms.QueueReceiver;
import javax.jms.QueueSender;
import javax.jms.QueueSession;
import javax.jms.Session;
import javax.jms.TextMessage;
import javax.naming.Context;
import javax.naming.InitialContext;

public class JMSTest
{

   public void doSend()throws Exception

   {       
       Properties properties = new Properties();
       properties.put(Context.INITIAL_CONTEXT_FACTORY, 
"org.jboss.naming.HttpNamingContextFactory");
       properties.put(Context.URL_PKG_PREFIXES, "org.jnp.interfaces");
       properties.put(Context.PROVIDER_URL,  
"http://hostname/invoker/JNDIFactory";);
       InitialContext ctx = new InitialContext(properties);

       Queue queue = (Queue) ctx.lookup("queue/TestQueue");
       QueueConnectionFactory qcf = (QueueConnectionFactory) 
ctx.lookup("UIL2ConnectionFactory");
       QueueConnection qc = qcf.createQueueConnection("arun","arun");

       try
       {
          QueueSession qs = qc.createQueueSession(false, 
Session.AUTO_ACKNOWLEDGE);
          QueueSender sender = qs.createSender(queue);
          TextMessage message = qs.createTextMessage("testMessage @ " + 
System.currentTimeMillis());

          sender.send(message);
       }
       finally
       {
          qc.close();
       }
   }


  public static void main(String[] args) throws Exception
  {
     try
     {

         JMSTest sender = new JMSTest();
         sender.doSend();
     }
     catch(Exception e)
     {
         e.printStackTrace();
     }
  }
}



View the original post : 
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3872089#3872089

Reply to the post : 
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3872089


-------------------------------------------------------
This SF.net email is sponsored by Demarc:
A global provider of Threat Management Solutions.
Download our HomeAdmin security software for free today!
http://www.demarc.com/info/Sentarus/hamr30
_______________________________________________
JBoss-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to