Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Cybersecurity: email, utenti e agenti IA, la nuova visione di Proofpoint
Cybersecurity: email, utenti e agenti IA, la nuova visione di Proofpoint
Dal palco di Proofpoint Protect 2025 emerge la strategia per estendere la protezione dagli utenti agli agenti IA con il lancio di Satori Agents, nuove soluzioni di governance dei dati e partnership rafforzate che ridisegnano il panorama della cybersecurity
Hisense A85N: il ritorno all’OLED è convincente e alla portata di tutti
Hisense A85N: il ritorno all’OLED è convincente e alla portata di tutti
Dopo alcuni anni di assenza dai cataloghi dei suoi televisori, Hisense riporta sul mercato una proposta OLED che punta tutto sul rapporto qualità prezzo. Hisense 55A85N è un televisore completo e versatile che riesce a convincere anche senza raggiungere le vette di televisori di altra fascia (e altro prezzo)
Recensione Borderlands 4, tra divertimento e problemi tecnici
Recensione Borderlands 4, tra divertimento e problemi tecnici
Gearbox Software rilancia la saga con Borderlands 4, ora disponibile su PS5, Xbox Series X|S e PC. Tra le novità spiccano nuove abilità di movimento, un pianeta inedito da esplorare e una campagna che lascia al giocatore piena libertà di approccio
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 08-03-2010, 16:14   #1
sub_zero_
Junior Member
 
Iscritto dal: Mar 2010
Messaggi: 16
[JAVA] esportare in xls

Salve ragazzi, sono nuovo di questo forum e spero di trovare quello che mi serve. Prima di tutto mi scuso se questa non è la sessione adatta dove inserire questa discussione, ma nn ho trovato niente di meglio.

Vi spiego brevemente il mio problema.
Ho una pagina jsp caricata da una servlet apposita che prende dei valori da un DB Mysql e li mostra nel browser. Alla fine di questa pagina ho un bottone che serve per salvare la pagina così com'è in un file Excel utilizzando le librerie jxl.jar (mi hanno messo solo queste a disposizione!!)

Adesso il problema è: come faccio?? Io so creare un nuovo foglio di lavoro excel...ma per settare tutti i campi della pagina al posto giusto?? Se qualcuno è in grado di aiutarmi gli mando senza problemi il codice relativo alla pagina e alla servlet fatte finora!! Vi ringrazio moltissimo in anticipo!!!

Daniele
sub_zero_ è offline   Rispondi citando il messaggio o parte di esso
Old 08-03-2010, 16:26   #2
Mixmar
Senior Member
 
L'Avatar di Mixmar
 
Iscritto dal: Feb 2002
Città: Trento
Messaggi: 962
Puoi provare ad utilizzare POI-HSSF; se hai fretta, guarda questo riassunto.
__________________
"Et Eärallo Endorenna utúlien. Sinome maruvan ar Hildinyar tenn' Ambar-metta!" -- Aragorn Elessar, Heir of Isildur
Mixmar -- OpenSuSE 11.1 on AMD 64 3000+ on DFI LanParty nF4-D | GeForce 6600 GT + Thermaltake Schooner on Samsung 710N
Storage -- ( 2 x Hitachi Deskstar 80 Gb + 1 x Hitachi 250 Gb ) = 1 RAID 5 + 1 Storage space LaCie Ethernet Disk Mini 250 Gb | HP - DV2150 EL MILAN CLAN
Mixmar è offline   Rispondi citando il messaggio o parte di esso
Old 08-03-2010, 16:52   #3
sub_zero_
Junior Member
 
Iscritto dal: Mar 2010
Messaggi: 16
Innanzi tutto ti ringrazio per la tua risposta. Il problema è che devo utilizzare la libreria jxl.jar che è quella che mi hanno detto di usare.

Sinceramente non so se le due librerie hanno qualche differenza tra loro, ma questa è quella che ho.

Se hai bisogno del codice di quello che ho fatto per potermi aiutare più facilmente ti mando i file interessati. Ti ringrazio moltissimo per la disponibilità...
sub_zero_ è offline   Rispondi citando il messaggio o parte di esso
Old 08-03-2010, 18:06   #4
kk3z
Senior Member
 
L'Avatar di kk3z
 
Iscritto dal: Nov 2003
Messaggi: 980
Excel può leggere una tabella html. Quindi se tu mandi in output una tabella html e usi i giusti header (content-type: application/excel o qualcosa di simile e content-disposition:attachment) puoi scaricare un bel file excel.
kk3z è offline   Rispondi citando il messaggio o parte di esso
Old 08-03-2010, 19:32   #5
sub_zero_
Junior Member
 
Iscritto dal: Mar 2010
Messaggi: 16
Quote:
Originariamente inviato da kk3z Guarda i messaggi
Excel può leggere una tabella html. Quindi se tu mandi in output una tabella html e usi i giusti header (content-type: application/excel o qualcosa di simile e content-disposition:attachment) puoi scaricare un bel file excel.

Questa è un'ottima cosa.... Quindi ricapitolando....se io ho una servlet che carica una pagina chiamata pippo.jsp e all'interno di questa pagina ho un pulsante che mi deve far esportare il tutto su un file .xls, creato come :

<form action="Export" method="get">
<input type ="submit" name="main" value="Export in .XLS" />
</form>

la nuova servlet Export nel metodo doGet(...) può fare quello che ho detto semplicemente mandando in output la tabella html?? Mi potresti dire brevemente le operazioni da fare all'interno del metodo doGet?...

Scusa per la mia ignoranza in materia, ma è la prima volta che mi capita una cosa del genere ed ho pochissimo tempo per farla...una volta che riesco nel mio intento studierò meglio le cose in modo da capirci anche qualcosa visto che è una cosa che mi piace pure molto...
sub_zero_ è offline   Rispondi citando il messaggio o parte di esso
Old 09-03-2010, 08:38   #6
sub_zero_
Junior Member
 
Iscritto dal: Mar 2010
Messaggi: 16
UP
sub_zero_ è offline   Rispondi citando il messaggio o parte di esso
Old 09-03-2010, 17:01   #7
ally
Bannato
 
L'Avatar di ally
 
Iscritto dal: Jan 2003
Città:
Messaggi: 4421
Quote:
Originariamente inviato da sub_zero_ Guarda i messaggi
UP
...mah con le POI in un oretta hai implementato la funzione...non puoi proprio usare altre librerie?...hai già guardato la documentazione di quelle imposte?...

...ciao Andrea...
ally è offline   Rispondi citando il messaggio o parte di esso
Old 09-03-2010, 18:14   #8
sub_zero_
Junior Member
 
Iscritto dal: Mar 2010
Messaggi: 16
Quote:
Originariamente inviato da ally Guarda i messaggi
...mah con le POI in un oretta hai implementato la funzione...non puoi proprio usare altre librerie?...hai già guardato la documentazione di quelle imposte?...

...ciao Andrea...

Grazie dell'interessamento...le POI non le ho mai utilizzate e non saprei come fare...mi hanno dato questa libreria jxs.jar e mi sono attenuto alle specifiche.
Il fatto è che non è proprio così semplice (o forse io non ci arrivo proprio!!)

Se ti va di farmi vedere un esempio con un po' di codice per capire come utilizzare queste POI e soprattutto da dove scaricarle per poterle aggiungere al mio progetto te ne sarei davvero grato...

Daniele
sub_zero_ è offline   Rispondi citando il messaggio o parte di esso
Old 10-03-2010, 07:39   #9
ally
Bannato
 
L'Avatar di ally
 
Iscritto dal: Jan 2003
Città:
Messaggi: 4421
Quote:
Originariamente inviato da sub_zero_ Guarda i messaggi
Grazie dell'interessamento...le POI non le ho mai utilizzate e non saprei come fare...mi hanno dato questa libreria jxs.jar e mi sono attenuto alle specifiche.
Il fatto è che non è proprio così semplice (o forse io non ci arrivo proprio!!)

Se ti va di farmi vedere un esempio con un po' di codice per capire come utilizzare queste POI e soprattutto da dove scaricarle per poterle aggiungere al mio progetto te ne sarei davvero grato...

Daniele
Codice:
try {
			HSSFWorkbook wb = new HSSFWorkbook();
			
			HSSFSheet sheet = wb.createSheet("pagina 1");
			HSSFRow row = null;
			row = sheet.createRow(0);
			row.createCell((short)0).setCellValue("xyz1");
			row.createCell((short)1).setCellValue("xyz2");
			
			HSSFSheet sheets = wb.createSheet("pagina 2");
			HSSFRow rows = null;
			rows = sheets.createRow(0);
			rows.createCell((short)0).setCellValue("xyz1");
			rows.createCell((short)1).setCellValue("xyz2");
			
			FileOutputStream fileOut = new FileOutputStream("filetest.xls");
			wb.write(fileOut);
			fileOut.close();
			
			
		} catch ( Exception ex ) {
			ex.printStackTrace();
		}
...un esempietto veloce...in sinto creo due pagine e per ogni pagina una riga con due celle alimentate da una stringa...

...ciao Andrea...
ally è offline   Rispondi citando il messaggio o parte di esso
Old 10-03-2010, 10:53   #10
sub_zero_
Junior Member
 
Iscritto dal: Mar 2010
Messaggi: 16
Grazie per l'aiuto, ma il mio problema è un altro. Sicuramente non mi sono spiegato bene. Cercherò di farlo adesso.

Io ho una pagina jsp chiamata "riepilogo" all'interno della quale ho un button al cliccare del quale mi deve far avere l'intera pagina riepilogo su un foglio Excel.
Cliccando questo bottone il controllo passa a una servlet "Export" nel metodo doGet. Fin qui credo di essere stato chiaro. Adesso il metodo doGet mi deve dare modo di creare tale pagina excel. Nel modo che mi hai detto te dovrei settare cella per cella dell'intera pagina e credo sia un lavoro molto lungo visto che la pagina "riepilogo" non consta di poche righe.

Mi chiedevo se ci fosse un modo per poter mandare in Input al Workbook la pagina riepilogo all'interno del metodo doGet della servlet che ti ho appena detto.

Spero di essere stato sufficientemente chiaro adesso

Daniele
sub_zero_ è offline   Rispondi citando il messaggio o parte di esso
Old 10-03-2010, 11:25   #11
ally
Bannato
 
L'Avatar di ally
 
Iscritto dal: Jan 2003
Città:
Messaggi: 4421
Quote:
Originariamente inviato da sub_zero_ Guarda i messaggi
...

Mi chiedevo se ci fosse un modo per poter mandare in Input al Workbook la pagina riepilogo all'interno del metodo doGet della servlet che ti ho appena detto.

Spero di essere stato sufficientemente chiaro adesso

Daniele
...beh il tutto sta a te...puoi salvare il file in una directory temp e mostrare il link a pagina per il download...puoi inviare l'xls in sessione...personalmente aggiungerei un bottone sulla pagina che se premuto richiede alla servlet/action/portlet di generare l'xls in base ai dati in sessione...fatto cio' salvi il file in una directory temp e visualizzi il link a video per il download...risparmiando la pesantezza di inviare alla pagina l'intero xls...

...ciao Andrea...
ally è offline   Rispondi citando il messaggio o parte di esso
Old 10-03-2010, 13:13   #12
sub_zero_
Junior Member
 
Iscritto dal: Mar 2010
Messaggi: 16
Quote:
Originariamente inviato da ally Guarda i messaggi
...beh il tutto sta a te...puoi salvare il file in una directory temp e mostrare il link a pagina per il download...puoi inviare l'xls in sessione...personalmente aggiungerei un bottone sulla pagina che se premuto richiede alla servlet/action/portlet di generare l'xls in base ai dati in sessione...fatto cio' salvi il file in una directory temp e visualizzi il link a video per il download...risparmiando la pesantezza di inviare alla pagina l'intero xls...

...ciao Andrea...

.... sinceramente non ho capito molto la soluzione
sub_zero_ è offline   Rispondi citando il messaggio o parte di esso
Old 10-03-2010, 13:39   #13
ally
Bannato
 
L'Avatar di ally
 
Iscritto dal: Jan 2003
Città:
Messaggi: 4421
Quote:
Originariamente inviato da sub_zero_ Guarda i messaggi
.... sinceramente non ho capito molto la soluzione
...scusa i dati normalmente come li passi alla jsp?...o come li peschi dallo strato persistente?...

...ciao Andrea...
ally è offline   Rispondi citando il messaggio o parte di esso
Old 10-03-2010, 13:41   #14
sub_zero_
Junior Member
 
Iscritto dal: Mar 2010
Messaggi: 16
i dati alla jsp me li vado a prendere da DB mysql...nella servlet poi uso la getParameter...
sub_zero_ è offline   Rispondi citando il messaggio o parte di esso
Old 10-03-2010, 13:44   #15
ally
Bannato
 
L'Avatar di ally
 
Iscritto dal: Jan 2003
Città:
Messaggi: 4421
Quote:
Originariamente inviato da sub_zero_ Guarda i messaggi
i dati alla jsp me li vado a prendere da DB mysql...nella servlet poi uso la getParameter...
...request.getParameter() ?...e hai annegato la logica mysql direttamente nella pagina?...

...ciao Andrea...
ally è offline   Rispondi citando il messaggio o parte di esso
Old 10-03-2010, 13:48   #16
sub_zero_
Junior Member
 
Iscritto dal: Mar 2010
Messaggi: 16
si...io non ho fatto tutto questo....mi hanno dato le pagine jsp già fatte....e dovevo connetterle fra loro con delle servelt. Nelle servelt ho fatto tutti i controlli sulla correttezza dei dati inseriti nel DB e il passaggio da una pagina all'altra.

Nell'ultima pagina devo annettere a quel bottone quello che ti ho spiegato prima e non ho proprio idea di come fare perchè non riesco in nessun modo a salvarmi la pagina per poi "passarla in Input" alla pagina Excel.
sub_zero_ è offline   Rispondi citando il messaggio o parte di esso
Old 10-03-2010, 13:54   #17
ally
Bannato
 
L'Avatar di ally
 
Iscritto dal: Jan 2003
Città:
Messaggi: 4421
Quote:
Originariamente inviato da sub_zero_ Guarda i messaggi
si...io non ho fatto tutto questo....mi hanno dato le pagine jsp già fatte....e dovevo connetterle fra loro con delle servelt. Nelle servelt ho fatto tutti i controlli sulla correttezza dei dati inseriti nel DB e il passaggio da una pagina all'altra.

Nell'ultima pagina devo annettere a quel bottone quello che ti ho spiegato prima e non ho proprio idea di come fare perchè non riesco in nessun modo a salvarmi la pagina per poi "passarla in Input" alla pagina Excel.
...veramente in sessione puoi mettere tutto cio' che credi e riprenderlo quando credi...

Codice:
request.getSession().setAttribute("oggettone",oggetto);
....ciao Andrea...
ally è offline   Rispondi citando il messaggio o parte di esso
Old 10-03-2010, 13:58   #18
sub_zero_
Junior Member
 
Iscritto dal: Mar 2010
Messaggi: 16
quindi te mi dici di fare nella servlet Export una

request.getSession()....

e quello che mi restituisce lo passo come parametro ai dati della pagina excel??
Scusa la mia ignoranza ma queste librerie che non sono di default di JDK non le ho proprio mai usate e mi restano ignote....
sub_zero_ è offline   Rispondi citando il messaggio o parte di esso
Old 10-03-2010, 14:02   #19
ally
Bannato
 
L'Avatar di ally
 
Iscritto dal: Jan 2003
Città:
Messaggi: 4421
Quote:
Originariamente inviato da sub_zero_ Guarda i messaggi
quindi te mi dici di fare nella servlet Export una

request.getSession()....

e quello che mi restituisce lo passo come parametro ai dati della pagina excel??
Scusa la mia ignoranza ma queste librerie che non sono di default di JDK non le ho proprio mai usate e mi restano ignote....
...posta il tuo codice...evitiamo di stravolgere quanto hai scritto fin ora...

...ciao Andrea...
ally è offline   Rispondi citando il messaggio o parte di esso
Old 10-03-2010, 14:07   #20
sub_zero_
Junior Member
 
Iscritto dal: Mar 2010
Messaggi: 16
ok....allora

Questa è la pagina jsp:

Codice:
<%-- 
    Document   : paginaRiepilogo
    Created on : 23-set-2009, 16.15.20
    Author     : Daniele Bertelli
--%>

<html>
    <%@page import="java.sql.*, java.text.DecimalFormat, java.util.GregorianCalendar, java.text.SimpleDateFormat, java.util.Calendar" %>
    <head>
        <title> WEST SYSTEMS </title>
        <script type="text/javascript">
            function SelectPost()
            {
                document.reload.method = "post";
                document.reload.action = "Riepilogo";
                document.reload.submit();
            }
        </script>

    </head>
    <body>
        <%!private static final String DATE_FORMAT = "dd MMMMMMMMM yyyy";%>
        <%
            String par = (String) request.getAttribute("parametro");
            String url = "com.mysql.jdbc.Driver";
            Connection conn = null;
            try {
                Class.forName(url);
                conn = DriverManager.getConnection("jdbc:mysql://localhost/tirocinio?user=root&password=10a5gr8b");
            } catch (Exception exc) {
                out.println(exc.toString());
            }

        %>
        <div align="center">
            <strong>
                <label for="Intestazione"> RIEPILOGO DATI PREVENTIVO </label><br><br>
            </strong>
            <form name="myform" action="PrimaPagina" method="get">
                <p>
                </p>
                <table width="688" border="0" cellspacing="1" cellpadding="2">
                    <%Statement stm = null, stm2 = null;
            ResultSet rst = null;
            String queryPrev = "";
            int ID = 0;
            stm = conn.createStatement();
            stm2 = conn.createStatement();
            if (par.equalsIgnoreCase("nessun_parametro")) {
                queryPrev = "SELECT * FROM preventivo";
            } else {
                String[] tmp = par.split(",");
                ID = Integer.parseInt(tmp[0]);
                queryPrev = "SELECT * FROM preventivo WHERE IDpreventivo=" + ID + ";";
            }
            rst = stm.executeQuery(queryPrev);
            ResultSet prev = stm2.executeQuery("SELECT * FROM preventivo");
            rst.last();
            ID = Integer.parseInt(rst.getString("IDpreventivo"));
                    %>
                    <tr>
                        <td width="154"><label for="Nome" >Nome: </label></td>
                        <td width="523" bgcolor="#EAEAEA"><input type="text" name="nome" size="50" value="<%=rst.getString("Nome")%>" readonly/></td>
                    </tr>
                    <tr>
                        <td><label for="Descrizione" >Descrizione:</label></td>
                        <td bgcolor="#DBDBDB"><input type="text" name="descrizione" size="50" value="<%=rst.getString(3)%>" readonly/></td>
                    </tr>
                    <tr>
                        <%Statement temp = null;
            ResultSet rstTemp = null;
            temp = conn.createStatement();
            rstTemp = temp.executeQuery("SELECT Nome FROM clienti WHERE IDcliente=" + Integer.parseInt(rst.getString(6)) + ";");
            rstTemp.next();
                        %>
                        <td><label for="Committente" >Committente:</label></td>
                        <td bgcolor="#DBDBDB"><input type="text" name="committente" size="50" value="<%=rstTemp.getString("Nome")%>" readonly/></td>
                    </tr>
                    <tr>
                        <%temp = null;
            rstTemp = null;
            temp = conn.createStatement();
            rstTemp = temp.executeQuery("SELECT Nome, Cognome FROM utenti WHERE IDutente=" + Integer.parseInt(rst.getString(7)) + ";");
            rstTemp.next();
                        %>
                        <td><label for="Responsabile" >Responsabile:</label></td>
                        <td bgcolor="#DBDBDB"><input type="text" name="responsabile" size="50" value="<%=rstTemp.getString("Nome") + " " + rstTemp.getString("Cognome")%>"readonly/></td>
                    </tr>
                    <tr>
                        <%String[] data = rst.getString(4).split("-");
            GregorianCalendar gc = new GregorianCalendar(Integer.parseInt(data[0]),
                    Integer.parseInt(data[1]) - 1, Integer.parseInt(data[2]));
            SimpleDateFormat sdf = new SimpleDateFormat(DATE_FORMAT);
                        %>
                        <td><label for="Inizio" >Data di inizio:</label></td>
                        <td bgcolor="#DBDBDB"><input type="text" name="inizio" size="50" value="<%=sdf.format(gc.getTime())%>" readonly/></td>
                    </tr>
                    <tr>
                        <td><label for="Durata">Durata Preventivata:</label></td>
                        <td bgcolor="#DBDBDB"><input type="text" name="durata" size="50" value="<%=rst.getString(5)%> mesi" readonly/></td>
                    </tr>
                    <tr><td></td></tr>
                    <tr><td></td></tr>
                    <tr>
                        <%gc.add(Calendar.MONTH, Integer.parseInt(rst.getString(5)));%>
                        <td><label for="Fine"><b>Fine prevista per il:</b></label></td>
                        <td bgcolor="#DBDBDB"><b><input type="text" name="fine" size="50" value="<%=sdf.format(gc.getTime())%>" readonly/></b></td>
                    </tr>
                </table>
                <br><br>
                <%
            /* Calcolo il COSTO TOTALE MANODOPERA */
            temp = null;
            rstTemp = null;
            temp = conn.createStatement();
            rstTemp = temp.executeQuery("SELECT IDqualifica, NumeroOre FROM preventivoqualifica WHERE IDpreventivo=" + Integer.parseInt(rst.getString(1)) + ";");
            double costo = 0.00;
            Statement in = null;
            while (rstTemp.next()) {
                in = conn.createStatement();
                ResultSet s = in.executeQuery("SELECT CostoOrario FROM qualifica WHERE IDqualifica=" + rstTemp.getString("IDqualifica") + ";");
                s.next();
                costo += Double.parseDouble(s.getString("CostoOrario")) * Double.parseDouble(rstTemp.getString("NumeroOre"));
                in.close();
            }
            DecimalFormat format = new DecimalFormat("0.00");
                %>
                <label for="Costo">
                    <b><font color="blue">Costo della manodopera qualificata utilizzata:</font></b>
                </label>
                <input type="text" name="durata" size="20" value="<%=format.format(costo)%>" readonly/>
                <label for="euro">Euro</label><br><br>
                <table width="500" border="0" cellspacing="1" cellpadding="2">
                    
                    <% Statement att = null, att2 = null, att3 = null, inQ = null;
            ResultSet rstAtt = null, rstQual = null;
            att = conn.createStatement();
            att2 = conn.createStatement();
            att3 = conn.createStatement();
            inQ = conn.createStatement();
            rst = att.executeQuery("SELECT * FROM preventivo;");
            rst.last();
            rstAtt = att2.executeQuery("SELECT * FROM attivitapreventivo WHERE IDpreventivo=" + ID + ";");
            while (rstAtt.next()) {
                rstQual = inQ.executeQuery("SELECT * FROM preventivoqualifica WHERE IDpreventivo=" + ID + " AND IDattivita=" + Integer.parseInt(rstAtt.getString("IDattivita")) + ";");
                rstTemp = att3.executeQuery("SELECT Nome FROM attivita WHERE IDattivita=" + Integer.parseInt(rstAtt.getString("IDattivita")) + ";");
                rstTemp.next();
                    %>
                    <tr>
                        <td></td>
                        <td><hr noshade size="1" style="color:black"></td>
                        <td><hr noshade size="1" style="color:black"></td>
                        <td></td>
                    </tr>
                    <tr>
                        <td width="150"><label for="Attività" style="color:blue">Attivit&agrave;</label></td>
                        <td width="150"><label for="Durata" style="color:blue">Durata</label></td>
                        <td width="150"><label for="Numero Ore" style="color:blue">Numero di ore</label></td>
                        <td width="50"><label for="Shift" style="color:blue" >Shift</label></td>
                    </tr>
                    <tr>
                        <td width="150"> <%=rstTemp.getString("Nome")%></td>
                        <td width="150"><%=rstAtt.getString("Durata")%> mese/i</td>
                        <td width="150"><%=rstAtt.getString("NumeroOre")%></td>
                        <td width="50"><%=rstAtt.getString("ShiftTemporale")%></td>
                    </tr>

                    <%
                while (rstQual.next()) {
                    rstTemp = att3.executeQuery("SELECT Descrizione FROM qualifica WHERE IDqualifica=" + Integer.parseInt(rstQual.getString("IDqualifica")) + ";");
                    rstTemp.next();
                
                    %>
                    <tr>
                        <td width="150"></td>
                        <td width="150"><label for="Durata" style="color:red">Qualifica</label></td>
                        <td width="150"><label for="Numero Ore" style="color:red">Numero di ore</label></td>
                        <td width="50"><label for="Shift" style="color:red" >Shift</label></td>
                    </tr>
                    <tr>
                        <td width="150"></td>
                        <td width="150"><%=rstTemp.getString("Descrizione")%></td>
                        <td width="150"><%=rstQual.getString("NumeroOre")%></td>
                        <td width="50"><%=rstQual.getString("ShiftTemporale")%></td>
                    </tr>
                    
                <%
                }
            }%>
                </table>
                <br><br><input type="submit" name="submit" value="Inserisci altri preventivi"/>
            </form>
        </div>
        <p></p>
        <div align="center">
            <table border="0">
                <tr>
                    <td width="100" align="center" valign="middle">
                        <form action="Start" method="get">
                            <input type ="submit" name="main" value="Torna alla HomePage" />
                        </form>
                    </td>
                    <td width="100" align="center" valign="middle">
                        <p>
                            <label for=spazio" ></label>
                        </p>
                    </td>
                    <td width="100" align="center" valign="middle">
                        <p>
                            <label for=Scelta" >Scegli il preventivo da visualizzare</label>
                        </p>
                    </td>
                    <td width="100" align="center" valign="middle">
                        <form action="Riepilogo" name="reload" method="get">
                            <select name="Prev" id="Prev" onchange="SelectPost()">
                                <option selected> <%=" "%></option>
                                <% while (prev.next()) {%>
                                <option>
                                    <%=prev.getString("IDpreventivo") + ", " + prev.getString("Nome")%>
                                </option>
                                <%}%>
                            </select>
                        </form>
                    </td>
                </tr>
                <tr>
                    <td></td>
                    <td></td>

                </tr>
            </table>

        </div>
        <p></p>
        <div align="center">
            <table border="0">
                <tr>
                    <td width="100" align="center" valign="middle">
                        <form action="Export" method="get">
                            <input type ="submit" name="main" value="Export in .XLS" />
                        </form>
                    </td>
                    <td></td>
                    <td></td>
                    <td></td>
                </tr>
                <tr>
                    <td></td>
                    <td></td>
                </tr>
            </table>
        </div>
    </body>
</html>
mentre questa è la servlet che dovrei fare...qui c'è solo un esempio da me fatto per la creazione di un nuovo foglio excel con una cella riempita....funzionante

Codice:
import java.io.IOException;
import java.io.OutputStream;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import jxl.Workbook;
import jxl.write.Label;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;

public class Export extends HttpServlet {

    @Override
    public void doGet(HttpServletRequest request,
            HttpServletResponse response)
            throws ServletException, IOException {
        OutputStream out = null;
        try {
            response.setContentType("application/vnd.ms-excel");
            response.setHeader("Content-Disposition",
                    "attachment");
            WritableWorkbook w = Workbook.createWorkbook(response.getOutputStream());
            WritableSheet s = w.createSheet("Demo", 0);
            s.addCell(new Label(0, 0, "Hello World"));
            w.write();
            w.close();

        } catch (Exception e) {
            throw new ServletException("Exception in Excel Sample Servlet", e);
        } finally {
            if (out != null) {
                out.close();
            }
        }
    }
}

Grazie ancora per l'immensa disponibilità....
sub_zero_ è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Cybersecurity: email, utenti e agenti IA, la nuova visione di Proofpoint Cybersecurity: email, utenti e agenti IA, la nuo...
Hisense A85N: il ritorno all’OLED è convincente e alla portata di tutti Hisense A85N: il ritorno all’OLED è convi...
Recensione Borderlands 4, tra divertimento e problemi tecnici Recensione Borderlands 4, tra divertimento e pro...
TCL NXTPAPER 60 Ultra: lo smartphone che trasforma la lettura da digitale a naturale TCL NXTPAPER 60 Ultra: lo smartphone che trasfor...
Un fulmine sulla scrivania, Corsair Sabre v2 Pro ridefinisce la velocità nel gaming Un fulmine sulla scrivania, Corsair Sabre v2 Pro...
Condannata a Londra la protagonista dell...
Addio Amazon? ChatGPT ora ti fa comprare...
YouTube chiude la causa con Trump: accor...
Avio: contratto da 40 milioni di € da ES...
Claude Sonnet 4.5, il nuovo modello di A...
Silent Hill f è un successo: gi&a...
Nuova Jeep Compass: aperti i preordini p...
La PS5 Slim con SSD più piccolo s...
Zero combustibili fossili e controllo qu...
Corsair NAUTILUS 360 RS LCD: raffreddame...
Nuovo record nel mondo dei computer quan...
Sony e Universal combatteranno l'IA con....
Il Chips Act europeo attuale è un...
OnePlus 15: debutto globale con design '...
Amazon Prime: addio alla prova gratuita ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 05:50.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v