[jboss-user] [Remoting] - problem wiht Identity object

mazz@jboss.com do-not-reply at jboss.com
Thu Jan 31 20:04:12 EST 2008


Suppose I have a box whose hostname is not resolvable via DNS (I know, I know, but for people demo'ing software on a laptop, we've seen it happen).  So, I cannot "ping `hostname`" but I can "ping 127.0.0.1".

Look at NetworkRegistry:

   public ObjectName preRegister(MBeanServer mBeanServer, ObjectName objectName) throws Exception
  |    {
  |       this.mBeanServer = mBeanServer;
  |       this.objectName = objectName;
  |       // make sure our identity system property is properly set
  |       Identity identity = Identity.get(this.mBeanServer);
  | ...
  | 

Now look at the Identity.get() method it called there:


  |       if(identities.containsKey(server))
  |       {
  |          return (Identity) identities.get(server);
  |       }
  |       try
  |       {
  |          String serverid = (String) server.getAttribute(new ObjectName("JMImplementation:type=MBeanServerDelegate"), "MBeanServerId");
  |          Identity identity = new Identity(InetAddress.getLocalHost(), createId(server), serverid);
  |          identities.put(server, identity);
  |          return identity;
  |       }

It calls InetAddress.getLocalHost() but if that fails (and it will if the local hostname is not resolvable) you can *never* start a NetworkRegistry object.

If there is an exception here in that call to InetAddress.getLocalHost(), it should fallback and use: InetAddress getByName("127.0.0.1").

I tried setting "jboss.identity" sysprop to Identity.createUniqueID() but unfortunately, that sysprop isn't used in this class and NetworkRegistry never looks to see if that is set as a fallback.

I understand that without a resolvable host, it hobbles things - but for demo purposes of software that will ONLY ever run on a single laptop over the loopback network adapter on 127.0.0.1, this should still work without me having to disable things like the NetworkRegistry.

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

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



More information about the jboss-user mailing list