Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2010
    Messaggi
    457

    collegarsi a webstat da jsp

    salve ragazzi,
    dovrei utilizzare webstat per sapere le pagine piu' visitate, le prime 20.
    Da codice (jsp) sapete come si fa a collegare a webstat e ottenere una lista di 20 elemnti??


    GRAZIE

  2. #2
    Utente di HTML.it L'avatar di desa
    Registrato dal
    Oct 2008
    Messaggi
    569
    Come da regolamento, il crosspost è vietato su tutto il forum: hai già aperto una discussione sullo stesso argomento, non devi crearne di nuove.

    Non ho idea di cosa sia webstat (posso intuirne la funzione, ma cos'è? Una piattaforma? Un servizio online?) ma le soluzioni principali che vedo sono 3:
    - accedi al database con le statistiche ed estrai quanto desiderato;
    - ti connetti a dei servizi esposti dal sistema (web o non web);
    - ti connetti alle pagine di reportistica ed estrai dall'HTML quanto desiderato.

    I primi due casi sono vincolati all'esistenza di queste funzionalità (da verificare sulla documentazione)... la terza è certamente più complessa da realizzare, ma è l'ultima spiaggia se il sistema non prevede accessi di altro tipo.

    La mia risposta, naturalmente, risente del fatto che non hu un'idea precisa di cosa stiamo parlando... vuoi provare a fornire informazioni più precise?

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2010
    Messaggi
    457
    utilizzo tomcat come server e opencms per la gestione dei contenuti.
    Una volta creato il sito, devo mostrare le prime 20 pagine e documenti piu' visitati.
    Ho fatto un giro su internet e ho trovato webstat e google analisys, ma non mi è chiaro 1)come funzionano 2) come richiare da jsp una funzionalità che mi estragga le prime 20 pagine piu' visitate....

  4. #4
    Utente di HTML.it L'avatar di desa
    Registrato dal
    Oct 2008
    Messaggi
    569
    Come ti ho già detto, dovresti consultare la documentazione per trovare le risposte che cerchi.

    In alternativa, se si tratta solo di monitorare le pagine più visitate, puoi provare a implementare tu una cosa del genere: ad ogni richiesta vai su un DB a incrementare un counter associato a quell'URL (vedi
    http://tomcat.apache.org/tomcat-5.5-...tListener.html)
    mentre per ottenere le pagine più visitate fai una query sul database, ordinando i risultati in base alle "hits"

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2010
    Messaggi
    457
    Quindi avrei l'interfaccia:

    Interface ServletRequestListener


    dalla quale dovrei implementare i metodi:
    public void requestDestroyed(ServletRequestEvent sre)
    public void requestInitialized(ServletRequestEvent sre)


    allora quando siamo in una jsp dovrebbe essere invocata requestInitialized
    che si connette al database e va a scriverci sopra....

    ma la classe che implemeta ServletRequestListener non la devo richiamare ogni volta all'interno delle jsp?

    e inoltre ServletRequestEvent che passo ai metodi come devono essere fatte?

  6. #6
    Utente di HTML.it L'avatar di desa
    Registrato dal
    Oct 2008
    Messaggi
    569
    Non ho mai avuto occasione di utilizzarla, ma ho solo visto la documentazione (cosa che consiglio di fare anche a te)...
    Comunque, se si comporta come i SessionListener e i ContextListener, il tutto dovrebbe essere gestito dal servlet container: è lui che quando riceve una nuova richiesta va a invocare la classe che implementa questa servlet. L'unica cosa che dovresti fare tu (a parte scriverla) è dichiararla nel descrittore dell'applicazione web.xml, nella sezione "listeners"

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2010
    Messaggi
    457
    scrivendo i metodi:

    public void requestDestroyed(ServletRequestEvent sre)
    public void requestInitialized(ServletRequestEvent sre)


    e andando a mettere semplicemente la classe in listener(di web.xml) , se ne occuperebbe tomcat..giusto? tale classe in quale directory va inserita? forse in bin?

    In public void requestInitialized(ServletRequestEvent sre)
    dovrei collegarmi al database per scrivere su una tabella,il parametro sre come lo devo istanziare oppure cosa ci devo passare dalla jsp?

    invece nel metodo public void requestDestroyed(ServletRequestEvent sre)
    cosa ci devo scrivere ? forse devo scrivere il codice che chiude la connessione al database?

    Inoltre hai parlato di documentazione, io ho letto e trovato le api java in merito, mi potresti consigliare un link o il materiale dal quale ti sei informato?

    grazie mille per l'attenzione

  8. #8
    Utente di HTML.it L'avatar di desa
    Registrato dal
    Oct 2008
    Messaggi
    569
    e andando a mettere semplicemente la classe in listener(di web.xml) , se ne occuperebbe tomcat..giusto?
    Non ho avuto modo di provarla, ma se si comporta come gli altri listener sì, è così.

    tale classe in quale directory va inserita? forse in bin?
    No, normalmente va in \WEB-INF\classes\ della tua applicazione web.

    In public void requestInitialized(ServletRequestEvent sre)
    dovrei collegarmi al database per scrivere su una tabella,il parametro sre come lo devo istanziare oppure cosa ci devo passare dalla jsp?
    Per quanto detto, "sre" te lo setta opportunamente Tomcat e tu dalla JSP non devi fare un bel niente. Consulta la documentazione di ServletRequestEvent per verificare quali informazioni puoi ottenere.

    invece nel metodo public void requestDestroyed(ServletRequestEvent sre)
    cosa ci devo scrivere ? forse devo scrivere il codice che chiude la connessione al database?
    Puoi anche non metterci nulla. I due metodi vengono richiamati, rispettivamente, quando la richiesta "nasce" e quando la richiesta "muore": per quello che vuoi fare tu mi pare sensato fare tutto nel requestInitialized(). Per motivi di performance potrebbe anche essere opportuno mantenere la connessione al database sempre aperta, avviandola insieme all'applicazione (e chiudendola alla sua terminazione).

    Inoltre hai parlato di documentazione, io ho letto e trovato le api java in merito, mi potresti consigliare un link o il materiale dal quale ti sei informato?
    Esatto, ho consultato anch'io la documentazione ufficiale. Per altre informazioni dovrebbe essere sufficiente cercare i nomi delle classi online

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 © 2025 vBulletin Solutions, Inc. All rights reserved.