Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1

    collegare applet a database

    salve a tutti
    Sto cercando di collegare una applet per visualizzare un grafico a un database in modo che la applet risulti dinamica e cambi ogni volta che si modifica il database..
    l'unico problema è che non ho idea di come fare
    qualcuno mi aiuti!!

  2. #2
    Utente di HTML.it L'avatar di Gondor
    Registrato dal
    Oct 2000
    Messaggi
    2,722
    Spostato su Programmazione
    File reality.sys corrupted
    Reboot universe? y/n
    Non arrabbiarti. Tanto un giorno il mondo farà a meno di te

  3. #3
    Utente di HTML.it L'avatar di Fox82
    Registrato dal
    Feb 2002
    Messaggi
    459
    Ciao e benvenuto!

    Il problema fondamentale è che le applet possono comunicare solo con il server da cui sono state scaricate. Le soluzioni per aggirare il problema sono 3:

    • Usare le applet certificate che non hanno queste limitazioni (fai una ricerca se ne è già parlato)
    • Lasciare un applicazione in ascolto sul server che faccia da tramite con il db, a cui l'applet si può connettere tramite socket
    • Se usi linguaggi server-side, puoi scrivere dinamicamente il codice html, quindi anche i parametri da passare all'applet (forse la via più semplice)


    Spero di essere stato chiaro, in caso contrario chiedi pure qualche chiarimento
    Linux user number 403381

    Stop TCPA!

  4. #4
    Penso che il terzo punto sia quello più opportuno per me; infatti sto costruendo un sito e devo visualizzare un grafico tramite l'applet. Il grafico che devo visualizzare è relativo ai risultati di un sondaggio che vengono memorizzati sul database e vengono aggiornati ogni volta che si vota.
    i dati per il grafico li devo prelevare dal database o dalla pagina che mi visualizza i risultati sul sito (è una servlet)?

  5. #5
    Utente di HTML.it L'avatar di Fox82
    Registrato dal
    Feb 2002
    Messaggi
    459
    Ok, funziona così:

    devi impostare l'applet per ricevere eventuali parametri.
    Per ogni parametro che ti serve devi inserire un tag <parameter> tra i tag <applet></applet>

    I tag parameter devi inserirli dinamicamente; cioè, nella servlet, interroghi il database e stampi i valori ottenuti nell'attributo value del tag parameter.

    Ad esempio

    codice:
      out.Write("<parameter name=\"val1\" value=\"" + risQuery + "\" />
    Così facendo, nel codice html generato avrai

    codice:
      <applet ...i vari parametri>
        <parameter name="val1" value="100" />
        <parameter name="val2" value="140" />
        <parameter name="val3" value="90" />
        ecc...
      </applet>
    Linux user number 403381

    Stop TCPA!

  6. #6
    scusami ma sono stupido..
    l'Applet che devo modificare è questa:

    <applet code="chart.class" width="600" height="300">
    <param name="title" value="Statistiche di accesso sulla index di HTML POINT">
    <param name="columns" value="4">
    <param name="orientation" value="vertical">
    <param name="scale" value="1">
    <param name="Title_Font" value="Arial">
    <param name="Column_Font" value="Arial">
    <param name="format" value="none">
    <param name="bgcolor" value="CCCCCC">
    <param name="c2_color" value="007700">
    <param name="c2_label" value="aprile 98">
    <param name="c1_style" value="solid">
    <param name="c4" value="1000">
    <param name="c3" value="800">
    <param name="c2" value="300">
    <param name="c4_color" value="777700">
    <param name="c1" value="100">
    <param name="c4_label" value="dicembre 98">
    <param name="c3_style" value="solidgrad">
    <param name="c1_color" value="000077">
    <param name="c1_label" value="gennaio98">
    <param name="c3_color" value="000077">
    <param name="c3_label" value="settembre 98">
    <param name="c2_style" value="striped">
    <param name="c4_style" value="stripedgrad">
    </applet>

    questa invece è la servlet che aggiorna le votazioni del sondaggio:


    import java.io.*;
    import java.util.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    import java.sql.*;

    public class risultato extends HttpServlet
    {
    public void service
    (HttpServletRequest req, HttpServletResponse res)
    throws IOException{
    res.setContentType("text/html");
    PrintWriter out = res.getWriter();
    int tot=10;
    String risp[]=new String[tot];
    risp[0]="Vigor Prater";
    risp[1]="Cerredolese";
    risp[2]="Reggio Calcio";
    risp[3]="Fabbrico";
    risp[4]="Cadelboschese";
    risp[5]="Tricolore Reggiana";
    risp[6]="Reggiolo";
    risp[7]="Gualtierese";
    risp[8]="Cavola";
    risp[9]="Montecchio";
    String dbUrl="jdbcdbc:database";
    try{
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    Connection con=DriverManager.getConnection(dbUrl);
    Statement s=con.createStatement();
    ResultSet r;

    out.println("<html>");
    out.println("<head>");
    out.println("<title>Risultati</title>");
    out.println("</head>");
    out.println("<body bgcolor='lightcyan' text='blue'>");
    out.println("<font color='blue'>");
    out.println("<h2>Risultati:</h2>");
    out.println("</font>
    ");

    for (int i=0; i<tot; i++){
    r=s.executeQuery("SELECT Voti FROM Votazioni WHERE Risposta = "+i);
    r.next();
    out.println(""+risp[i]+" : "+r.getString("Voti")+" voto
    ");
    }
    out.println("

    ");
    out.print("<FONT size='3' color=blue>Torna indietro</FONT>");
    s.close();
    con.close();
    } catch (Exception e) {
    out.println("<html>");
    out.println("<body bgcolor=lightcyan text=blue>");
    out.println("<center>");
    out.println("


    ");
    out.println("<h1> E' successo un errore dopo la query sul data base</H1>");
    out.println(e.toString());
    out.println("</center>");
    out.println("</body>");
    out.println("</html>");
    }
    }
    }


    Riusciresti a dirmi come e dove modificare il codice?
    grazie e scusa ancora
    ciao

  7. #7
    Utente di HTML.it L'avatar di Fox82
    Registrato dal
    Feb 2002
    Messaggi
    459
    Così non è semplice, hai qualche documentazione in più per l'applet?

    PS: Quando devi inserire il codice usa il tasto [CODE]
    Linux user number 403381

    Stop TCPA!

  8. #8
    per quanto riguarda l'applet ho il file class che posso decompilare in .java
    per il code ok d'ora in poi lo uso..
    se dici che è complicato sarebbe più semplice prendere i dati dal database?

  9. #9
    Utente di HTML.it L'avatar di Fox82
    Registrato dal
    Feb 2002
    Messaggi
    459
    La cosa che non ho ben capito è da dove l'applet prende i dati per generare il grafico. Dal codice che vedo sembra sia un istogramma, giusto?

    In tal caso devi comunque stampare i tag applet (nel tuo codice non li vedo)

    Ad esempio:

    codice:
      out.write("<applet code = \"chart.class\">");
      ...
      out.write("<param name=\"c1\" value=\"Qui va il dato preso dalla query\">"); 
      ...
    I parametri più importanti dell'applet sono cX_label (le intestazioni) e cX_value (i valori). Devi stampare i parametri in base ai risultati della query
    Linux user number 403381

    Stop TCPA!

  10. #10
    Esatto si tratta di un istogramma


    ok probabilmente ho capito, però quando compilo la servlet mi da l'errore:
    <identifier> expected
    Sai dirmi di cosa si tratta?java è una cosa abbastanza sconosciuta..
    grazie

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.