lunedì dic 21, 2009

Java EE 6, GlassFish Enterprise Server v3 e NetBeans 6.8

glassfish  Dicembre è stato un mese ricco di novità per chi si occupa della tecnologia Java.

Dopo 3 anni sono state rilasciate le nuove specifiche Java EE 6, e dal 10 dicembre è disponibile ufficialmente tutto ciò che serve per iniziare a sfruttare tutte le potenzialità delle nuove specifiche: GlassFish Enterprise Server v3 e NetBeans 6.8. Per chi usa Eclipse è comunque disponibile il GlassFish Tools Bundle.
Ancora una volta l'easy-of-development ha guidato la definizione delle nuove specifiche, accompagnato dall'obiettivo del right-sizing. Attraverso i Profiles, infatti, si introduce la possibilità di "tagliare" la piattaforma di run-time sulla base delle applicazione che andrà ad ospitare. Un esempio è il Web Profile che si può scaricare pre-configurato e che permette di avere a disposizione le API necessarie per lo sviluppo di applicazioni web: Servlet 3.0, EJB Lite 3.1, JPA 2.0, JSP 2.2, EL 1.2, JSTL 1.2, JSF 2.0, JTA 1.1, JSR 45, Common Annotations. Il risultato è che il tempo di start-up è 1/3 di quello della v2. GlassFish Enterprise Server v3, inoltre, migliora il managment introducendo un'interfaccia REST per gestire l'application server via GET/POST HTTP.

Per tornare alla semplificazione dello sviluppo vi faccio un primo esempio.
Per sviluppare una Servlet, con le precendenti versioni occorreva di fatto produrre due file sorgenti:

  • la classe servlet. Es.:
/\* Code in Java Class \*/
package com.foo;
public class MyServlet extends HttpServlet {
    public void doGet(HttpServletRequest req,HttpServletResponse res) {
       ... 
    }
   ...
}
  • il relativo deployment descriptor web.xml:
<!--Deployment descriptor web.xml -->
<web-app>
<servlet>
<servlet-name>MyServlet
           </servlet-name>
       <servlet-class>
         com.foo.MyServlet
       </servlet-class>
    </servlet>
    <servlet-mapping>
       <servlet-name>MyServlet
       </servlet-name>
       <url-pattern>/myApp/\*
       </url-pattern>
    </servlet-mapping>
    ...
 </web-app>


Con Java EE 6, invece, è possibile usare delle annotation per non doversi preoccupare di gestire due files, e il tutto può essere fuso in:

package com.foo;
@WebServlet(name=”MyServlet”,urlPattern=”/myApp/\*”)
public class MyServlet {
    public void doGet(HttpServletRequest req, HttpServletResponse res) {
        ...
   }

...

}

Da notare che la classe non è più esplicitamente derivata dalla classe HttpServlet: ci pensa l'annotation.
Le altre interessanti features le vedremo prossimamente.

venerdì mag 15, 2009

Wonderland 0.5 - developer release 5 out

WL 0.5 Vi segnalo il rilascio della nuova versione early-access del toolkit Wonderland, le cui principali caratteristiche sono ben rappresentate nel video.

Tra le caratteristiche, a mio avviso più interessanti, troviamo la possibilità di "saltare" da un ambiente 3D ospitato su un server ad un altro invocando l'URL nel client, oppure la possilità di inserire nuovi oggetti in formato .kmz semplicemente trascinandoli sul client Wonderland. La possibilità di attingere alla galleria di immagini 3D di Google© e di elaborare i modelli con Google SketchUp © riduce considerevolmente i tempi di allestimento di ambienti 3D.

Per provare la nuova release, le istruzioni le potrete trovare qui.



venerdì feb 06, 2009

Wonderland Grid

Per chi volesse provare ad entrare in mondi virtuali basati sul progetto Wonderland senza dover installare nulla sul proprio PC, tranne la Java Virtual Machine scaricabile qui, il Sun Immersion Special Interest Group (Sun ISIG) segnala i seguenti nodi disponibili su Internet:

1. Saint Paul College
2. Essex University, UK
3. The Education Grid
4. United Nations
5. Commonneed
6. University of Oregon
7. University of Zurich
8. New Media Consortium
9. Virtual Learning Labs
10. Green Phosphor
11. SunLabs

In particolare, a chi ha un PC con capacità ridotte (1GB RAM), consiglio di collegarsi al mondo messo a disposizione dall'università di Zurigo (7). Per chi dispone di una postazione con almeno 1.5 GB RAM e una scheda NVIDIA o ATI può valutare tutti gli altri. Il client Wonderland viene scaricato la prima volta soltanto. Alle successive connessione parte dalla cache locale.

Raccomandazione importante: dovete avere una connessione diretta su Internet. I servizi non sono generalmente accessibili da una Intranet aziendale dotata di firewall/proxy.


mercoledì dic 17, 2008

OpenSSO: Leader & Open Source

OpenSSO.orgVi segnalo un interessante post sul posizionamento che ha rilasciato Gartner relativamente alle soluzioni di Web Access Management. La soluzione Open Source di Sun, OpenSSO, si conferma ancora una volta  nel quadrante dei leader, offrendo una infrastruttura per la gestione della sicurezza degli accessi web basata su standard industriali, come SAML 2.0, ed in grado di proteggere e validare anche l'accesso a web services. Il tutto con un deploy di un unico file WAR nell'application server.


giovedì ott 23, 2008

Java SE 6up10: molto più di un update

Immaginate di trovare su internet un video-game 3D funzionante all'interno di una pagina web e di poterlo trascinare sul desktop del vostro PC in modo da farlo diventare un'applicazione come le tante già installate.

Oppure, di non avere il runtime Java SE e di dover scaricare in pochi secondi un kernel minimale che va a reperire sulla rete le librerie standard che dovessero servire ad una applicazione Java che volete eseguire.

Bene, da ora in poi è possibile grazie all'ultimo rilascio della piattaforma JavaSE 6up10 che, pur essendo un semplice update, introduce delle novità significative per lo sviluppo di applicazioni Web 2.0 e prepara la strada al rilascio imminente della piattaforma JavaFX.

Il principale obiettivo è quello di semplificare al massimo la distribuzione degli applet all'interno dei portali web, sfruttando contemporaneamente sulla piattaforma Microsoft Windows© le capacità grafiche del desktop con il supporto diretto di Direct3D©, per rendere gli applet Java sempre più appetibili per costruire Rich Internet Application e superare i limiti dei JavaScript e della logica troppo sbilanciata lato server.

Per avere un'idea della portata del rilascio, vi allego un interessante post su blog The Planetarium.

lunedì ago 18, 2008

LWUIT rilasciato in Open Source

LWUIT Lanciate alla JavaOne 2008, le Lightweight UI Toolkit (LWUIT) hanno avuto un incredibile successo. Questo toolkit, con un paradigma di sviluppo simile alle Swing, nasce per superare il problema che le funzionalità più avanzate di una UI su MIDP non sono accessibili via LCDUI, e gran parte del lavoro va fatto a basso livello, senza contare i problemi di visualizzazione che ne conseguono sui diversi device. Per favorire le attività che sono nate intorno a questa piattaforma sono state rilasciate in Open Source (GPLv2). Cosa si può fare semplicemente con questo toolkit? Ecco due esempi:



 Maggiori dettagli sul blog di Terrence Barr.

lunedì lug 28, 2008

Java sulle penne: rilasciato in beta l'SDK LiveScribe

La piattaforma di sviluppo Livescribe Penlet SDK 0.6 è stata rilasciata in beta da qualche settimana ed è pienamente utilizzabile da NetBeans 6.1.

Per chi non sapesse nulla della "penna Java", in chiusura della JavaOne 2008, nel consueto spazio dedicato da Gosling alle implementazioni più avanzate delle tecnologia Java, aveva fatto molto scalpore la demo del CEO di Livescribe, Jim Marggraff, che aveva presentato la sua creatura, la smartpen Pulsetm.

Gosling Keynote

In questa penna sono riusciti ad inserire una telecamera a raggi infrarossi, un processore Samsung ARM 9 a 32 bit, da 1 a 2 GB di RAM, uno schermo, un altoparlante, un microfono ed una piattaforma Java per eseguire applicazioni basate sullo standard Java ME CLDC 1.1 (JSR 139) e MMAPI 1.2 (JSR 135). Per chi vuole avere un quadro completo delle features: Pulsetm.

Questa penna si avvale della tecnologia della Anototm che ha brevettato una carta che, tramite un particolare pattern di stampa, è in grado di fornire le coordinate del punto in cui è stato scritto qualcosa. 

Con questa soluzione la penna, una volta accesa, è in grado di registrare attraverso la telecamera ad infrarossi tutto quello che viene scritto sulla memoria flash embedded. Collegandola ad una porta USB è poi possibile scaricare il tutto attraverso un'applicazione desktop che viene fornita.

Supportando delle API di Intelligent Character Recognition (ICR), le applicazioni deployate nella penna possono riconoscere in tempo reale quello che è stato scritto e, per esempio, tradurre la parola in un'altra lingua, con relativa pronuncia. C'e' una demo pre-caricata nella penna per dare un'idea di quello che si può fare in tal senso.

Per chi si volesse divertire a sviluppare le applicazioni penlet, è finalmente disponibile il kit di sviluppo.


lunedì mag 19, 2008

Wonderland @ ForumPA

Grande successo di pubblico per le demo Wonderland al ForumPA, evento che si è tenuto la settimana scorsa a Roma.



Allo stand Sun Microsystems Italia era disponibile la demo standard MPK20, con due postazioni: una situata nella meeting room allestita nello stand ed una esterna.




Allo stand Postecom, invece, era installata una demo sviluppata ad-hoc dal Technology LAB, il cui direttore Francesco Palmieri sta verificando le opportunità di utilizzo di Project Wonderland a beneficio delle Pubbliche Amministrazioni italiane. La sua presentazione su YouTube:

mercoledì mag 07, 2008

Pervasive JavaOne

JavaONE è stata anche un primo test-plant per la sensoristica controllata da Java.

Tutta la struttura del Moscone Center, dove si tiene la manifestazione, è stata disseminata di un device prodotto da Sentilla, basato su Java, che contiene al suo interno un sensore di temperatura, di accelerazione e connettività wireless, qualcosa di simile a Sun SPOT.  Attraverso questa rete è stato possibile determinare in maniera puntuale l'affluenza di pubblico nelle varie sessioni che si sono tenute alla CommunityOne che ha preceduto l'apertura della JavaOne. I grafici mostravano in ogni istante come si erano diretti i flussi di visitatori all'interno della struttura.

sentilla 


JavaOne: Java + You


Java + You

JavaOne si è aperta con con questo motto, partendo da una constatazione di fondo: "consumers drive innovation". Per questo la piattaforma tecnologica Java si sposa con gli utenti finali che alimentano con idee e contenuti il web. E come lo fa? Attraverso JavaFX che permette a chi non ha bisogno di un linguaggio di programmazione procedurale, ma piuttosto di una tecnologia che semplifichi la redazione di contenuti interattivi, di poter ottenere delle applicazioni che possono contare sulla piattaforma più pervasiva che esista: Java. Le tappe dei rilasci saranno:

  • Luglio 2008: JavaFX Desktop Preview
  • Autunno 2008: JavaFX Desktop 1.0
  • Primavera  2009:  JavaFX Mobile e TV

Quanto possa essere efficace JavaFX per trattare contenuti multimediali è stato dimostrato attraverso un paio di demo. La prima effettuava una ricerca su Fickr di foto attraverso i tag e queste venivano animate sul desktop. L'altra, invece, mostrava un browser per film che era in grado di eseguire delle preview anche di decine di titoli in simultanea, grazie ai codec mutimediali disponibili nella piattaforma di prossimo rilascio.
Per avere un'idea della pervasività di JavaFX è stata mostrata un'applicazione che girava sull'emulatore di Android, la piattaforma di Google per la telefonia mobile.

Funzionale a questa strategia anche la nuova release del tradizionale Java Plug-in. Nella preview della Java SE 6 update 10, infatti, è stato mostrato come un applet all'interno di FaceBook (LiveConnect) realizzato con JavaFX possa essere trascinato sul desktop dell'utente per andare a far parte delle applicazioni disponibili in maniere permanente, e sfruttando gli acceleratori 3D presenti sul sistema stesso, come una normale applicazione Java SE.  

Per concludere un testimonial d'eccezione che di creazione di contenuti se ne intende è stato chiamato sul palco a raccontare la sua esperienza con Java: Neil Young

Neil Young
 

Il cantante ha mostrato in anteprima il suo nuovo disco realizzato con la tecnologia Blu-RayTM che raccoglie tutte le sue canzoni dal 1963, insieme a filmati, fotografie d'epoca che raccontano tutta la sua carriera in modo assolutamente interattivo grazie alla tecnologia Java che supera il DVD in termini di flessibilità.

 

giovedì dic 13, 2007

NetBeans 6.0 rilasciato

NetBeans 6.0 è stato rilasciato ufficialmente ieri. NetBeans 6.0 IDE estende il supporto per lo sviluppo  ben oltre la piattaforma Java, fornendo un ricco set di features per programmare in C/C++, JavaScript e  Ruby,  compreso Ruby on Rails.

Per chi non l'avesse ancora provato nella versione beta, può scaricarlo da qui.

mercoledì nov 21, 2007

Ruby: il punto di vista di Sun Microsystems

JRubyL'interesse crescente intorno a Ruby non ha visto la Sun Microsystems indifferente e vorrei riassumere in questo post l'impegno che l'azienda sta mettendo per fornire piattaforme e strumenti per gli utilizzatori di questa tecnologia.

Ruby fino al 2002 era disponibile come interprete sviluppato in C. Con l'avvio in quell'anno del progetto JRuby, la community si è posta l'obiettivo di fornire una implementazione completamente basata su Java per sfruttarne la completa portabilità, e non solo.
A giugno 2007 è stata rilasciata la versione 1.0, sotto ben tre license d'uso (CPL, GPL, LGPL). Tale rilascio è basato sull'implementazione della 1.8.5 e, per inciso, di Ruby non esiste una specifica standard, ma si fa riferimento all'implementazione cRuby come standard de-facto, anche se ce ne sono altre disponibili.
Ruby pur essendo un elegante linguaggio interpretato, dinamico ed object oriented, dall'implementazione Java trae interessanti vantaggi per tragettarlo verso un uso enterprise, e non solo accademico o rivolto al Web2.0.

In particolare, la scalabilità legata alla gestione del multi-threading della JVM è uno dei primi vantaggi che si trae dall'uso di JRuby. Dall'integrazione semplificata con il codice Java si può accedere da Ruby al vasto set di librerie che troviamo sulla piattaforma Java, primi fra tutti i jdbc driver. Senza contare il fatto che l'applicazione RoR può essere ospitata all'interrno di un AS Java EE.

Fatte queste premesse, veniamo al supporto che Sun Microsystems sta dando e continuerà a fornire per questa tecnologia. Innanzi tutto abbiamo iniziato a mostrare concretamente l'interesse per JRuby con l'assunzione di due developer del core-team del progetto JRuby, Charles Nutter e Thomas Enebo.
Oltre a permettere ai due brillanti developer di dedicarsi a tempo pieno allo sviluppo di JRuby, questa operazione ci ha permesso di portare in casa l'expertise per indirizzare al meglio il supporto di Ruby nelle seguenti aree:

  • OpenSolaris: i prossimi rilasci conterrano il supporto per Ruby, così come avviene oggi per il Perl ed altri linguaggi di scripting;
  • JDK 7: si sta valutando la possibilità di un co-bundling di altri linguaggi interpretati come JRuby, sulla scia di quanto avviene nell'attuale versione 6, che implementa le JSR 223 ed include un Script Engine  per JavaScript basato su Rhino;
  • Tool di sviluppo: NetBeans 6, che verrà rilasciato il mese prossimo, include un completo supporto per JRuby e Rails, permettendo il packaging in un WAR file dell'interprete, e fornisce un editor intelligente ed un debugger;
  • Middleware: Glassfish V3, che nasce per essere modulare e configurabile in funzione delle applicazioni, avrà un  container per JRuby e RoR;
  • Security: sotto l'ombrello del progetto OpenSSO è disponibile una implementazione Ruby per SAML 2.0 SP come relying party.

Dalla panoramica che ho sintetizzato spero che gli sviluppatori Ruby possano trovare nella Sun Microsystems un ottimo supporto per la realizzazione di applicazioni basate su questo innovativo linguaggio.


venerdì ago 31, 2007

RESTful in Java

Faccio seguito ad alcune domande che mi sono state poste sul tema REST e su come Sun Microsystems sta approcciando l'argomento dal punto di vista del supporto Java.
Partiamo dalle specifiche, le JSR 311. In seno al JCP sono in corso di definizione le JSR per i RESTfull Web Service per la piattaforma Java (JAX-RS). Non sono delle vere e proprie API, ma rappresentano un set di annotations per POJOs (Plain Old Java Object). JAX-RS potrebbe essere potenzialmente integrato nelle specifiche Java EE 6.

JerseyLa  reference implementation è denominata Jersey. E' alla versione 0.2. e può essere installato in vari ambienti, come il servlet container di GlassFish, un end-point JAX-WS, Grizzly, Java 6 (usando il suo web server light), Tomcat, ecc.

Il Sun Web Developer Pack è una collezione di tecnologie per Ajax, Scripting, ATOM, e sviluppo di servizi basati su REST. La sua release R2 ingloba una precedente API rispetto alle JSR 311.
GlassFish è la piattaforma privilegiata per il deployment del Sun WDP e Jersey.
Per finire, come ambienti di sviluppo, vi posso segnalare NetBeans 6.0 versione M10 che contiene dei wizard per generare applicazioni REST a partire da Entity EJB o Pattern:

REST Netbeans

Spero di aver fatto chiarezza.

mercoledì ago 22, 2007

Sun Tech Days

Quest'anno, per la prima volta anche in Italia, faranno tappa i Sun Tech Days, conferenze itineranti che portano in giro per il mondo le novità tecnologiche presentate alla JavaOne.
Si fonde con la tradizionale Java Conference e offrirà un'ottima opportunità di formazione ed approfondimento delle tecnologie legate a Java, con diverse sessioni pratiche a disposizione. L'appuntamento è per il:

  • 24-25 settembre 2007 a Roma
  • 26-28 settembre 2007 a Milano

Tutto quello che occorre per partecipare è una semplice iscrizione gratuita.
 

mercoledì mag 09, 2007

Applicazioni di Sun Java Real-Time System alla JavaOne 2007

Oggi e' stato annunciato da Rich Green alla JavaOne 2007 il prossimo rilascio di Sun Java Real-Time System 2.0 (Java RTS), che fondendo un'estensione dell'implementazione delle JSR-001 alla scalabilita' di Solaris 10, promette di fornire nuova linfa allo sviluppo di applicazioni  mission-critical Java che richiedono una rigorosa temporizzazione.

Ne è un esempio il NASDAQ. La CIO ha dichiarato oggi di gestire le oltre 150,000 transazioni al secondo del mercato azionario sulla piattaforma Java e che intende portare tali applicazioni nel prossimo futuro su Java RTS. Il tutto è notevolmente semplificato dal fatto che basta cambiare le istanze di java.lang.Thread in javax.realtime.RealtimeThread ed immediatamente ereditare la potenza della tecnologia Java RTS.

L'efficacia gia raggiunta dall'implementazione Java RTS, ad ogni modo, la si puo' toccare con mano osservando alcune implementazioni presenti a JavaOne, come un prototipo di mini elicottero che, attrezzato di una unità di scansione radar laser per mappare e sorvegliare aree ben definite di territorio, è interamente gestito da una singola board Intel con Java RTS su Solaris 10.

 Helicopter java controlled

Oppure il più veloce robot industriale, l'IRB 340 della svedese ABB, che viene mostrato mentre disegna un volto e viene controllato da un'applicazione Java RTS:

IRB-340

 Per chi è interessato a saperne di piu: Java RTS

About

cdb

Search

Categories
Archives
« aprile 2014
lunmarmergiovensabdom
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
    
       
Today