public static final void startChannel_Main() {
        try {
            initialProp = new Properties();
            final FileReader channelConfig = new FileReader(System.getProperty("net.sf.odinms.channel.config"));
            initialProp.load(channelConfig);
            channelConfig.close();
            final Registry registry = LocateRegistry.getRegistry(initialProp.getProperty("net.sf.odinms.world.host"), Registry.REGISTRY_PORT, new SslRMIClientSocketFactory());
            worldRegistry = (WorldRegistry) registry.lookup("WorldRegistry");

            for (int i = 0; i < Integer.parseInt(initialProp.getProperty("net.sf.odinms.channel.count", "0")); i++) {
                newInstance(ServerConstants.Channel_Key[i]).run_startup_configurations();
            }
//	    newInstance(initialProp.getProperty("net.sf.odinms.channel."+ new File(System.getProperty("net.sf.odinms.channelToLaunch")) +".key")).run();
            DatabaseConnection.getConnection(); // touch - so we see database problems early...
        } catch (FileNotFoundException fnfe) {
            System.out.println("[EXCEPTION] Channel configuration not found.");
        } catch (IOException ioe) {
            System.out.println("[EXCEPTION] Unable to load configuration properties, please check if the file is in use");
        } catch (NotBoundException nbe) {
            System.out.println("[EXCEPTION] The host channel IPs is out of bounds.");
        } catch (InstanceAlreadyExistsException iaee) {
            System.out.println("[EXCEPTION] The channel instance is already opened!");
        } catch (MBeanRegistrationException nmre) {
            System.out.println("[EXCEPTION] Something went wrong with Java MBEAN Registration.");
        } catch (NotCompliantMBeanException ncmbe) {
            System.out.println("[EXCEPTION] Something went wrong with Java MBEAN.");
        } catch (MalformedObjectNameException mone) {
            System.out.println("[EXCEPTION] The channel IPs is invalid.");
        }
    }