J'essaie de créer une classe simple pour ouvrir une URL mais quand je l'exécute, elle donne une exception de pointeur nul dès que j'initialise l'applet. Voici la classe:Ouvrir une URL dans une nouvelle fenêtre Java
package com.agentsheets.component;
import java.net.*;
import java.applet.*;
public class URLOpener extends Applet{
public void openURL(String inputURL) {
try {
AppletContext applet = getAppletContext();
URL url = new URL(inputURL);
applet.showDocument(url, "Ristretto");
}
catch (MalformedURLException e){
System.out.println(e.getMessage());
}
}
}
Et je l'appelle comme ceci:
URLOpener opener = new URLOpener();
String URL = "http://somewebsite";
opener.openURL(URL);
Il donne l'exception à la ligne AppletContext applet = getAppletContext();
Quelqu'un peut-il expliquer ce que je fais mal? Merci.
Édition: Voici la pile complète.
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at java.applet.Applet.getAppletContext(Unknown Source) at com.agentsheets.component.URLOpener.openURL(URLOpener.java:21) at com.agentsheets.component.ComponentController.actionPerformed(ComponentController.java:2510) at javax.swing.JComboBox.fireActionEvent(Unknown Source) at javax.swing.JComboBox.setSelectedItem(Unknown Source) at javax.swing.JComboBox.setSelectedIndex(Unknown Source) at javax.swing.plaf.basic.BasicComboPopup$Handler.mouseReleased(Unknown Source) at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source) at java.awt.Component.processMouseEvent(Unknown Source) at javax.swing.JComponent.processMouseEvent(Unknown Source) at javax.swing.plaf.basic.BasicComboPopup$1.processMouseEvent(Unknown Source) at java.awt.Component.processEvent(Unknown Source) at java.awt.Container.processEvent(Unknown Source) at java.awt.Component.dispatchEventImpl(Unknown Source) at java.awt.Container.dispatchEventImpl(Unknown Source) at java.awt.Component.dispatchEvent(Unknown Source) at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source) at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source) at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source) at java.awt.Container.dispatchEventImpl(Unknown Source) at java.awt.Window.dispatchEventImpl(Unknown Source) at java.awt.Component.dispatchEvent(Unknown Source) at java.awt.EventQueue.dispatchEvent(Unknown Source) at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.run(Unknown Source)
Pourriez-vous publier l'exception pilePace? – akarnokd