properties.setProperty( "dpml.subprocess", "true" );
    private String[] getProcessCommand() throws IOException    {        ArrayList list = new ArrayList();                String path = m_descriptor.getCodeBaseURISpec();        list.add( "metro" );        //        // add system properties        //                Properties properties = m_descriptor.getSystemProperties();        if( null == properties.getProperty( "java.util.logging.config.class" ) )        {            properties.setProperty(               "java.util.logging.config.class",               "net.dpml.depot.DepotLoggingConfiguration" );        }        Enumeration names = properties.propertyNames();        while( names.hasMoreElements() )        {            String name = (String) names.nextElement();            String value = properties.getProperty( name );            list.add( "-D" + name + "=" + value );        }                //        // add the exec command and codebase parameter        //                list.add( "exec" );        list.add( path );                //        // add options necessary for the handler to establish a callback        //                list.add( "-port" );        list.add( "" + m_port );        list.add( "-key" );        list.add( "" + m_id );                return (String[]) list.toArray( new String[0] );    }