Mini Browser em JAVA, ajuda com permição para applets

Olá galera, sou novo no forum, tenho um código de um browser simples em JAVA feito no NETBEANS e preciso fazer com que ele execute somente as applets que eu mandar ele executar, como por exemplo esse applet aqui e nenhum outro mais:
http://www.lsi.usp.br/~bassani/tutorialJava/applet/escreverHello/OlaPessoal.html

Nesse caso, o meu browser nem sequer abre applets hehe,ele é somente pra texto e imagens. Porém acho que isso não quer dizer(eu axo, me corrijam se estiver errado).
Porém eu não fasso idéia de como fazer o browser reconhecer o applet, pra ser sincero não entendo nada de java integrado com web.
Gostaria de uma ajuda de vocês, como eu poderia fazer pra solucionar o meu problema.

Segue o codigo do applet.

[code]import java.awt.;
import java.awt.event.
;
import java.net.;
import java.util.
;
import javax.swing.;
import javax.swing.event.
;
import javax.swing.text.html.*;

// The Simple Web Browser.
public class MiniBrowser extends JFrame

    implements HyperlinkListener {
// These are the buttons for iterating through the page list.
private JButton backButton, forwardButton;

// Page location text field.
private JTextField locationTextField;

// Editor pane for displaying pages.
private JEditorPane displayEditorPane;

// Browser's list of pages that have been visited.
private ArrayList pageList = new ArrayList();

// Constructor for Mini Web Browser.
public MiniBrowser() {
    // Set application title.
    setTitle("Mini Browser");

    // Set window size.
    setSize(640, 480);

    // Handle closing events.
    addWindowListener(new WindowAdapter() {
        public void windowClosing(WindowEvent e) {
            actionExit();
        }
    });

    // Set up file menu.
    JMenuBar menuBar = new JMenuBar();
    JMenu fileMenu = new JMenu("File");
    fileMenu.setMnemonic(KeyEvent.VK_F);
    JMenuItem fileExitMenuItem = new JMenuItem("Exit",
            KeyEvent.VK_X);
    fileExitMenuItem.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            actionExit();
        }
    });
    fileMenu.add(fileExitMenuItem);
    menuBar.add(fileMenu);
    setJMenuBar(menuBar);

    // Set up button panel.
    JPanel buttonPanel = new JPanel();
    backButton = new JButton("< Back");
    backButton.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            actionBack();
        }
    });
    backButton.setEnabled(false);
    buttonPanel.add(backButton);
    forwardButton = new JButton("Forward >");
    forwardButton.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            actionForward();
        }
    });
    forwardButton.setEnabled(false);
    buttonPanel.add(forwardButton);
    locationTextField = new JTextField(35);
    locationTextField.addKeyListener(new KeyAdapter() {
        public void keyReleased(KeyEvent e) {
            if (e.getKeyCode() == KeyEvent.VK_ENTER) {
                actionGo();
            }
        }
    });
    buttonPanel.add(locationTextField);
    JButton goButton = new JButton("GO");
    goButton.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            actionGo();
        }
    });
    buttonPanel.add(goButton);

    // Set up page display.
    displayEditorPane = new JEditorPane();
    displayEditorPane.setContentType("text/html");
    displayEditorPane.setEditable(false);
    displayEditorPane.addHyperlinkListener(this);

    getContentPane().setLayout(new BorderLayout());
    getContentPane().add(buttonPanel, BorderLayout.NORTH);
    getContentPane().add(new JScrollPane(displayEditorPane),
            BorderLayout.CENTER);
}

// Exit this program.
private void actionExit() {
    System.exit(0);
}

// Go back to the page viewed before the current page.
private void actionBack() {
    URL currentUrl = displayEditorPane.getPage();
    int pageIndex = pageList.indexOf(currentUrl.toString());
    try {
        showPage(
                new URL((String) pageList.get(pageIndex - 1)), false);
    } catch (Exception e) {}
}

// Go forward to the page viewed after the current page.
private void actionForward() {
    URL currentUrl = displayEditorPane.getPage();
    int pageIndex = pageList.indexOf(currentUrl.toString());
    try {
        showPage(
                new URL((String) pageList.get(pageIndex + 1)), false);
    } catch (Exception e) {}
}

// Load and show the page specified in the location text field.
private void actionGo() {
    URL verifiedUrl = verifyUrl(locationTextField.getText());
    if (verifiedUrl != null) {
        showPage(verifiedUrl, true);
    } else {
        showError("Invalid URL");
    }
}

// Show dialog box with error message.
private void showError(String errorMessage) {
    JOptionPane.showMessageDialog(this, errorMessage,
            "Error", JOptionPane.ERROR_MESSAGE);
}

// Verify URL format.
private URL verifyUrl(String url) {
    // Only allow HTTP URLs.
    if (!url.toLowerCase().startsWith("http://"))
        return null;

    // Verify format of URL.
    URL verifiedUrl = null;
    try {
        verifiedUrl = new URL(url);
    } catch (Exception e) {
        return null;
    }

    return verifiedUrl;
}

/* Show the specified page and add it to
the page list if specified. */
private void showPage(URL pageUrl, boolean addToList) {
// Show hour glass cursor while crawling is under way.
setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));

    try {
        // Get URL of page currently being displayed.
        URL currentUrl = displayEditorPane.getPage();

        // Load and display specified page.
        displayEditorPane.setPage(pageUrl);

        // Get URL of new page being displayed.
        URL newUrl = displayEditorPane.getPage();

        // Add page to list if specified.
        if (addToList) {
            int listSize = pageList.size();
            if (listSize > 0) {
                int pageIndex =
                        pageList.indexOf(currentUrl.toString());
                if (pageIndex < listSize - 1) {
                    for (int i = listSize - 1; i > pageIndex; i--) {
                        pageList.remove(i);
                    }
                }
            }
            pageList.add(newUrl.toString());
        }

        // Update location text field with URL of current page.
        locationTextField.setText(newUrl.toString());

        // Update buttons based on the page being displayed.
        updateButtons();
    } catch (Exception e) {
        // Show error messsage.
        showError("Unable to load page");
    } finally {
        // Return to default cursor.
        setCursor(Cursor.getDefaultCursor());
    }
}

/* Update back and forward buttons based on
the page being displayed. */
private void updateButtons() {
if (pageList.size() < 2) {
backButton.setEnabled(false);
forwardButton.setEnabled(false);
} else {
URL currentUrl = displayEditorPane.getPage();
int pageIndex = pageList.indexOf(currentUrl.toString());
backButton.setEnabled(pageIndex > 0);
forwardButton.setEnabled(
pageIndex < (pageList.size() - 1));
}
}

// Handle hyperlink's being clicked.
public void hyperlinkUpdate(HyperlinkEvent event) {
    HyperlinkEvent.EventType eventType = event.getEventType();
    if (eventType == HyperlinkEvent.EventType.ACTIVATED) {
        if (event instanceof HTMLFrameHyperlinkEvent) {
            HTMLFrameHyperlinkEvent linkEvent =
                    (HTMLFrameHyperlinkEvent) event;
            HTMLDocument document =
                    (HTMLDocument) displayEditorPane.getDocument();
            document.processHTMLFrameHyperlinkEvent(linkEvent);
        } else {
            showPage(event.getURL(), true);
        }
    }
}

// Run the Mini Browser.
public static void main(String[] args) {
    MiniBrowser browser = new MiniBrowser();
    browser.show();
}

}[/code]

Você não quer fazer alguma coisa mais simples?
Rodar uma applet em um mini-browser escrito em Java é algo que eu consideraria não-trivial.

infelizmente é um trabalho da faculdade e eu tenho que fazer isso ¬¬

edit:
E eu nao precisaria necessariamente “abrir” o applet…
só tendo o codigo que diz qual applet é possivel abrir e bloquear as que nao estão nessa lista já é suficiente

Opa galera, seguinte…
Tava vendo aqui e ja encontrei um método pra fazer o que eu quero…
porém, eu precisaria armazenar o codigo fonte HTML das paginas que o browser abre em uma String…
Alguem tem uma idéia de como poderia fazer isso?