Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce
Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce
REDMI Note 17 Pro porta in fascia media una batteria da 8.340 mAh con ricarica HyperCharge a 67W, un display AMOLED da 6,83 pollici capace di picchi di luminosità molto elevati e una struttura certificata TÜV SÜD contro cadute e infiltrazioni d'acqua, il tutto racchiuso in una scocca da 223 grammi. Lo abbiamo provato per diversi giorni tra fotocamera, prestazioni, autonomia e prezzo sul mercato italiano
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema
Insta360 Luna Ultra integra un sensore da 1 pollice 8K, ottiche Leica e triplo chip IA. Tra schermo OLED rimovibile, workflow I-Log a 10 bit e stabilizzazione a tre assi, analizziamo le doti tecniche di una gimbal camera pensata per i professionisti
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 23-06-2008, 14:14   #1
dnarod
Senior Member
 
L'Avatar di dnarod
 
Iscritto dal: Nov 2002
Messaggi: 4329
[servlet] out.println di contenuti dinamici?

non funziona una cosa (fatta a naso) del tipo (all interno di una servlet):

out.println("<jsp:include page=\"pagina.jsp\"/>");

nel senso che non si visualizza nulla nella pagina (nel sorgente html della pagina caricata pero ottengo <jsp:include page="pagina.jsp"/> che non include la pagina);

la domanda è: come si puo ottenere un effetto simile? chiedo perche ho necessita di includere delle jsp in un div (tramite ajax) ma per il momento riesco solo a inserire codice html (testo, immagini,...)

voglio poter fare in modo che ajax infili dentro il div target semplicemente un include di delle jsp opportune che visualizzeranno cio che devono visualizzare...come si fa? tnx...
__________________
|18k+|slk800|a7n8x|1Gb/ddr400|Gf4mx440|Pio108|WD 160Gb|Case|Uni|Album|AnimeClick|OneManga|
|ClassicThrash!|BNR Metal|TrueMetal|Dime|Chuck|
dnarod è offline   Rispondi citando il messaggio o parte di esso
Old 23-06-2008, 16:10   #2
dnarod
Senior Member
 
L'Avatar di dnarod
 
Iscritto dal: Nov 2002
Messaggi: 4329
si, la soluzione delle palle ce l ho: prendo un file (una jsp per esempio), lo leggo per righe, lo metto in una stringa....poi nella servlet out.println(stringaDelFile); ....cosi posso metterci dentro qualsiasi cosa, ok...ma va da se che non avrei il coraggio di presentarmi davanti a chi mi ha chiesto di fare il progetto (con che faccia potrei spiegare una cagata simile?)

deve esistere un modo intelligente per ottenere cio che mi interessa...right?
__________________
|18k+|slk800|a7n8x|1Gb/ddr400|Gf4mx440|Pio108|WD 160Gb|Case|Uni|Album|AnimeClick|OneManga|
|ClassicThrash!|BNR Metal|TrueMetal|Dime|Chuck|
dnarod è offline   Rispondi citando il messaggio o parte di esso
Old 24-06-2008, 11:15   #3
dnarod
Senior Member
 
L'Avatar di dnarod
 
Iscritto dal: Nov 2002
Messaggi: 4329
rettifico, non va neanche la soluzione delle palle: se devo inserire jsp in cui vi sia, per esempio, codice javascript, non funziona (probabilmente non prende gli elementi in modo giusto, non so)...eppure ci deve essere un modo, ho googlato il mondo e non trovo una ceppa........
__________________
|18k+|slk800|a7n8x|1Gb/ddr400|Gf4mx440|Pio108|WD 160Gb|Case|Uni|Album|AnimeClick|OneManga|
|ClassicThrash!|BNR Metal|TrueMetal|Dime|Chuck|
dnarod è offline   Rispondi citando il messaggio o parte di esso
Old 24-06-2008, 11:24   #4
lovaz
Senior Member
 
L'Avatar di lovaz
 
Iscritto dal: Jul 2002
Messaggi: 4334
Ti va bene un forward?

http://www.java-tips.org/java-ee-tip...servlet-t.html
lovaz è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 15:38   #5
dnarod
Senior Member
 
L'Avatar di dnarod
 
Iscritto dal: Nov 2002
Messaggi: 4329
la forward forwarda a una pagina...stavo usando ajax proprio perche non voglio che la pagina cambi (voglio refreshare solo un div nel quale si visualizzino dei contenuti qualsiasi)...altrimenti avrei fatto mille jsp diverse tutte con la stessa struttura e cambiando solo il pezzo che mi interessava (non posso credere che esista solo un metodo cosi orribile)
__________________
|18k+|slk800|a7n8x|1Gb/ddr400|Gf4mx440|Pio108|WD 160Gb|Case|Uni|Album|AnimeClick|OneManga|
|ClassicThrash!|BNR Metal|TrueMetal|Dime|Chuck|
dnarod è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 15:54   #6
vladix
Member
 
L'Avatar di vladix
 
Iscritto dal: Jan 2008
Città: roma
Messaggi: 296
out.println nelle servlet nn si usa + gia da deceni ...

e poi ( se ho ben capito ) tu leggi una jsp e la metti nella servlet ? beh non serve perche una jsp compilata E una servlet .

non ho capito perche non usi le jsp ... cmq se vuoi aggiornare il div con ajav il tag <jsp:include nn servira a nulla ... xche quando entra in scena ajax il tag ormai e compilato ...
vladix è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 16:01   #7
vladix
Member
 
L'Avatar di vladix
 
Iscritto dal: Jan 2008
Città: roma
Messaggi: 296
creati una servlet che la tua funzione ajax chiamera , poi dentro (la servlet) ci metti qualcosa del genere

Codice:
        response.setContentType("application/xml");
        response.getWriter().write(  qui ci metti il documento xml che visualizerai poi nella pagina ( come stringa ) ); 
        response.getWriter().close();
        response.flushBuffer();
vladix è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 21:02   #8
dnarod
Senior Member
 
L'Avatar di dnarod
 
Iscritto dal: Nov 2002
Messaggi: 4329
è esattamente quello che faccio (ma non con xml, non saprei come maneggiarli)...ho capito empiricamente che scrivere write di una stringa tipo "<jsp:include bla bla..." non funzionerebbe...non risolvo comunque il problema; posso includere cio che voglio, anche un xml, ma a me serve includere una jsp (che a sua volta fara le cose che deve fare)...l alternativa è che io sbagli totalmente approccio al problema (che è possibilissimo giacche non ho esperienza e non vado matto per il web)


se cosi fosse, accetterei suggerimenti per fare la cosa seguente: voglio avere un unica jsp, con un div che cambi (un po di contenuti diversi); per esempio visualizzi il risultato di dati succhiati da un db (non so, una tabella con i dati e alcune operazioni possibili da fare su questi dati)...voglio che la pagina principale cambi possibilmente MAI (cioe niente sbattoni di mille jsp diverse e mille forward nella servlet)...finche si tratta di visualizzare solo dati (in pratica formattare una stringa e inserirla nel div) è una stupidaggine, ma vorrei che il contenuto infilato dentro questo fantomatico div sia dinamico (possa contenere form o gettare property da un bean)...chiedo troppo?
__________________
|18k+|slk800|a7n8x|1Gb/ddr400|Gf4mx440|Pio108|WD 160Gb|Case|Uni|Album|AnimeClick|OneManga|
|ClassicThrash!|BNR Metal|TrueMetal|Dime|Chuck|
dnarod è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 21:10   #9
dnarod
Senior Member
 
L'Avatar di dnarod
 
Iscritto dal: Nov 2002
Messaggi: 4329
dimenticavo:

Codice:
response.getWriter().write(  qui ci metti il documento xml che visualizerai poi nella pagina ( come stringa ) );
ok che ho una jsp sta roba non va....ma con una qualsiasi cosa: come si fa per farlo decentemente? cioe, un file xml deve essere messo sotto forma di stringa per fare una cosa simile....e cio fa decisamente ribrezzo (quello che ho detto nel 2 post)?
__________________
|18k+|slk800|a7n8x|1Gb/ddr400|Gf4mx440|Pio108|WD 160Gb|Case|Uni|Album|AnimeClick|OneManga|
|ClassicThrash!|BNR Metal|TrueMetal|Dime|Chuck|
dnarod è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2008, 22:00   #10
vladix
Member
 
L'Avatar di vladix
 
Iscritto dal: Jan 2008
Città: roma
Messaggi: 296
ma io non ho detto di mettere quella roba nella jsp ...

tu devi avere una jsp e una servlet ... nella jsp ci metti il codice di "pagina iniziale" ... qualcosa tipo

Codice:
<%@ page contentType="text/html;charset=windows-1252"%>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"/>
    <title>Amministrazione</title>
    <script>
        function loadContent(key){
            document.getElementById('content').innerHTML = someAjaxFunction("Servlet1?contenutoDaCarricare="+key);
        }
    </script>
  </head>
  <body>
     <div id="content">
     </div>
     <input type="button" onclick="loadContent('content1.txt');"/><br />
     <input type="button" onclick="loadContent('content2.txt');"/><br />
     <input type="button" onclick="loadContent('content3.txt');"/><br />
  </body>
</html>
poi una servlet che in base al valore della variabile contenutoDaCarricare ti carica un file diverso ....

Codice:
public class Servlet1 extends HttpServlet {
    private static final String CONTENT_TYPE = "text/xml;";

    public void doPost(HttpServletRequest request, 
                      HttpServletResponse response) throws ServletException, IOException {
                      
        String  file = request.getParameter("contenutoDaCarricare");
        
        // InputStream stream = this.getServletContext().getResourceAsStream(file);
        // leggi il file in qualche modo 
        response.setContentType(CONTENT_TYPE);
        response.getWriter().write("contenuto del file letto");
        response.getWriter().close();
        response.flushBuffer();        
    }
}
poi naturalmente una funzione javascript(ajax) che ti carrica la url che ti gli passi come parametro ...

Codice:
function Ajax(URL){ 

 this.getXMLInstance = function() {
     var XHR = null,
                    browserUtente = navigator.userAgent.toUpperCase();
        if(typeof(XMLHttpRequest) === "function" || typeof(XMLHttpRequest) === "object"){
                XHR = new XMLHttpRequest();
        }else if(window.ActiveXObject && browserUtente.indexOf("MSIE 4") < 0) {
                if(browserUtente.indexOf("MSIE 5") < 0)
                        XHR = new ActiveXObject("Msxml2.XMLHTTP");
                else
                        XHR = new ActiveXObject("Microsoft.XMLHTTP");
        }
        return XHR;
    }
	
	this.getMsg = function (){
      var ajax = this.getXMLInstance(); 
      var _response = "";
      ajax.open("POST" , URL , false);
      ajax.setRequestHeader("text/xml" , "application/x-www-form-urlencoded");
     // ajax.send(queryString);
      	    if(ajax.status == 200){
                 _response = ajax.responseText;
	        } 
      return _response;
    }
}

function someAjaxFunction(url){
    var ajax = new Ajax(url);
	return ajax.getMsg();
}
nn so se la funzione js funziona , ( ma dovrebbe rendere l'idea ... )
vladix è offline   Rispondi citando il messaggio o parte di esso
Old 27-06-2008, 00:50   #11
dnarod
Senior Member
 
L'Avatar di dnarod
 
Iscritto dal: Nov 2002
Messaggi: 4329
evidentemente non mi sono spiegato bene....faccio esattamente in quel modo, è dall' inizio che lo dico....e ho aggiunto che se il file che gli passo contiene roba tipo [...]<jsp:qualcosa ..../> [...] non funziona (e ora ho tranquillamente capito il perche)...io pero voglio ottenere esattamente quell effetto....cioe non mi interessa dargli in pasto un file con solo codice html (a quel punto ci scrivo hello world a mano)...voglio inserire nel div qualcosa che a sua volta peschi da un bean e mi restituisca le belle stringhette che vengano interpretate e visualizzate in maniera corretta. è decisamente da escludere che acceda al db, faccia le query, formatti i dati e li mandi indietro nel responsetext tutto nella servlet (sarebbe proprio una porcheria), in quel modo dei bean che uso me ne farei poco (mentre li devo usare)...


un problema piu marginale ma che da una googlata rapida non ho evinto è: io ho il mio grazioso bottone che chiama la f ajax che va al controller che rimanda il testo che va a finire nel mio magico div....se clicco quel bottone x volte nel div vanno a finire x copie del contenuto...deve esistere un trick per far si che cio sia evitabile, ma non lo conosco (o almeno sembra che non ci sia flush che tenga)

ho capito anche cosa volevi dire con:
Quote:
beh non serve perche una jsp compilata E una servlet
pensala in questi termini: in quel famigerato div voglio far apparire una cosa tipo:

Codice:
<jsp:usebean bla bla......>
<jsp:getproperty bla bla....>
e cio facendo, dentro la servlet, write(direttamente quel codice || un file che lo contiene) non si puo fare....then?

tolto che mi sono gia aggiustato (ho abbandonato l idea di ajax per tornare a fare mille crappy jsp e la servlet che forwarda a quella opportuna...sto ajax stava gia diventando troppo sbattone per una scemenza di progetto che devo fare), mi rimane la curiosita di rendere quello di cui ho parlato sopra con ajax
__________________
|18k+|slk800|a7n8x|1Gb/ddr400|Gf4mx440|Pio108|WD 160Gb|Case|Uni|Album|AnimeClick|OneManga|
|ClassicThrash!|BNR Metal|TrueMetal|Dime|Chuck|
dnarod è offline   Rispondi citando il messaggio o parte di esso
Old 27-06-2008, 09:01   #12
vladix
Member
 
L'Avatar di vladix
 
Iscritto dal: Jan 2008
Città: roma
Messaggi: 296
Quote:
Originariamente inviato da dnarod Guarda i messaggi
io pero voglio ottenere esattamente quell effetto....cioe non mi interessa dargli in pasto un file con solo codice html (a quel punto ci scrivo hello world a mano)...voglio inserire nel div qualcosa che a sua volta peschi da un bean e mi restituisca le belle stringhette che vengano interpretate e visualizzate in maniera corretta. è decisamente da escludere che acceda al db, faccia le query, formatti i dati e li mandi indietro nel responsetext tutto nella servlet (sarebbe proprio una porcheria), in quel modo dei bean che uso me ne farei poco (mentre li devo usare)...
allora se vuoi farlo con ajax non puoi usare codice lato server nei file che includi dinamicamente nella pagina ( e ovvio che devi riaggiornare la pagina x compilarla ) , una alternativa sarebbe di creare dei file xsl con dentro il contenuto del div , poi invece di usare i tag <jsp: usi i tag <xsl: ( i valori delle variabili li prendera da un file xml ( puoi serializzare il tuo bean in formato xml con java.beans.XMLEncoder ) oppure puoi settare le variabili da passare al file xsl direttamente nella servlet ...

Codice:
InputStream xsl = null; 
InputStream xml = null;

PrintWriter out = response.getWriter();
TransformerFactory tFactory = TransformerFactory.newInstance();
Transformer transformer = null;

try{

		transformer = tFactory.newTransformer(new StreamSource(xsl));
		
        // setta un parametro da passare al file xsl
		transformer.setParameter("xd" , bean.getXd());
		transformer.transform(new StreamSource(xml)  , new StreamResult(out));
		out.close();
		response.flushBuffer();
} catch (TransformerConfigurationException e) {
   // TODO       
} catch (TransformerException e) {
   // TODO
}
non e il migliore dei modi ... ma e semplice
vladix è offline   Rispondi citando il messaggio o parte di esso
Old 27-06-2008, 09:04   #13
vladix
Member
 
L'Avatar di vladix
 
Iscritto dal: Jan 2008
Città: roma
Messaggi: 296
Quote:
Originariamente inviato da dnarod Guarda i messaggi
un problema piu marginale ma che da una googlata rapida non ho evinto è: io ho il mio grazioso bottone che chiama la f ajax che va al controller che rimanda il testo che va a finire nel mio magico div....se clicco quel bottone x volte nel div vanno a finire x copie del contenuto...deve esistere un trick per far si che cio sia evitabile, ma non lo conosco (o almeno sembra che non ci sia flush che tenga)
se tu fai magicoDiv.innerHTML = testo; il contenuto del div viene sovrascritto , ( mi sa che tu fai magicoDiv.appendChild )
vladix è offline   Rispondi citando il messaggio o parte di esso
Old 27-06-2008, 10:39   #14
dnarod
Senior Member
 
L'Avatar di dnarod
 
Iscritto dal: Nov 2002
Messaggi: 4329
provero a fare come dici (era probabilmente quello che mi serviva, ma mi devo skillare un attimo con xml) tnx!

eppure faccio innerHtml, non appendchild
__________________
|18k+|slk800|a7n8x|1Gb/ddr400|Gf4mx440|Pio108|WD 160Gb|Case|Uni|Album|AnimeClick|OneManga|
|ClassicThrash!|BNR Metal|TrueMetal|Dime|Chuck|
dnarod è offline   Rispondi citando il messaggio o parte di esso
Old 27-06-2008, 10:45   #15
vladix
Member
 
L'Avatar di vladix
 
Iscritto dal: Jan 2008
Città: roma
Messaggi: 296
dacci n occhiata a questa guida xsl e anche a questa guida xml

Quote:
Originariamente inviato da dnarod Guarda i messaggi
eppure faccio innerHtml, non appendchild
xche nn posti un pezzo di codice cosi magari si riesce a capire meglio il problema ...
vladix è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce Recensione REDMI Note 17 Pro: il midrange con ba...
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema Insta360 Luna Ultra: la potenza del sensore da 1...
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Gears of War: E-Day raggiunge la fase Go...
GTA 6 avrà un'edizione fisica, ma...
Pangram arriva su Gmail per identificare...
ASUS ProArt Display OLED: quattro nuovi ...
Saldi Autunnali Mammotion: fino a 369 € ...
La BEI annuncia un nuovo Consiglio di es...
Il board di Meta ordina la rimozione di ...
Sony 400mm f/4.5 e 600mm f/6.3 GM: un gr...
Anche gli avvocati sono a rischio? OpenA...
JBL Tune Beam 2 a 59€ (invece di 99€): a...
Pioggia di sconti con Engwe: e-bike con ...
HONOR Pad 20 e Pad 20 Pro: due tablet pe...
La difesa secondo Thales: arriva HexaFor...
Lo stile di Corsair, la qualità p...
Su Amazon 2 MacBook Pro con chip M5 Pro,...
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: 12:31.


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