Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Wind Tre 'accende' il 5G Standalone in Italia: si apre una nuova era basata sui servizi
Wind Tre 'accende' il 5G Standalone in Italia: si apre una nuova era basata sui servizi
Con la prima rete 5G Standalone attiva in Italia, WINDTRE compie un passo decisivo verso un modello di connettività intelligente che abilita scenari avanzati per imprese e pubbliche amministrazioni, trasformando la rete da infrastruttura a piattaforma per servizi a valore aggiunto
OPPO Find X9 Pro: il camera phone con teleobiettivo da 200MP e batteria da 7500 mAh
OPPO Find X9 Pro: il camera phone con teleobiettivo da 200MP e batteria da 7500 mAh
OPPO Find X9 Pro punta a diventare uno dei riferimenti assoluti nel segmento dei camera phone di fascia alta. Con un teleobiettivo Hasselblad da 200 MP, una batteria al silicio-carbonio da 7500 mAh e un display da 6,78 pollici con cornici ultra ridotte, il nuovo flagship non teme confronti con la concorrenza, e non solo nel comparto fotografico mobile. La dotazione tecnica include il processore MediaTek Dimensity 9500, certificazione IP69 e un sistema di ricarica rapida a 80W
DJI Romo, il robot aspirapolvere tutto trasparente
DJI Romo, il robot aspirapolvere tutto trasparente
Anche DJI entra nel panorama delle aziende che propongono una soluzione per la pulizia di casa, facendo leva sulla propria esperienza legata alla mappatura degli ambienti e all'evitamento di ostacoli maturata nel mondo dei droni. Romo è un robot preciso ed efficace, dal design decisamente originale e unico ma che richiede per questo un costo d'acquisto molto elevato
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 06-09-2010, 09:00   #1
tylerdurden83
Senior Member
 
Iscritto dal: Nov 2004
Messaggi: 691
[JAVA] Migrare applicazione Java Swing su Web

Ciao ragazzi. Vorrei chiedervi un parere.
Ho un'applicazione scritta in Java Swing. Per farla breve, è una JTable che viene aggiornata in real time leggendo messaggi da un Topic JMS.
L'obiettivo sarebbe quello di portarla su web, usando ajax per refreshare le entry della tabella html senza ricaricare tutta la pagina ogni volta.

Quale strada mi consigliereste?

Alcune info:
il server JMS è (attualmente) HornetQ
il sito in cui inserire il porting dell'applicazione è (attualmente) in php
...

Grazie 1000 a tutti come sempre,
Rob
tylerdurden83 è offline   Rispondi citando il messaggio o parte di esso
Old 06-09-2010, 09:33   #2
nico159
Senior Member
 
Iscritto dal: Aug 2003
Città: Barletta (BA)
Messaggi: 939
Quanti utenti deve supportare questa tua web app?
__________________
In a world without fences, who needs Gates?
Power by: Fedora 8 - Mac OS X 10.4.11
nico159 è offline   Rispondi citando il messaggio o parte di esso
Old 06-09-2010, 09:40   #3
tylerdurden83
Senior Member
 
Iscritto dal: Nov 2004
Messaggi: 691
Quote:
Originariamente inviato da nico159 Guarda i messaggi
Quanti utenti deve supportare questa tua web app?
Una decina max contemporaneamente
tylerdurden83 è offline   Rispondi citando il messaggio o parte di esso
Old 06-09-2010, 11:37   #4
nico159
Senior Member
 
Iscritto dal: Aug 2003
Città: Barletta (BA)
Messaggi: 939
Quote:
Originariamente inviato da tylerdurden83 Guarda i messaggi
Una decina max contemporaneamente
Se sono solo una decina lato client con javascript puoi usare un timer e realizzare il classico polling per controllare gli aggiornamenti

Ogni 1s scatta il timer->Viene richiamata la tua funzione che farà:
-> GET della pagina in php
<- La pagina php risponde al GET fornendo i dati serializzati in json
-> Deserializza i dati
-> Aggiorna le parti della pagina dove necessario

Per scambiare dati dal tuo server java a php, ti consiglio di usare Redis http://code.google.com/p/redis/
E' un db che tiene tutto in ram, include elementi come liste ordinate che possono essere usati come queue.

Il tuo server Java al posto di usare un server di messaging, riempie una lista in redis serializzando i dati in json

Lato php, basta che il tuo script ad ogni richiesta controlli se ci sono elementi nella lista Redis ed invia tutto al client sempre tramite json
Ovviamente devi prima fornire al client dei dati di base su cui lavorare, l'ideale è avere un "index.php" che fornisce i dati di
"default" e un "update.php" che restituisce gli aggiornamenti in json
Puoi sempre saltare Redis, e far aggiornare ogni volta i dati contenuti in un ipotetico db relazionale dal server Java direttamente, dipende da cosa devi effettivamente fare e sopratutto di quali compiti il server java deve occuparsi

Lato client, assolutamente jquery
__________________
In a world without fences, who needs Gates?
Power by: Fedora 8 - Mac OS X 10.4.11

Ultima modifica di nico159 : 06-09-2010 alle 11:55.
nico159 è offline   Rispondi citando il messaggio o parte di esso
Old 06-09-2010, 12:40   #5
tylerdurden83
Senior Member
 
Iscritto dal: Nov 2004
Messaggi: 691
Grazie nico159, prenderò attentamente in esame il tuo suggerimento.
Ti dico cosa avevo in mente io, dimmi se secondo te possono andare bene come idee o è meglio non perderci tempo.

1) Cambiare il server JMS (ora hornetq) con http://activemq.apache.org/ajax.html. Mi pare di capire che quello faccia ciò che mi serve...

2) Lasciare hornetq, e scrivere una servlet + jsp, con la servlet che "legge" dal topic JMS e spara al client (sempre refresh ajax). Richiede un altro webserver tipo tomcat ovviamente.

Grazie,
Rob
tylerdurden83 è offline   Rispondi citando il messaggio o parte di esso
Old 06-09-2010, 13:08   #6
tari80
Member
 
Iscritto dal: Nov 2003
Messaggi: 120
ti consiglio di utilizzare IceFaces che supporta il push via ajax, è molto semplice da utilizzare e ti risolve un sacco di problemi.
ovviamente sempre con un webserver tipo tomcat dietro
Ciao
__________________
ho fatto affari con: pyp, fedelover, Kuccy, casacup(il migliore )
tari80 è offline   Rispondi citando il messaggio o parte di esso
Old 06-09-2010, 13:37   #7
nico159
Senior Member
 
Iscritto dal: Aug 2003
Città: Barletta (BA)
Messaggi: 939
Quote:
1) Cambiare il server JMS (ora hornetq) con http://activemq.apache.org/ajax.html. Mi pare di capire che quello faccia ciò che mi serve...
E' una ottima soluzione, potresti scalare a molti utenti e parte del codice JS for free
__________________
In a world without fences, who needs Gates?
Power by: Fedora 8 - Mac OS X 10.4.11
nico159 è offline   Rispondi citando il messaggio o parte di esso
Old 06-09-2010, 14:04   #8
tylerdurden83
Senior Member
 
Iscritto dal: Nov 2004
Messaggi: 691
Quote:
Originariamente inviato da nico159 Guarda i messaggi
E' una ottima soluzione, potresti scalare a molti utenti e parte del codice JS for free
Vedi controindicazioni a usarlo via cell?(motivo principale del porting da swing a web)...
tylerdurden83 è offline   Rispondi citando il messaggio o parte di esso
Old 06-09-2010, 14:20   #9
nico159
Senior Member
 
Iscritto dal: Aug 2003
Città: Barletta (BA)
Messaggi: 939
Quote:
Originariamente inviato da tylerdurden83 Guarda i messaggi
Vedi controindicazioni a usarlo via cell?(motivo principale del porting da swing a web)...
La dipende solo dal browser fornito con il cellulare
E' possibile che avresti problemi anche con un semplice timer

Sei fortunato se si parla di cell con OS moderni come Android o iPhone OS
__________________
In a world without fences, who needs Gates?
Power by: Fedora 8 - Mac OS X 10.4.11
nico159 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Wind Tre 'accende' il 5G Standalone in Italia: si apre una nuova era basata sui servizi Wind Tre 'accende' il 5G Standalone in Italia: s...
OPPO Find X9 Pro: il camera phone con teleobiettivo da 200MP e batteria da 7500 mAh OPPO Find X9 Pro: il camera phone con teleobiett...
DJI Romo, il robot aspirapolvere tutto trasparente DJI Romo, il robot aspirapolvere tutto trasparen...
DJI Osmo Nano: la piccola fotocamera alla prova sul campo DJI Osmo Nano: la piccola fotocamera alla prova ...
FUJIFILM X-T30 III, la nuova mirrorless compatta FUJIFILM X-T30 III, la nuova mirrorless compatta
Addio console: Just Dance Now trasforma ...
Driver Radeon Adrenalin 25.10: perch&egr...
Oltre le GPU: NVIDIA annuncia NVQLink, ...
Samsung lancia il Team Galaxy Italia per...
Magic Leap: indistinguibili dai normali ...
Aruba Cloud: trasparenza sui costi e str...
Quando il cloud si blocca e resti al fre...
Integrare per competere, la sfida digita...
Leggenda del rally e modernità: S...
La Python Software Foundation rinuncia a...
Full HD e QLED, è in offerta un TV da 32...
Honda ha rilasciato un nuovo video sul p...
Resident Evil Requiem: arriva su Switch ...
Marshall Acton III in promo su Amazon in...
2 portatili che costano poco ma vanno be...
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: 22:58.


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