Newsgroup: it.comp.java
Titolo: [servlet] qualche confronto con NET

Premesso che non voglio scatenare un flame, oggi sono adato ad una
presentazione di 
ASP.NET
 e ho visto parecchie cose molto potenti e
volevo sapere se j2ee ha degli equivalenti (non consco ancora j2ee ma
prometto che comincio presto lo studio :-)
la prima cosa e' l'oggetto datagrid. Praticamente da solo genera tutta
la rappresentazione HTML della tabella di un DB oltre ad aggiungerci
parecchie cose carine (Modifica, cancella e ordinamenti)
la seconda cosa e' il modello di programmazione ad eventi che mi sembra
parecchio comodo, da quel che si e' visto mantine lo stato
automaticamente e connette i campi delle form con degli oggetti sul
server in maniera abbastanza nascosta. Anche j2ee lavora in modo simile
?
Grazie 1k
-- 
Ciao
Fabio

 server in maniera abbastanza nascosta
se parli del "viewState", d'impatto piace a tutti, poi scopri che, per 
mantenere tutti gli stati degli oggettini che hai piazzato sul form, la 
tua pagina web di 5 kb ha un campo nascosto con 2 mega di dati
fede

 wrote:

Non solo da quel che han detto oggi quello ti serve per mantenere
traccia delle sessioni (cosa comunque sconsigliata) pero' in pratica tu
dal tuo codice (c# o altro) puoi interagire con la form e con i campi
della pagina html che verra' generata in seguito e ci puoi dialogare.
Non so hai dei controllini che ti validano le form o fanno altre cose
utili. In maniera abbastanza nascosta al programmatore ti permette
chiamare metodi sui controlli web (che poi in realta' si materializzano
come normali controlli di una form con qualche attributo in piu') e
associare degli event handler. Loro saranno anche stati dei figaccioni a
presentare pero' praticamente non ti accorgevi di avere l'HTTP in mezzo.
-- 
Ciao
Fabio

Mi piacerebbe sapere che ne è dell' MVC! E, come conseguenza, quanto 
tutte queste belle cose influiscono sulla scalabilita e sulla 
manutenibilità del lavoro.
Wezzy ha scritto:


 presentare pero' praticamente non ti accorgevi di avere l'HTTP in mezzo.
A detta anche della comunita' OpenSource e alcuni Javisti piu' 
incalliti, .net e' il miglior prodotto M$ per lo sviluppo. Ne parlava 
molto bene anche Linux Magazine nel numero di questo mese.
Prima di usare Java programmavo con Borland Delphi (Object Pascal) e 
devo dire che era davvero molto comodo per fare qualsiasi cosa, dal 
basso livello al linkare i campi del DB ad una form e far gestire a lui 
tutto.
Il problema di questi sistemi pre-confezionati, a parte che son chiusi e 
non ci sono aggiornamenti settimanali ai framework, come con i prodotti 
opensource e' che poi e' piu' il tempo che perdi ad aggirare i bug o i 
comportamenti che non avevi previsto, che quello per lo sviluppo.
Ho notato inoltre che con Java l'inizio e' una vera tramvata in faccia, 
proprio per la mancanza di RAD potenti in stile .Net, ma, una volta 
imparato, hai il pieno controllo di quel che fai.
Ciao,
-- 
            Davide Gurgone
      web: 
http://www.gurgone.it/
mail: davidechiocciolinagurgonepuntoit

 manutenibilità del lavoro.
Non c'e' infatti!


 [CUT]
Mi trovi d'accordo su alcuni punti, io pero' volevo solo sapere se j2ee
usava gli stessi paradigmi. Mi sapreste consigliare una presentazione di
j2ee che illustri un po' l'utlizzo nelle webapplication ?
-- 
Ciao
Fabio

 manutenibilità del lavoro.
Bhe' per quel che ho visto non mi sembra venga meno anzi, dato che
accedi ai componentei dell'interfaccia molto agilmente e' piu' facile
usarli con il codice. Poi se vuoi seguire il pattern MVC puoi
certamente. Inserendo delle classi controller che si gestiscono gli
eventi della pagina e che sfruttano dei componenti business (che
ovviamente possono essere quelli del framework oppure creati da te).
Ma j2ee non funziona cosi ? che paradigmi usa ?
Grazie
-- 
Ciao
Fabio

> Ma j2ee non funziona cosi ? che paradigmi usa ?
E' difficile rispondere a questa domanda.... che dire.... j2ee vedila 
come un'insieme di tecnologie di cui prendi cio' che ti server per il 
tuo sviluppo.
Come detto da Davide:
 >>>>Ho notato inoltre che con Java l'inizio e' una vera tramvata in 
 >>>>faccia, proprio per la mancanza di RAD potenti in stile .Net, ma, 
 >>>>una volta imparato, hai il pieno controllo di quel che fai.
non essendo java proprietario non esiste lo strumento di sviluppo 
definitivo e non esiste il pattern o paradigma da seguire, sei tu che 
decidi quale seguire a seconda dell'app che vuoi fare. E' questa la 
potenza di Java tu hai il controllo assoluto sul come puoi fare le cose, 
il contro è che il training iniziale è "Violento". Io sono convinto che 
.NET sia valido ma, usando stumenti M$, ho paura nel momento in cui devo 
uscire dai binari comodi (RAD e strumenti preconfezionati in genere) per 
risolvere qualche problema particolare o cercare di ottimizzare una 
soluzione..
Alcuni esempi:
-Se vuoi l'mvc nel web uno standard de facto è Struts (ma non è il solo)
-Se vuoi mvc nelle Swing, le stesse lo implementano (andrebbe perfezionato)
-Se vuoi implemntarti Sigletons (Dao, Session Facade, BO e quant'altro) 
o in generale rendere distribuita la tua app, hai gli application server 
che espongono gli EJB
-Se nn vuoi un cantainer  perche' la tua app nn ne ha bisogno e lo 
ritieni troppo pesane puoi usare l'ottimo Spring
Tieni conto che abbracciare j2ee nn siglifica necessariamente 
abbracciare tutto cio che ti ho elencato sopra: una app j2ee lo è anche 
senza avere ejb ma solo servlets (ad esempio).
Java c'è  dal '96 e ha ormai 10 anni di comunità alle spalle, è 
vantaggio su .net notevole e, secondo me, incolmabile.

 vantaggio su .net notevole e, secondo me, incolmabile.
Anche qui mi trovi d'accordo. Aggiungici anche che e' realmente
multipiattaforma e hai un bel distacco
-- 
Ciao
un Fabio che e' un po' di parte visto che usa un Mac :-)


mmm non saprei. Non ne ho mai cercate..


 proposto da Java. 
Può essere per te interessante l'argomento JavaServer Faces:
JavaServer Faces
http://java.sun.com/j2ee/javaserverfaces/index.jsp
http://www.jsfcentral.com/
http://www-106.ibm.com/developerworks/views/java/libraryview.jsp?search_by=nonbelievers
:
Java Studio Creator
http://www.sun.com/software/products/jscreator/index.xml
Gaetano

 
Questo in effetti sembra molto interessante!
Scusa gia' che ci sono, apache cocoon non ha scopi simili ? 
-- 
Ciao
Fabio

 Scusa gia' che ci sono, apache cocoon non ha scopi simili ? 
Uhm... sembrano tecnologie complementari. Ad esempio ho trovato
questo documento:
Spinning Your Code with XSLT and JSF in Cocoon
http://www.developer.com/lang/article.php/10924_3348311_1
Gaetano

 j2ee.
In j2ee, se usi le JSP per fare sviluppo su web, hai i componenti 
preconfezionati, che aiutano nello sviluppo della presentazione:
 
http://displaytag.sourceforge.net/
ne e' un esempio, sotto forma di tag-library personalizzata.
Un'altro esempio (sicuramente il piu' usato) e' il sottoprogetto TAGLIB 
del progetto jakarta:
 
http://jakarta.apache.org/taglib/
che permette un sacco di cose!
Se servono componenti per gli altri strati di MVC, esistono i vari 
framework che danno librerie gia' pronte.
Se vuoi un IDE preconfezionato che aiuta molto nella scrittura del 
codice e nella sua manutenzione, struts studio di Exadel promette molte 
cose, anche se non mi piace granche' l'editor.
Inoltre SUN ha prodotto un IDE basato su netbeans, che si chiama java 
studio creator, che sfrutta JSF per la creazione della parte grafica, un 
po' come fa netbeans per SWING (correggetemi se sbaglio). Quest'ultimo 
pero' e' a pagamento.
[CUT]
Ti ho detto grossomodo tutto quello che so per lo sviluppo rapido su 
web. Ah, no, dimenticavo. Ci sono framework come FOP che permettono 
output tipo PDF o comunque differente dall'HTML, dato un'xml in 
ingresso. Serve quando hai molti documenti da pubblicare e, 
sinceramente, non credo che .net abbia qualcosa di simile.
Ci sarebbe molto altro, ma ora devo tornare a lavoro.
Ciao,


[CUT]
lo sapevo... appena si parla di confronti, si innescano flame infiniti :)


 lo sapevo... appena si parla di confronti, si innescano flame infiniti :)
bhe' io ho messo le mani avanti :-)
e  poi per ora ce la stiamo cavando bene ;-)
-- 
Ciao
Fabio

 che permette un sacco di cose!
Ecco questi assomigliano vermente molto ai webcomponents che ho visto in
azione! grazie mille.
Se penso a tutto il tempo che ho buttato per fare la stessa cosa in PHP
o ASP classic !!!
Grazie mille, qui urge libro su JSP e servlet per cominciare uno studio
serio :-)
-- 
Ciao
Fabio

 Grazie 1k
Dimentica il J2EE per applicazioni tipo cquelle che hai nominato.
E' come andare a fare la spesa con un autoarticolato.
Nicola
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 serio :-)
:-) Se sai bene Java pero'! Altrimenti ti consiglio una ripassatina prima!
Oltretutto ti consiglio anche di *abbracciare* un framework come struts 
(
http://struts.apache.org/
), altrimenti diventi scemo. Occhio che ce 
n'e' di roba da studiare, prima di vedere risultati seri...


 e  poi per ora ce la stiamo cavando bene ;-)
:) gia'!


 E' come andare a fare la spesa con un autoarticolato.
Non e' vero, dai, e' solo un po' lento l'inizio, poi pero'...
 
http://jdbforms.sourceforge.net/poweredby/pow2acl.html
ci sono mille tool e libs utili :)


 E' come andare a fare la spesa con un autoarticolato.
e cosa consigli per realizzare simili applicazioni con java ?
-- 
Ciao
Fabio

 n'e' di roba da studiare, prima di vedere risultati seri...
Esattamente qual'e' l'apporto di struts ?
sospetto che ci siano un botto di librerie diverse da capire prima di
vedere un risultato decente. Pero' sembra che ne valga la pena.
-- 
Ciao
Fabio

 vedere un risultato decente. Pero' sembra che ne valga la pena.
un framework ed una libreria sono cose diverse. Per fare un paragone, se 
il progetto e' un palazzo, struts sono le fondamenta, mentre le librerie 
sono gli utensili usati, come la gru o il martello pneumatico o la 
ruspa. Ho reso l'idea?
Struts e' un framework basato su MVC, che fornisce l'infrastruttura 
sulla quale operare.
Il principio di Struts e' quello di creare una classe (o quasi) per ogni 
richiesta del server. Tali classi si chiamano Action ed ereditano da una 
classe Action, nella quale ridefinire sostanzialmente il metodo Execute.
Le informazioni della richiesta arrivano alla tua Action sotto forma di 
oggetto Java, detto ActionForm, (che ti devi costruire ad hoc per ogni 
tipo di richiesta) che contiene i valori dei tuoi form HTML.
Tale form viene popolato da struts, ma il lavoro di validazione, 
ovviamente, lo devi implementare tu ridefinendo il metodo validate. Se 
tale metodo restituisce errori, il framework rimanda al client (browser) 
la pagina contenente il form, assieme agli oggetti che contengono gli 
errori.
Se invece la validazione va a buon fine, il controllo passa alla action 
che esegue delle operazioni (inserimento in un DB per esempio) e rimanda 
il controllo alla parte view del framework, solitamente una JSP, ma 
anche un PDF(con FOP) o un XML, dipende da cio' che ti serve.
Ci sono poi altri particolari, ma questo e' sostanzialmente Struts. Bada 
che Struts e' solo uno dei framework che si basano su MVC, ce ne sono 
poi altri e che usano approcci differenti.
Per esempio cocoon, uno dei progetti jakarta, si approccia alla 
programmazione web in modo abbastanza innovativo, tenta di dare un 
flusso logico all'applicazione molto piu' lineare che struts. L'idea e' 
che un'utente che si trova ad un certo punto dell'applicazione, se manda 
una richiesta, la manda allo step successivo. Non puo' fare una 
richiesta differente da quella prevista (correggetemi se sbaglio).
Ma su cocoon non sono ferrato, quello che so l'ho letto su linux 
magazine di marzo 2004.
La scielta del framework e' forse la parte piu' delicata di un progetto 
j2ee. Per prima cosa devi capire BENE quali sono gli obiettivi da 
raggiungere, rischi altrimenti di ritrovarti con lo strumento sbagliato.
Se vuoi capire quale framework usare, per prima cosa ti consiglio di 
dare un occhio a 
jakarta.apache.org
 il sito ufficiale del progrtto 
jakarta, forse il piu' importante in ambiente java.
Li' puoi trovare la maggior parte dei framework esistenti, tomcat, tools 
e librerie di sviluppo.
Ma il bello di tutto questo e' che puoi integrare framework e tecnologie 
differenti, a secondo di quello che ti serve.
La vera potenza di java e' data non tanto dal linguaggio SUN, che e' 
molto completo e bello da usare, anche se molto ostico in alcune sue 
parti, ma dalla Comunity di Java. Quando dici sviluppo in Java, in 
realta' dici, sviluppo con una libreria OPENSOURCE praticamente 
illimitata e che ti da le soluzioni a quasi tutte le casistiche che 
incontrerai.
Spero di essere stato esauriente!
Ciao e buona domenica.


 Ciao e buona domenica.
Lo sei stato grazie mille!
la voglia di studiarmi j2ee sta crecendo!
a questo punto ti chiedo un consiglio su qualche libro su JSP/servlet
-- 
Ciao
Fabio

 (e direi JFC)
ops intendevo JSF
-- 
Ciao
Fabio

> a questo punto ti chiedo un consiglio su qualche libro su JSP/servlet
A mio parere O'reilly ha degli ottimi manuali.
Personalmente ho acquistato :
     - Programmare con Jakarta Struts di chuck cavaness
       (Tradotto in italiano da schifo).
     - JavaServer Pages 2a edizione di Hans Bergsten.
       Se non erro la versione in inglese in PDF e' gratuita.
Poi ricordo di aver acquistato un'altro libro che ora ho prestato e si 
chiama... JSP, Servlet e MySql. Che ancora non introduceva le JSTL (Java 
Standard Tag Library),la libreria di tag standard per sviluppare sulle jsp.
Quest'ultimo mi ha dato un'idea generale della tecnologia, di cosa sono 
le servlet e le JSP, dell'MVC, etc, ma te lo sconsiglio. Il libro sulle 
JSP da anche un'idea delle servlet, con quello in poco tempo riesci gia' 
a vedere dei risultati(qualche ora se sei sgamato). Poi, per inciso, le 
JSP vengono compilate e diventano servlet, quindi il risultato e' lo stesso.
Si! Forse il libro sulle JSP della O'Reilly e' l'approccio piu' indolore 
a j2ee.
Posso farti ora una domanda???
Di dove sei?


 Di dove sei?
milano (provincia)
-- 
Ciao
Fabio

 milano (provincia)
Ah! E andavi alla statale in via celoria? Dai, dammi il tuo indirizzo, 
che magari ci conosciamo. il mio e' quello scritto sotto.


 e cosa consigli per realizzare simili applicazioni con java ?
Be un tomcat e le jsp dovrebbero bastare
ciao Nicola


 ci sono mille tool e libs utili :)
Dipende anche da cosa vogliamo intendere per j2ee
se intendi tutto java, concordo con te.
ciao Nicola


 che magari ci conosciamo. il mio e' quello scritto sotto.
il mio indirizzo e' valido.
-- 
Ciao
Fabio

 ciao Nicola
Magari sono confuso io ma servlet e jsp non fanno parte della specifica
j2ee
-- 
Ciao
Fabio

 Fabio
