Partage
  • Partager sur Facebook
  • Partager sur Twitter

Sécurité - Applet - UrlConnection

Blocage de l'applet lors du get

    31 janvier 2012 à 22:08:36

    Bonjour à tous,

    Je viens vous voir suite à un problème dans mon APPLET Java. Je cherche pour l'instant à montrer un concept, je reste donc très basique. Ce concept est d'envoyer des données à un site web et ainsi pouvoir les intégrer dans ma base de données.

    Pour ce faire, les méthodes GET et POST de la classe UrlConnection fonctionne très bien avec AppletViewer intégré d'Eclipse. Cependant, lorsque je souhaite mettre mon application en ligne, mon code est bloque (reste sur la ligne et ne passe pas à la suite) à la ligne 74 "in = new BufferedReader(new InputStreamReader(yc.getInputStream()));" ci-dessous.
    J'ai lu beaucoup de chose et principalement sur la sécurité mais rien qui me permette de dire si j'ai fait une erreur ou si c'est tout simplement impossible sans faire signer mon applet.

    Avez-vous une piste à me donner ? Je suis débutant et du coup je tourne en rond ...
    Jonathan,

    import javax.swing.JApplet;
    import javax.swing.JLabel;
    import java.awt.Color;
    import java.awt.Dimension;
    import java.awt.Font;
    
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.net.URLConnection;
    import java.net.MalformedURLException;
    import java.net.URL;
    import javax.swing.JTextField;
    import javax.swing.JButton;
    import javax.swing.JPanel;
    
    public class Test extends JApplet {
    	
    	private static final long serialVersionUID = 1L;
    	private JLabel label1 = new JLabel("LoginId");
    	private JLabel label4 = new JLabel("gameType");
    	
    	private JTextField jtf_loginId = new JTextField("10");
    	private JTextField jtf_gameType = new JTextField("0");	
    	
    	public void init(){
    		
    			this.setSize(300, 80);
    		
    			JPanel top = new JPanel();
    		        
    		        Font police = new Font("Arial", Font.BOLD, 14);
    		        jtf_loginId.setFont(police);
    		        jtf_loginId.setPreferredSize(new Dimension(150, 30));
    		        jtf_loginId.setForeground(Color.GREEN);
    		        
    		        jtf_gameType.setFont(police);
    		        jtf_gameType.setPreferredSize(new Dimension(150, 30));
    		        jtf_gameType.setForeground(Color.GREEN);
    		        		        		        
    		        top.add(label1);
    		        top.add(jtf_loginId);
    
    		        top.add(label4);
    		        top.add(jtf_gameType);
    		        this.setContentPane(top);
    		        this.setVisible(true);
    		        
    		        String LoginId = "UserName=" + jtf_loginId.getText();		
    	    		String GameType = "Time1=" + jtf_gameType.getText();	
    	    		
    	    		String url = "http://************/Tangram.Metric/Metric/Create?" + LoginId + "&" + GameType;	
    
    				String source ="";
    				URL oracle = null;
    								
    				try {
    					oracle = new URL(url);
    				} catch (MalformedURLException e2) {
    					// TODO Auto-generated catch block
    					e2.printStackTrace();
    				}
    				URLConnection yc = null;
    				try {
    					yc = oracle.openConnection();
    				} catch (IOException e3) {
    					// TODO Auto-generated catch block
    					e3.printStackTrace();
    				}
    				BufferedReader in = null;
    				
    				try {
    
    					in = new BufferedReader(new InputStreamReader(yc.getInputStream()));
    
    					String inputLine;
    					while ((inputLine = in.readLine()) != null)
    						source +=inputLine;
    					in.close();
    				} catch (IOException e4) {
    					// TODO Auto-generated catch block
    					e4.printStackTrace();
    				}
    	}
    	
    	
    	
    }
    
    • Partager sur Facebook
    • Partager sur Twitter

    Sécurité - Applet - UrlConnection

    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
    • Editeur
    • Markdown