Newsgroup: it.comp.java
Titolo: HELP EXCEPTION

Aiuto, ho fatto un piccolo programmino java che manda una richiesta XML 
ad un server e mi stampa la risposta, ora con SUN ONE 4STUDIO sto 
facendogli un asemplicissima GUI, ma il programmino che prima funzionava 
mi da un mare di problemi, primo tra tutti questo:
RalinkManager.java [88:1] unreported exception 
java.net.MalformedURLException; must be caught or declared to be thrown
         url =  getURL("
http://ris:8088/ralink
");
                ^
Di che errore si tratta??????
vi allego anche tutto il codice (tanto č poco)
Potete aiutarmi? grazie alessio
-----------------------------CODE--------------------------------
/*
  * RalinkManager.java
  *
  * Created on 29 maggio 2003, 12.30
  */
/**
  *
  * @author  alessio
  */
public class RalinkManager extends javax.swing.JFrame {
     /** Creates new form RalinkManager */
     public RalinkManager() {
         initComponents();
     }
     /** This method is called from within the constructor to
      * initialize the form.
      * WARNING: Do NOT modify this code. The content of this method is
      * always regenerated by the Form Editor.
      */
     private void initComponents() {
         panel = new javax.swing.JPanel();
         treq = new javax.swing.JTextArea();
         tres = new javax.swing.JTextArea();
         submit = new javax.swing.JButton();
         fhost = new javax.swing.JTextField();
         fport = new javax.swing.JTextField();
         lhost = new javax.swing.JLabel();
         lport = new javax.swing.JLabel();
         setTitle("Ralink Manager");
         addWindowListener(new java.awt.event.WindowAdapter() {
             public void windowClosing(java.awt.event.WindowEvent evt) {
                 exitForm(evt);
             }
         });
         panel.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());
         panel.setBackground(new java.awt.Color(201, 222, 201));
         panel.setPreferredSize(new java.awt.Dimension(600, 400));
         treq.setColumns(30);
         treq.setRows(10);
         treq.setBorder(new javax.swing.border.LineBorder(new 
java.awt.Color(0, 0, 0), 2, true));
         panel.add(treq, new 
org.netbeans.lib.awtextra.AbsoluteConstraints(80, 90, 400, 110));
         tres.setColumns(30);
         tres.setRows(10);
         tres.setBorder(new javax.swing.border.LineBorder(new 
java.awt.Color(0, 0, 0), 2, true));
         panel.add(tres, new 
org.netbeans.lib.awtextra.AbsoluteConstraints(80, 240, 400, 110));
         submit.setBackground(new java.awt.Color(255, 255, 255));
         submit.setText("Submit");
         submit.addMouseListener(new java.awt.event.MouseAdapter() {
             public void mouseClicked(java.awt.event.MouseEvent evt) {
                 sendReq(evt);
             }
         });
         panel.add(submit, new 
org.netbeans.lib.awtextra.AbsoluteConstraints(250, 210, -1, -1));
         fhost.setText("http:\\\\");
             panel.add(fhost, new 
org.netbeans.lib.awtextra.AbsoluteConstraints(140, 30, 150, -1));
             fport.setText("8088");
             panel.add(fport, new 
org.netbeans.lib.awtextra.AbsoluteConstraints(400, 30, 40, -1));
             lhost.setText("Host:");
             panel.add(lhost, new 
org.netbeans.lib.awtextra.AbsoluteConstraints(100, 30, -1, -1));
             lport.setText("Port:");
             panel.add(lport, new 
org.netbeans.lib.awtextra.AbsoluteConstraints(360, 30, -1, -1));
             getContentPane().add(panel, java.awt.BorderLayout.SOUTH);
             pack();
         }
     public static java.net.URL getURL(String urlstr) throws 
java.net.MalformedURLException {
             return new java.net.URL(urlstr);
          }
     private void connetti(){
         String xml = treq.getText();
         int len = xml.length();
         url =  getURL("
http://ris:8088/ralink
");
         conn = url.openConnection();
         connection = (java.net.HttpURLConnection) conn;
         connection.setRequestMethod("POST");
         connection.setDoOutput(true);
         connection.setDoInput(true);
         connection.setUseCaches(false);
         connection.setRequestProperty("Content-Type","application/ralink");
         //connection.setRequestProperty("Content-Lenght","146");
         out = new java.io.DataOutputStream(connection.getOutputStream());
         out.writeBytes(xml);
         out.flush();
         //out.close();
         input = new java.io.DataInputStream(connection.getInputStream());
         String str;
         while (null != ((str = input.readLine()))){
             tres.setText(str);
         }input.close();
     }
     private void sendReq(java.awt.event.MouseEvent evt) {
         connetti();
     }
     /** Exit the Application */
     private void exitForm(java.awt.event.WindowEvent evt) {
         System.exit(0);
     }
     /**
      * @param args the command line arguments
      */
     public static void main(String args[]) {
         new RalinkManager().show();
     }
     // Variables declaration - do not modify
     private javax.swing.JLabel lhost;
     private javax.swing.JTextArea treq;
     private javax.swing.JTextArea tres;
     private javax.swing.JTextField fport;
     private javax.swing.JButton submit;
     private javax.swing.JTextField fhost;
     private javax.swing.JLabel lport;
     private javax.swing.JPanel panel;
     // End of variables declaration
     private java.net.URL url;
     private java.net.URLConnection conn;
     private java.net.HttpURLConnection connection;
     private java.io.DataOutputStream out;
     private java.io.DataInputStream input;
}

 vi allego anche tutto il codice (tanto è poco)


L'istruzione
url =  getURL("
http://ris:8088/ralink
");
deve stare all'interno di un blocco try...catch che gestisca l'eccezione da
lui sollevata, in questo caso java.net.MalformedURLException. Come
alternativa, che progettualmente risulta anche essere più corretta, modifica
il metodo Connetti() rendendolo throws java.net.MalformedURLException. A
quel punto gestisci l'eccezione a livello chiamata del metodo Connetti()
      private void sendReq(java.awt.event.MouseEvent evt) {
            try {
              connetti();
            }catch ( java.net.MalformedURLException mue ){ ..gestisci
l'eccezione.. }
            catch ( altre eventiali eccezioni...){..... }


                ^
il metodo getURL puo' fare il throw di MalformedURLException, quindi tu 
sei obbligato a gestire quest'eccezione (tramite un try-catch) o a 
dichiarare che il tuo metodo connetti puo' fare a sua volta il throw 
dell'eccezione (spostando il problema a dove chiami connetti).
Andrea Polci