Bonjour,
Je débute en Java et je commence à essayer de gérer des controles dans un applet.
Je bloque actuellement sur l'affichage d'une page HTML dans un JEditorPane.
Le programme se compile bien et s'execute correctement sauf quand arrive mon setPage("
[ Lien ]");
Ci joint mon petit bout de code ainsi que l'immonde message d'erreur qui est généré.
Pour moi c'est un probléme de droit.
Pourriez vous m'aider SVP Merci.
Code:
/**
* @(#)Bidule.java
*
* Sample Applet application
*
* @author
* @version 1.00 06/05/18
*/
import java.awt.*;
import java.io.*;
import java.applet.*;
import javax.swing.*;
import java.awt.event.*;
public class Bidule extends JApplet
{
JButton B1 = new JButton("bout1"/*,faces[1]*/);
JButton B2 = new JButton("bout2");
JTextField TXT = new JTextField(10);
JTextArea TXT2 = new JTextArea(10,10);
JScrollPane SP1 = new JScrollPane (TXT2,JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
JEditorPane EP1 = new JEditorPane("text/html","<p><a href='Bidule.htm'>Bidule.htm</a></p>");
JScrollPane SP2 = new JScrollPane(EP1,JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
class BL implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
String name = ((JButton)e.getSource()).getText();
TXT.setText(name);
TXT2.setText("<html><center><br>" + name + "</br></center></html>");
//EP1.setText("<html><center><br>" + name + "</br></center></html>");
try
{
EP1.setPage("http://www.voila.fr");
}
catch(IOException f)
{
f.printStackTrace();
}
}
public void init()
{
B1.addActionListener(new BL());
B2.addActionListener(new BL());
B1.setBackground(Color.orange);
EP1.setContentType("text/html");
//EP1.setEditable(false);
getContentPane().setLayout(new FlowLayout());
getContentPane().add(new JLabel("Applet!"));
getContentPane().add(B1);
getContentPane().add(B2);
getContentPane().add(TXT);
getContentPane().add(SP1);
getContentPane().add(SP2);
}
}
Message d'erreur: java.lang.RuntimeException: java.security.AccessControlException: access denied
(java.net.SocketPermission www.voila.fr resolve)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLCon
nection.java:598)
at sun.net.www.protocol.http.HttpURLConnection.getHeaderField(HttpURLCon
nection.java:1530)
at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:281
)
at javax.swing.JEditorPane.getStream(JEditorPane.java:674)
at javax.swing.JEditorPane.setPage(JEditorPane.java:392)
at javax.swing.JEditorPane.setPage(JEditorPane.java:775)
at Bidule$BL.actionPerformed(Bidule.java:44)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:17
86)
at javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(Abstra
ctButton.java:1839)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel
.java:420)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258
)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonL
istener.java:245)
at java.awt.Component.processMouseEvent(Component.java:5100)
at java.awt.Component.processEvent(Component.java:4897)
at java.awt.Container.processEvent(Container.java:1569)
at java.awt.Component.dispatchEventImpl(Component.java:3615)
at java.awt.Container.dispatchEventImpl(Container.java:1627)
at java.awt.Component.dispatchEvent(Component.java:3477)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:3483
)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3198)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3128)
at java.awt.Container.dispatchEventImpl(Container.java:1613)
at java.awt.Component.dispatchEvent(Component.java:3477)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:480)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchTh
read.java:201)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThre
ad.java:151)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)
Caused by: java.security.AccessControlException: access denied (java.net.SocketP
ermission www.voila.fr resolve)
at java.security.AccessControlContext.checkPermission(AccessControlConte
xt.java:269)
at java.security.AccessController.checkPermission(AccessController.java:
401)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:524)
at java.lang.SecurityManager.checkConnect(SecurityManager.java:1023)
at java.net.InetAddress.getAllByName0(InetAddress.java:1000)
at java.net.InetAddress.getAllByName0(InetAddress.java:981)
at java.net.InetAddress.getAllByName(InetAddress.java:975)
at java.net.InetAddress.getByName(InetAddress.java:889)
at sun.net.www.http.HttpClient.<init>(HttpClient.java:296)
at sun.net.www.http.HttpClient.<init>(HttpClient.java:267)
at sun.net.www.http.HttpClient.New(HttpClient.java:339)
at sun.net.www.http.HttpClient.New(HttpClient.java:320)
at sun.net.www.http.HttpClient.New(HttpClient.java:315)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConne
ction.java:521)
at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection
.java:498)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLCon
nection.java:626)
at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:272
)
... 26 more
GuitouLeFoux
"Le secret du sage est de briller dans l'ombre"