Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Due mesi di Battlefield 6: dalla campagna al battle royale, è l'FPS che stavamo aspettando
Due mesi di Battlefield 6: dalla campagna al battle royale, è l'FPS che stavamo aspettando
Abbiamo giocato a lungo a Battlefield 6, abbiamo provato tutte le modalità multiplayer, Redsec, e le numerose personalizzazioni. In sintesi, ci siamo concentrati su ogni aspetto del titolo per comprendere al meglio uno degli FPS più ambiziosi della storia dei videogiochi e, dopo quasi due mesi, abbiamo tirato le somme. In questo articolo, condividiamo con voi tutto ciò che è Battlefield 6, un gioco che, a nostro avviso, rappresenta esattamente ciò che questo genere attendeva da tempo
Antigravity A1: drone futuristico per riprese a 360° in 8K con qualche lacuna da colmare
Antigravity A1: drone futuristico per riprese a 360° in 8K con qualche lacuna da colmare
Abbiamo messo alla prova il drone Antigravity A1 capace di riprese in 8K a 360° che permette un reframe in post-produzione ad eliche ferme. Il concetto è molto valido, permette al pilota di concentrarsi sul volo e le manovre in tutta sicurezza e decidere con tutta tranquillità come gestire le riprese. La qualità dei video, tuttavia, ha bisogno di uno step in più per essere competitiva
Sony Alpha 7 V, anteprima e novità della nuova 30fps, che tende la mano anche ai creator
Sony Alpha 7 V, anteprima e novità della nuova 30fps, che tende la mano anche ai creator
Dopo oltre 4 anni si rinnova la serie Sony Alpha 7 con la quinta generazione, che porta in dote veramente tante novità a partire dai 30fps e dal nuovo sensore partially stacked da 33Mpixel. L'abbiamo provata per un breve periodo, ecco come è andata dopo averla messa alle strette.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 19-05-2005, 17:54   #1
Cimmo
Senior Member
 
L'Avatar di Cimmo
 
Iscritto dal: Jan 2001
Città: California
Messaggi: 7174
[XDOCLET+EJB-QL] Come avere in automatico l'id di una tabella?

EDIT: Domanda al post #13, please help me!

Ciao a tutti,
il problema e' questo: ho una serie di JSP che fanno delle richieste a delle session beans, le quali a loro volta istanziano delle entity bean, fanno delle query al database restituiscono i valori, le session bean elaborano e restituiscono ulteriori valori alle jsp.

Ok tutto questo gia' funziona, il problema e': tramite una jsp faccio il login, la session bean si occupa di verificare login e password e solo se e' ok fa passare alla prossima jsp.
Il problema e': se un utente mi accede alla prossima jsp perche' sa che esiste digitando l'indirizzo direttamente nel browser, in jboss ho visto che si puo'.
Come faccio a dirgli che non puo'?

Avevo pensato: trasferisco la password (criptata con lo SHA-1) da un jsp all'altro e ogni volta che faccio delle chiamate alla session bean devono corrispondere. Questo pero' mi costringe a fare una unica session bean che gestisce un utente dall'inizio alla fine o c'e' un modo per fare qualcosa di meglio?

Spero di essermi spiegato

Ultima modifica di Cimmo : 20-05-2005 alle 21:33.
Cimmo è offline   Rispondi citando il messaggio o parte di esso
Old 19-05-2005, 23:18   #2
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
non sono sicuro di aver capito.
le tue jsp dovrebbero solo verificare se esiste una sessione attiva per l'utente che sta facendo la richiesta, in caso contrario devono ridirigerlo verso la pagina di login.
E' l'application server che deve occuparsi di tenere in piedi le sessioni, non tu applicativamente.
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2005, 01:07   #3
Cimmo
Senior Member
 
L'Avatar di Cimmo
 
Iscritto dal: Jan 2001
Città: California
Messaggi: 7174
Quote:
Originariamente inviato da kingv
non sono sicuro di aver capito.
le tue jsp dovrebbero solo verificare se esiste una sessione attiva per l'utente che sta facendo la richiesta, in caso contrario devono ridirigerlo verso la pagina di login.
E' l'application server che deve occuparsi di tenere in piedi le sessioni, non tu applicativamente.
Ecco esatto, ma non so come si fa a vedere se esiste una sessione attiva.
Cioe' per tenere in piedi una sessione devo avere una unica session bean o posso farlo con piu' session bean che diciamo "si passano la palla"? E in ogni caso come faccio a realizzare questo?

Grazie della pazienza
Cimmo è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2005, 08:59   #4
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
il fatto che si chiamino session bean non ha nulla a che fare con la sessione web, che a seguito di un login deve essere mantenuta dall'application server attraverso un meccanismo come cookie o url rewriting.
le jsp che compongono l'interfacia web, una volta autenticato, faranno le chiamate ai bean che implementano la logica applicativa, passano i parametri appropriati (userid, ad esempio).

se ho capito male fammi un esempio.
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2005, 11:06   #5
Cimmo
Senior Member
 
L'Avatar di Cimmo
 
Iscritto dal: Jan 2001
Città: California
Messaggi: 7174
Quote:
Originariamente inviato da kingv
il fatto che si chiamino session bean non ha nulla a che fare con la sessione web, che a seguito di un login deve essere mantenuta dall'application server attraverso un meccanismo come cookie o url rewriting.
le jsp che compongono l'interfacia web, una volta autenticato, faranno le chiamate ai bean che implementano la logica applicativa, passano i parametri appropriati (userid, ad esempio).

se ho capito male fammi un esempio.
Lo so appunto per questo che sto cercando un metodo.
Cioe' se io parto da login.jsp che spedisce login e psw a loginBean.ejb, lei elabora e ritorna true se ok o false se non ok, il jsp se true fa forward alla pagina successiva che si chiama per es. due.jsp, ora pero' se uno sa che esiste due.jsp, puo' benissimo mettere nella barra del browser direttamente due.jsp e bypassare il check del login.

Allora vi stavo chiedendo come posso fare?
Cimmo è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2005, 12:21   #6
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
Quote:
Originariamente inviato da Cimmo
Lo so appunto per questo che sto cercando un metodo.

Allora vi stavo chiedendo come posso fare?

il flusso corretto è:

- login jsp chiama il bean per controllare username e password, se ok crea una sessione valida per l'utente
- due.jsp e qualsiasi altra pagina come prima cosa quando vengono chiamate controllano se c'e' una sessione valida per la richiesta che e' arrivara, in caso positivo rispondono alla richiesta, in caso negativo gestiscono l'errore (magari rimandando alla pagina di login).
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2005, 14:17   #7
Cimmo
Senior Member
 
L'Avatar di Cimmo
 
Iscritto dal: Jan 2001
Città: California
Messaggi: 7174
Quote:
Originariamente inviato da kingv
il flusso corretto è:

- login jsp chiama il bean per controllare username e password, se ok crea una sessione valida per l'utente
- due.jsp e qualsiasi altra pagina come prima cosa quando vengono chiamate controllano se c'e' una sessione valida per la richiesta che e' arrivara, in caso positivo rispondono alla richiesta, in caso negativo gestiscono l'errore (magari rimandando alla pagina di login).
Perfetto, come faccio a creare e gestire una sessione valida?
Posso fare in modo che questa sessione sia "passata" tra le varie Bean?
Cimmo è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2005, 14:47   #8
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
la jsp ha un oggetto implicito "session".

all'inizio di ogni jsp puoi fare un controllo del tipo che se contiene un attributo a tua scelta (che viene settato SOLO dalla jsp di autenticazione in caso di esito positivo), in caso contrario fai una redirect alla pagina di login.
qualcosa tipo:

<% if (session.isNew() || session.getAttribute("autenticato") == null)
{
response.sendRedirect(response.encodeRedirectURL("login.jsp"));
}

else {

//ecc.ecc.
}
%>
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2005, 16:39   #9
Cimmo
Senior Member
 
L'Avatar di Cimmo
 
Iscritto dal: Jan 2001
Città: California
Messaggi: 7174
Quote:
Originariamente inviato da kingv
la jsp ha un oggetto implicito "session".

all'inizio di ogni jsp puoi fare un controllo del tipo che se contiene un attributo a tua scelta (che viene settato SOLO dalla jsp di autenticazione in caso di esito positivo), in caso contrario fai una redirect alla pagina di login.
qualcosa tipo:

<% if (session.isNew() || session.getAttribute("autenticato") == null)
{
response.sendRedirect(response.encodeRedirectURL("login.jsp"));
}

else {

//ecc.ecc.
}
%>
Uh molto interessante.
ma mettere soltanto if (session.isNew()) che problemi puo' dare?
Cimmo è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2005, 17:58   #10
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
Quote:
Originariamente inviato da Cimmo
Uh molto interessante.
ma mettere soltanto if (session.isNew()) che problemi puo' dare?


che se chiedi la prima volta la pagina te la nega reindirizzandoti verso il login, ma alla seconda richiesta ti viene servita anche se il login non l'hai superato
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2005, 18:03   #11
Cimmo
Senior Member
 
L'Avatar di Cimmo
 
Iscritto dal: Jan 2001
Città: California
Messaggi: 7174
Quote:
Originariamente inviato da kingv
che se chiedi la prima volta la pagina te la nega reindirizzandoti verso il login, ma alla seconda richiesta ti viene servita anche se il login non l'hai superato
Allora non basterebbe mettere la setAttribute e getAttribute?
Cimmo è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2005, 18:11   #12
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
Quote:
Originariamente inviato da Cimmo
Allora non basterebbe mettere la setAttribute e getAttribute?

sì effettivamente basterebbe quello, dato che quando la sessione e' nuova non avrà quell'attributo "custom" valorizzato
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2005, 18:29   #13
Cimmo
Senior Member
 
L'Avatar di Cimmo
 
Iscritto dal: Jan 2001
Città: California
Messaggi: 7174
Quote:
Originariamente inviato da kingv
sì effettivamente basterebbe quello, dato che quando la sessione e' nuova non avrà quell'attributo "custom" valorizzato
Fantastico,
altre domandine fresche fresche:

- la variabile costumizzata non e' possibile dal client settarla vero? Questo dovrebbe assicurarmi la sicurezza al 100% che uno che non ha accesso al server non puo' accedere alle pagine successive.


- ne sai di EJB-QL?
Come si fa a fare in modo che l'id di una tabella venga creato da solo e che vada prograssivamente?
Ho provato il tag

Codice:
@jboss.unknown-pk class="java.lang.Integer"
 			auto-increment="true"
ma con scarso successo

Ultima modifica di Cimmo : 20-05-2005 alle 21:09.
Cimmo è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2005, 19:04   #14
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
Quote:
Originariamente inviato da Cimmo
- la variabile costumizzata non e' possibile dal client settarla vero? Questo dovrebbe assicurarmi la sicurezza al 100% che uno che non ha accesso al server non puo' accedere alle pagine successive.
naturalmente no, sul client hai solo un cookie contenente l'identificativo della sessione ma gli attributi sono memorizzati sul server

Quote:
Originariamente inviato da Cimmo
- ne sai di EJB-QL?

zero, so solo cos'e' ma non l'ho mai usato
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2005, 21:07   #15
Cimmo
Senior Member
 
L'Avatar di Cimmo
 
Iscritto dal: Jan 2001
Città: California
Messaggi: 7174
Quote:
Originariamente inviato da kingv
naturalmente no, sul client hai solo un cookie contenente l'identificativo della sessione ma gli attributi sono memorizzati sul server
Perfetto, grazie!

Quote:
zero, so solo cos'e' ma non l'ho mai usato
Doh!
Qualcuno che mi puo' aiutare?
Cimmo è offline   Rispondi citando il messaggio o parte di esso
Old 27-05-2005, 18:34   #16
Cimmo
Senior Member
 
L'Avatar di Cimmo
 
Iscritto dal: Jan 2001
Città: California
Messaggi: 7174
kingv ti chiedo un'altra cosa:
se io ho un sistema gestito appunto da session e entity bean e dove i client sono dei jsp, come faccio a far si' che dal lato server, dopo una certa data e ora cambino delle cose?
Mi spiego: il server finche' non viene richiamato qualche business method non fa una cippa, quindi come faccio a fargli "controllare" il tempo e allo scadere di una data fa autonomamente una cosa?
Cimmo è offline   Rispondi citando il messaggio o parte di esso
Old 27-05-2005, 19:36   #17
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
Quote:
Originariamente inviato da Cimmo
kingv ti chiedo un'altra cosa:
Mi spiego: il server finche' non viene richiamato qualche business method non fa una cippa, quindi come faccio a fargli "controllare" il tempo e allo scadere di una data fa autonomamente una cosa?

ho capito il problema, se qualcuno non ti chiama non puoi fare il controllo dell'ora e quindi non puoi scatenare l'evento, vero?
non ti consiglio di usare una soluzione come un Thread o un Timer dato che le specifiche EJB impediscono l'uso esplicito dei thread (anche se quando mi e' capitato di usarli hanon sempre funzionato senza creare problemi con la gestione dell'application server ).
dalla release 1.4 di J2EE ho letto che c'e' il supporto di un timer service a livello di container. Dato che JBoss supporta quelle specifiche dovrebbe fornirlo, purtroppo non conosco un granchè il prodotto e non mi è mai capitato di usare questa caratteristica.
guarda la documentazione di javax.ejb.TimerService, dovrebbe essere quello che stai cercando
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 27-05-2005, 19:41   #18
Cimmo
Senior Member
 
L'Avatar di Cimmo
 
Iscritto dal: Jan 2001
Città: California
Messaggi: 7174
Quote:
Originariamente inviato da kingv
ho capito il problema, se qualcuno non ti chiama non puoi fare il controllo dell'ora e quindi non puoi scatenare l'evento, vero?
non ti consiglio di usare una soluzione come un Thread o un Timer dato che le specifiche EJB impediscono l'uso esplicito dei thread (anche se quando mi e' capitato di usarli hanon sempre funzionato senza creare problemi con la gestione dell'application server ).
dalla release 1.4 di J2EE ho letto che c'e' il supporto di un timer service a livello di container. Dato che JBoss supporta quelle specifiche dovrebbe fornirlo, purtroppo non conosco un granchè il prodotto e non mi è mai capitato di usare questa caratteristica.
guarda la documentazione di javax.ejb.TimerService, dovrebbe essere quello che stai cercando
Purtroppo sto facendo un progetto e le specifiche mi obbligano ad usare jboss 3.2.x che implementa J2EE 1.3
Le stesse specifiche mi impongono di mandare una mail allo scadere di una data...
Cimmo è offline   Rispondi citando il messaggio o parte di esso
Old 23-06-2005, 11:30   #19
Cimmo
Senior Member
 
L'Avatar di Cimmo
 
Iscritto dal: Jan 2001
Città: California
Messaggi: 7174
kingv ho trovato questo http://docs.jboss.org/jbossas/admind...h10.sched.sect

il problema che non ho capito e':
se la data di attivazione dello scheduler e' da inserire nell'xml come cavolo faccio a runtime a cambiarla?
Cimmo è offline   Rispondi citando il messaggio o parte di esso
Old 23-06-2005, 12:20   #20
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
Quote:
Originariamente inviato da Cimmo
kingv ho trovato questo
se la data di attivazione dello scheduler e' da inserire nell'xml come cavolo faccio a runtime a cambiarla?

http://docs.jboss.org/jbossas/javado...Scheduler.html


ci sono i "setter" per tutte le proprietà che ne definiscono il comportamento
kingv è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Due mesi di Battlefield 6: dalla campagna al battle royale, è l'FPS che stavamo aspettando Due mesi di Battlefield 6: dalla campagna al bat...
Antigravity A1: drone futuristico per riprese a 360° in 8K con qualche lacuna da colmare Antigravity A1: drone futuristico per riprese a ...
Sony Alpha 7 V, anteprima e novità della nuova 30fps, che tende la mano anche ai creator Sony Alpha 7 V, anteprima e novità della ...
realme GT 8 Pro Dream Edition: prestazioni da flagship e anima racing da F1 realme GT 8 Pro Dream Edition: prestazioni da fl...
OVHcloud Summit 2025: le novità del cloud europeo tra sovranità, IA e quantum OVHcloud Summit 2025: le novità del cloud...
Colpo di scena a Hollywood: Paramount pr...
Malesia, giro di vite sul mining illegal...
Meta rivede la roadmap: visore ultralegg...
Addio ricariche continue con le elettric...
Maxi sconto sul robot del futuro: roboro...
I 3 super TV OLED e QLED crollati su Ama...
Tre notebook fuori di testa in sconto: M...
Sconti iPhone su Amazon: oggi ci sono i ...
Google rende disponibile Gemini 3 Deep T...
I 3 super robot Dreame Aqua10 Roller tor...
Tornano in sconto le scope elettriche Ti...
IA nei videogiochi: anche SEGA la utiliz...
Apple in piena tempesta: anche il boss d...
Due GeForce GTX 580 in SLI: l'insospetta...
TSMC dà i numeri: dal processo N7...
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: 19:41.


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