==A Basic Simple Example of Remote Connection Using JMX== 
 If it is felt to add following in Article, following wiki standards. I have masde this simple example for basic understanding how JMX works, because i get bit problem in understanding this. Now it looks simple but once it was not. 

 ===On Server Side=== 
 MBeans is combination of an Interface and It's Implementation which is given follows:- 

 1) HelloMBean.java - Consist of INterface. 

 package jmxtryout; 

 public interface HelloMBean 
 { 
     public String Tryout(); 
     public String add(String x, String y); 
     public String getName(); 
 } 

 2) Hello.java (Consist of Implementation of Interface HelloMBean 

 package jmxtryout; 

 public class Hello implements HelloMBean 
 { 
     public String Tryout() 
     { 
  	 return "Tried It First Time"; 
     } 

     public String add(String x, String y) 
     { 
  	 return x + y; 
     } 
     private String name = "Ranjeet"; 
     public String getName() 
     { 
  	 return this.name; 
     }     
 } 

 3) Main.java -> This contains registering MBeans code and Object is created which will recreated on client side for internal communication 
 package jmxtryout; 

 import java.lang.management.ManagementFactory; 
 import java.util.Scanner; 
 import javax.management.MBeanServer; 
 import javax.management.ObjectName; 

 public class Main { 

     public static void main(String[] args) throws Exception { 
         try { 
             MBeanServer mbs = ManagementFactory.getPlatformMBeanServer(); 
             ObjectName name = new ObjectName("HelloMBean:Name=HelloMBean,type=Hello"); 
             HelloMBean mbean = new Hello(); 
             mbs.registerMBean(mbean, name); 
             System.out.println("Waiting forever..."); 
             Thread.sleep(Long.MAX_VALUE); 
         } catch (Exception e) { 
             System.out.println("Exception" + e.getMessage()); 
           
         } 
     } 
 } 

 Now run server using following: 

 java -Dcom.sun.management.jmxremote.port=8877 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -jar DesktopApplication3.jar 

 ===On Client Side=== 
 here we will create objectName same as of above and will invoke operations and call attribute values as shown below.  

 package jmxtryoutfetch; 

 import java.util.Set; 
 import java.util.logging.Level; 
 import java.util.logging.Logger; 
 import javax.management.MBeanServerConnection; 
 import javax.management.ObjectInstance; 

 import javax.management.ObjectName; 
 import javax.management.remote.JMXConnector; 
 import javax.management.remote.JMXConnectorFactory; 
 import javax.management.remote.JMXServiceURL; 
 import sun.applet.Main; 

  
 class Client 
 { 
   public static void main(String[] args) { 
         try 
         { 
             JMXServiceURL address = new JMXServiceURL("service:jmx:rmi:///jndi/rmi://localhost:8877/jmxrmi"); //At Place of Localhost write IP of remote system 
             JMXConnector connector = JMXConnectorFactory.connect(address); 
             MBeanServerConnection mbs = connector.getMBeanServerConnection(); 
             ObjectName obj = new ObjectName("HelloMBean:Name=HelloMBean,type=Hello"); 
             System.out.println(mbs.getAttribute(obj, "Name")); 
             System.out.println(mbs.invoke(obj,"Tryout", new Object[]{},new String[]{})); 
             System.out.println(mbs.invoke(obj,"add", new Object[]{"Wa +"," taa"},new String[]{"java.lang.String","java.lang.String"})); 
              
         }  
         catch (Exception ex) 
         { 
             Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex); 
         } 
     } 
 } 

 When Program is run it will show the output required. 

 Thank You