Java applet & post method

Συζητήσεις για την Java

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
Άβαταρ μέλους
graphi
Δημοσιεύσεις: 1
Εγγραφή: 22 Ιουν 2006 21:01

Java applet & post method

Δημοσίευση από graphi » 23 Ιουν 2006 02:32

Επειδή έχω απογοητευτεί από τους browsers όπου ο καθένας εμφανίζει διαφορετικά ένα html έγγραφο, αποφάσισα να αρχίσω να χρησιμοποιώ java applet. Το βιβλίο για java applet όπου έχω αλλά και κάποια tuto στο internet λένε πώς να φτιάξεις πεδία κειμένου κ.τ.λ. και να τα χρησιμοποιήσεις, αλλά δε λένε πως μπορείς να διαβιβάσεις τα δεδομένα από αυτά σε ένα php script με τη μέθοδο post.

Ας πούμε λοιπόν ότι έχουμε αυτό το απλό παράδειγμα (για να καταλάβω και πως λειτουργεί)

Κώδικας: Επιλογή όλων

import java.applet.Applet;
import java.awt.*;

public class form extends Applet
{
    TextField  text1;
    Button     button1;
    
    public void init()
    {
        text1 = new TextField(20);
        add(text1);
        
        button1 = new Button("Submit");
        add(button1);
    }
}
Να μαντέψω ότι θα χρειαστεί και ένας ακροατής για να κάνει post όταν θα πατιέται το κουμπί;
Ευχαριστώ προκαταβολιά.

Άβαταρ μέλους
cpulse
Script Master
Δημοσιεύσεις: 1527
Εγγραφή: 21 Μαρ 2006 19:30
Τοποθεσία: Αθήνα village
Επικοινωνία:

Java applet & post method

Δημοσίευση από cpulse » 04 Ιούλ 2006 19:41

/me ξεσκονίζει τη Java που θυμάται...

Είχα βρεί παλιά κάτι κώδικες να κάνουν τέτοια.. τα έχω πειράξει λίγο.. δες το. Ίσως χρειαστεί να το προσαρμόσεις λίγο σε αυτά που ζητάς.

Κώδικας: Επιλογή όλων

    private String http_read(String url, String request) throws IOException {
        // request in urlencode format
        URL u = new URL(url);
        URLConnection uc = u.openConnection();
        HttpURLConnection connection = (HttpURLConnection) uc;
        connection.setDoOutput(true);
        connection.setDoInput(true);
        connection.setRequestMethod("POST");
        OutputStream out = connection.getOutputStream();
        Writer wout = new OutputStreamWriter(out);

        // Write the request
        wout.write(request);
        wout.flush();
        wout.close();

        // Read the response
        InputStream in = null;
        in = connection.getInputStream();
        StringBuffer sb = new StringBuffer();
        Reader reader = new InputStreamReader(in, "UTF-8");
        int c;
        while ((c = in.read()) != -1) sb.append((char) c);
        String result = sb.toString();

        in.close();
        connection.disconnect();

        return result;
    }
Με αυτό τον κώδικα θα ζητήσεις μια σελίδα στον server σου (εκτώς του server δεν επιτρέπεται από applet) και έτσι θα διαβάσεις το περιεχόμενο της σελίδας. Αν υπάρχει κώδικας PHP αυτός δεν θα εμφανιστεί. Αν θες να διαβάσεις τον κώδικα θα πρέπει να κατεβάσεις το αρχείο με FTP.

Ένα μικρό παράδειγμα που σπάει τις γραμμές και σε πίνακα:
String input = http_read("http://www.example.com/page.html", "");
String[] data = input.trim().split("\n");

random
Δημοσιεύσεις: 12
Εγγραφή: 10 Ιαν 2004 12:14

Java applet & post method

Δημοσίευση από random » 26 Σεπ 2006 12:57

graphi έγραψε:Επειδή έχω απογοητευτεί από τους browsers όπου ο καθένας εμφανίζει διαφορετικά ένα html έγγραφο, αποφάσισα να αρχίσω να χρησιμοποιώ java applet.
Aυτοι οι λόγοι δεν ειναι αρκετοί για να αφήσεις τις sever side σκριπτογλωσσες και να πας σε applet.

επειδή...
1. κανενας αλλος δεν το κανει
2. οι επισκεπτες πρεπει να εχουν εγκατεστημενο το java jre

3. το κατεβασμα του applet, συν την αρχικοποίηση της jvm, αργούν υπερβολικα (σε σχεση με την εμφανιση απλων html, php, asp).
μιλάμε για Internet: καμία σχέση με ταχυτητες που εχεις οταν καλεις localhost, ή μεσα σε 100άρι Lan.


4. για να κανεις απλά πράγματα θελεις 10 γραμμες php, ή 40 γραμμες java.*

(*για να κάνεις πολύ σύνθετα πράγματα/βαριά site, η java μπορει να ειναι καλύτερη/οικονομικότερη, αλλα τοτε πας σε JSP/servlets, οχι σε applets)

5. τα sources σου χρειάζονται compile.

----------------------------------


για να "παγώσεις" την εμφάνιση των σελίδων ανεξάρτητα απο τις προτιμήσεις χρήστη υπάρχουν τα CSS

Απάντηση

Επιστροφή στο “Java”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες