Já está aberta a disputa para a maior competição universitária de Java do Ceará e uma das maiores do Brasil. O Prêmio Universitário Java estimula alunos de universidades e faculdades do estado a submeterem trabalhos acadêmicos envolvendo tecnologias Java e premia os primeiros colocados com uma viagem, uma vaga de estágio, vouchers de certificação da Sun Microsystems, entre outros prêmios. Veja a lista completa de premiação:
1º colocado: Uma viagem com tudo pago para uma conferência internacional (JavaOne, Jazoon ou outra de igual relevância) e vaga de estágio garantida na USIX.
2º colocado: Dois livros de Java, um voucher de certificação da Sun Microsystems, uma assinatura de revista impressa e um voucher para assistir ao InfoBrasil 2010.
3º colocado: Um livro de Java, um voucher de certificação da Sun Microsystems,
uma assinatura de revista digital e um voucher para assistir ao
InfoBrasil 2010.
4º colocado: Uma assinatura de revista digital.
5º colocado: Uma assinatura de revista digital.
Nesta edição do PUJ, foi criada a categoria Mobile, direcionada para trabalhos que utilizam JME (Java Micro Edition). A premiação desta nova categoria será:
1º colocado: Um celular Nokia E62.
2º colocado: Um voucher de certificação da Sun Microsystems.
Os alunos devem apresentar seus trabalhos acompanhados de professores orientadores da instituição de ensino.
O PUJ'09 é organizado pelo CEJUG, patrocinado por empresas locais e conta com apoiadores dentro e fora do estado. Acesse o regulamento da competição para mais detalhes sobre os deadlines e como submeter seus trabalhos.
I've gone to many
JavaOne
conferences at the
Moscone Center
but today was my first experience of a
Oracle OpenWorld.
I was very curious and I found the experience very interesting.
Although the two conferences are in the same physical space, the two experiences
are very different.
I only have an "exhibitor" pass, so I've not been able to attend any of the technical sessions
but, with those caveats, below are some observations; feel free to add
additional observations as comments to this entry.
Also check my
Flickr set.
•
OOW is significantly larger in attendance.
I've heard about 40K-45K; J1 was, at its peak, 20-25K (afair).
•
OOW uses not just Moscone North and South, but also West, and they close Howard street.
•
The tent is an integral part of the event, used for lunches, drinks and as a lounge.
•
The dress code at OOW are suits...
and very few body piercings :-)
•
Most attendees at OOW
seem to use (smart)phones to stay connected (to their admin assistants?).
•
The (internet cafe-like) area with stations to check email / browse at OOW is much smaller
than at J1
•
The expo and keynote areas are reversed between Moscone South and North.
•
The Expo at OOW is very busy, with all the big names in SIs, hardware, software, etc.
•
No more bean bags at the bottom of the stairs.
•
The developer track is 6 blocks away, at the San Francisco Hilton.
Really, the two conferences can't be more different.
Also check out
some pictures I took.
La gestión de IT constantemente le
pide que haga más con menos. Tradicionalmente, la atención se ha
centrado en el hardware: retorciendo más productividad de los
servidores, la consolidación de sistemas para reducir costos, y así
sucesivamente. Pero también hay oportunidades para ahorrar dinero y
mejorar la eficiencia permitiendo a la gente hacer más con menos -
en particular cuando se trata de la gestión de entornos de
escritorio.
Visualizar un entorno virtualizado
En
el servidor de la misma manera y sistemas de almacenamiento pueden
ser virtualizados para aunar recursos y mejorar las tasas de
utilización, los entornos de escritorio puede ser virtualizado para
mejorar la productividad del usuario final, manejabilidad y
seguridad. A través de productos de virtualización como el
software VirtualBox, un único escritorio puede alojar múltiples
sistemas operativos y realizar diferentes tipos de puestos de
trabajo. Así, un PC con Windows ya no es sólo un PC - También
puede ejecutar el sistema operativo de Macintosh en una ventana, en
otra Linux, OpenSolaris, y en otro.
Por otra parte, con VirtualBox el
dispositivo de escritorio ya no se limita al número de CPU físicas.
Puede ser configurado con CPUs virtuales (hasta 32 CPUs virtuales en
un único sistema) o puede aprovechar la potencia de procesamiento de
grandes servidores.
Y con VirtualBox el dispositivo de
escritorio ya no está sujeto a las amenazas a la seguridad lo mismo
que un ordenador, porque los entornos virtuales están aislados del
medio natural y pueden ser desechados en cualquier momento. Así, los
usuarios pueden sentirse libres para probar un nuevo software o
descargar programas en un entorno virtual sin correr el riesgo de
contaminación de la máquina anfitriona.
Puedes incluso
probar un nuevo sistema operativo, como Windows 7 o la última
versión de OpenSolaris, o iniciar una instancia de un sistema
operativo heredado, como OS / 2, sin alterar nada o de poner los
recursos en riesgo.
Piense en el dispositivo de escritorio
como una casa con habitaciones diferentes para propósitos
diferentes: una "oficina" donde el trabajo se mantenga
separado del material de origen; "habitaciones familiares",
donde cada miembro de la familia tiene su propio espacio y pueden
hacer / romper cosas a voluntad zonas (ideal para los adolescentes);
"segura" donde se pueden hacer transacciones financieras
con total seguridad, incluso un "gabinete de limpieza" que
limpia los otros espacios en el fondo.
Igualmente importante,
a través de la capacidad de gestión de productos como Virtual
Desktop Infrastructure (VDI), la administración de los entornos de
escritorio virtual puede ser centralizado y racionalizado, ahorrando
tiempo y gastos administrativos. Desde equipos de sobremesa son el
centro anfitrión, sólo la pantalla, se envía al dispositivo
cliente, los datos críticos nunca sale de la red de la empresa y
puede ser administrado y respaldado por IT.
Ejemplo: Sun VirtualBox y Sun VDI en
JavaOne
Para comprender mejor el real potencial mundial de
VirtualBox de Sun y Sun VDI, miremos el ejemplo en cómo Sun
gestionó 21.000 escritorios virtuales para los asistentes de la
conferencia JavaOne de este año en San Francisco.
Sun instaló cientos de Sun Ray en
todas las zonas del Centro Moscone, donde se celebró la conferencia
JavaOne.Cada asistente se le dio una tarjeta
inteligente, como parte de su registro kit de bienvenida. Para
acceder a su casa o escritorios de trabajo de las Sun Rays, todo lo
que tenía que hacer era insertar la tarjeta inteligente en el más
próximo Sun Ray y elegir el tipo de escritorio virtual que querían:
Windows 7, Ubuntu Linux, o de OpenSolaris.
La primera vez que el usuario hizo la
elección, y elegió la máquina virtual de escritorio (VM) se ha
creado sobre la base de una plantilla de Sun VDI. La configuración
de máquina virtual se almacena en una base de datos MySQL, y la
imagen de disco virtual fue rápidamente clonado a partir de la
plantilla. Luego, Sun VDI eligió un servidor VirtualBox, puso en
marcha la nueva máquina virtual en el servidor, y autenticado en el
disco virtual. Cuando el usuario retira su tarjeta inteligente, la
máquina virtual se suspende después de un corto período de tiempo,
liberando recursos para otros usuarios. Re-inserción de la tarjeta
inteligente re-lanzado el escritorio virtual creado previamente, y la
máquina virtual fue restaurado desde el disco.
Como muchos
administradores están obligados a gestionar estos 21.000 escritorios
virtuales? Un gran total de dos.
Y el hardware de cuánto de alta
potencia se necesita para ejecutar todo? Un solo rack, con cuatro
servidores VDI (servidores Sun Fire X4450, cada uno con cuatro CPUs y
64 GB de memoria), cinco servidores VirtualBox (servidores Sun Fire
X4450, cada uno con cuatro CPUs, seis núcleos por CPU y 64 GB de
memoria). Esta configuración, por cierto, resultó ser excesiva para
las necesidades!
Many folks reading this will be familiar with Sun's Virtualbox desktop hypervisor. With an install base of over 16M and more than 1M new downloads each month, this free (for personal use) Open Source Type 2 hypervisor is quickly becoming an attractive alternative to more established closed source offerings. VirtualBox is fast, extremely lightweight, runs on virtually all host operating environments and supports over 30 different guest OSes. The latest 3.0.6 release download for my Intel equipped MacBook Pro was just under 63 MBytes in size, significantly smaller than either Parallels or VMware Fusion.
Perhaps less well known is how Sun has combined VirtualBox with our Virtual Desktop Infrastructure (VDI) and stateless Sun Ray thin-client technologies to offer a highly integrated, low-cost virtual desktop solution. Sun showcased this technology at this year's JavaOne conference in San Francisco by hosting 21,000 virtual machines with the choice of Windows 7, Ubuntu Linux, or OpenSolaris desktop environments. Even more impressive is that Sun managed to support this entire environment with only 2 system administrators.
As enterprises embrace desktop virtualization as a way to improve security, lower administrative costs, decrease hardware footprints and increase server utilization, VirtualBox combined with Sun's VDI and Sun Ray technologies should be on the short list of candidates for those on a limited budget and especially for those interested in creating a Windows Desktop as a Service offering with support for remote clients attaching over the public Internet. VirtualBox's built-in RDP support allows remote RDP clients full access all the way down to each guest Virtual Machine's console. Sun's VDI infrastructure communicates with the client using RDP but talks to the Sun Ray Thin-client using the highly efficient ALP Sun Ray display protocol which greatly improves display performance over WAN distances. Together, these features provide unique advantages both for enterprises and for this emerging desktop service business model.
Elaborating on some slides from a JavaOne talk,
the Mandelbrot set is defined recursively as the set of values in the complex plane C where the iterations zn+1 = zn2 + c remain bounded, giving rise to a familiar and complex shape.
Determining whether a particular point is inside or outside the boundary of the Mandelbrot set can be difficult because of the fractal nature of the curve; however, good approximations are possible. First at a coarse level, if the absolute value of a point is greater than 1, it is definitely not part of the Mandelbrot set so all of the Mandelbrot set is contained within a circle of radius 2 centered at the origin. Second, there are two primary curves within the set:
A circle of radius ¼ centered at (-1, 0)
A heart-shaped cardiord whose boundary is c = eit/2 - (eit/2)2
The overall area of the Mandelbrot set is a bit over 1.5; the circle has area ≈0.1963, 13.0% of the total, and the cardiord has area ≈1.178, 78.1% of the total. Therefore, together the circle and cardiord contain over 90% of the area of the whole set and it is comparatively easy to determine if a point is inside or outside the union of the circle and the cardiord.
Using generics in Java has some similarities to the Mandelbrot set. Generics can be recursive, such as in the f-bound in the declaration of java.lang.Enum: public abstract class Enum<E extends Enum<E>>..., and it can be trickly to determine if a use of generics is reasonable. Fortunately, another similarity is that there are two primary use-cases for generics that cover the vast majority of sensible scenarios:
Aggregates like subtypes of java.util.Collection are the heart of generics usage and using generic collections is usually straightforward; Effective Java's PECS mnemonic (producer-extends, consumer super) provides guidance for some of the trickier cases. The second most common use of generics is for type tokens, Class<T>, which embody type information both at compile-time and at runtime. For example, type tokens are used to
retrieve annotations.
Be wary of other uses of generics in Java.
Java's generics have significantly technical differences from templates in C++; Java generics are by design not a Turing-complete meta-language!
Attempting to use Java generics to simulate features in another languages, like Haskell's pattern matching, is unlikely to lead to pleasant or idiomatic Java code.
In a Java program, using pervasive type parameters to pass along other information throughout a program,
such as to address code evolution issues, is also not a pleasant fit.
A warning sign in API design is a Java class having more than two type parameters; this likely signals generics are being used in an awkward way.
As I keep referring to some of the items we did for OpenESB at JavaOne, I'll just summarize some of the artifacts.
I was "lucky" enough to get on stage for the technical keynote with Bob Brewin to show how we used Project Fuji (OpenESB v3) to put together the live application "CluedIn" for J1, using the whole Sun middleware stack.
It was quite an experience, and I had several teams (especially WebSpace server and OpenESB teams) put a lot of effort into making this not just a demo, but something that goes live. The way it works at Sun is that you only get to know a few weeks before the show that your proposal is "on" - hence the quotes around "lucky" ;).
This session I did with Bruce Snyder from SpringSource, he showed how Apache Camel can be used, whilst I showed how IFL from Project Fuji can be used. That went pretty well, my only challenge was reading slide cues off of a small private laptop screen in split screen mode, I recommend using the larger J1 monitors.
This presentation I did with my colleague Frank Kieviet. The intent is that folks gain some insight into why frameworks choose to do things a certain way, and hopefully to give you some criteria to evaluate and choose frameworks; so we don't expect everyone to go out and implement their own ESB using these lessons. Several of the lessons translate to frameworks in general and not just ESBs, it might be interesting to do one that focuses solely on how to address and overcome some of the concerns levied against ESBs.
This was an interesting presentation in a discussion format I did with Guillaume Nodet from ServiceMix / Progress Software, Kevin Conner from JBoss and Keith Babo from Red Hat. Unfortunately the audio in that room was really bad and we had a hard time hearing some of the audience questions; on the bright side it turns out that OSGi and ESBs are pretty good friends ;)
Just as I thought I was done with presenting, Arun caught me for a quick "roaming reporter" video blog
Thank you again to everyone that joined our series of author chats in Second Life during JavaOne 2009. If you missed the sessions, here are some replays and slides as a way to share the learning - these are all posted to Sun's Social Learning Exchange (a fabulous platform for information and knowledge sharing - learn more here!)
June 4th at 9am PT Core JavaServer Faces 3/E by David Mark Geary and Cay Horstmann Rough Cut access via Safari Books Online: Non Sun Employees | Sun Employees (early access to the book)
Thank you again to everyone that joined our series of author chats in Second Life during JavaOne 2009. If you missed the sessions, here are some replays and slides as a way to share the learning - these are all posted to Sun's Social Learning Exchange (a fabulous platform for information and knowledge sharing - learn more here!)
June 4th at 9am PT Core JavaServer Faces 3/E by David Mark Geary and Cay Horstmann Rough Cut access via Safari Books Online: Non Sun Employees | Sun Employees (early access to the book)
Well, it has been a while coming, but I have finally started to put together the wrap-up from the 2009 JavaOne conference.
This year I was fortunate enough to be the host of the show. Many people asked me if it was weird replacing John Gage. To make this perfectly clear, there is NO possible way to "replace" John Gage. John is a force of gravity in the world that is his alone. I just tried to add my own personality into the mix and helped to move the conference along. It was a great honor to have hosted this year.
It is amazing the amount of effort that goes into producing s show of this size. The amount of coordination, review and materials that need to be prepared is staggering. Overall, I believe this year's JavaOne was a resounding success. Consider what we saw at the show: Sony Ericsson, Oracle, Microsoft, eBay, Intel and Verizon all taking a position and expanded role in the Java universe, 300+ sessions, over 70 countries represented, 7000+ attendees, students, CommunityOne, etc. HUGE.
The momentum around the Java universe and connected technologies continues to expand, permeate and allow for innovation to occur. I find it interesting to use the term "universe" when discussing Java as a platform and the reach it has achieved.
*** Segue ***
I am a big fan of the the show "The Big Bang Theory".
One of the coolest things about the show, aside from being hilarious with an amazing cast, is that the science and mathematics used in the show is accurate. Basically, the show introduces physics concepts and theories to the general public in an accessible format. (Stay with me here, there is a point!)
After watching the show for some time I went back and started re-reading some physics and string theory books that I have in my collection. "Parallel Worlds" by Professor Miko Kaku is one of my favorites. He has a very entertaining way about his writing that makes some very heavy concepts palatable for a wide audience. One section of this book was dealing with dark matter; which is the most pervasive yet invisible forms of matter in the universe that, without it, would cause cosmic systems to collapse.
After thinking about it, I realized that Java truly is the "dark matter" of the internet. It is present in more devices than any other language, used my more web services than any of you know, and is invisible to the user even when they are using it. It's commanding presence in the fabric of connected, information technology and platforms is absolute and these same systems would collapse, across the world, if it's presence was removed.
This is not posturing or an overstatement. It is, quite simply, fact.
The pervasiveness of Java was evident in the talks that ranged from Java and Wii controllers, Nintendo DS and PSP, to high school robotics, to navigation systems, medical equipment, mobility, televisions, VR control systems and scalable cloud infrastructures. Java is increasingly interwoven in the digital fabric that we depend on today and in the future.
And much of this innovation has been driven my the enormous and passionate global Java community. I applaud you and thank you for your fiery inspiration, commitment to something bigger than ourselves and to working to make the technology and it's community a tremendous success.
The future for Java technologies has never been brighter. The development of JavaFX, the stated infusion of resources into continuing it's growth and momentum, the affirmation of the technology from the biggest technology companies in the world; there has never been a better time to be a Java programmer than right here, right now.
Now, some media!
Setting up the JavaOne Expo floor
Backstage wizardry!
The world famous Anthony Rogers!
Me and James before the Toy Show.
Opening thoughts for Microsoft Keynote.
Opening to the Toy Show and Darkchat overview.
Another PIE Guy video....hmmmm.......
Gosling and Java. (AWESOME!)
JavaOne Insider - Episode 1
JavaOne Insider - Episode 2
JavaOne Insider - Episode 3
And now....the "Dude, Where's My Pass?" videos where I embarrass myself for the cause of the contest!
Again, it was a fantastic privilege to be the host of this year's conference. I had a ton of fun, enjoyed meeting tons of conference attendees just walking around, and I look forward to seeing you at next year's JavaOne!
Today the full logical classpath available to an application or used in javac is actually a
twisty little maze of concatenated sub-paths, starting with the bootclasspath, followed by the extension directories, and finally the classpath setting itself.
The endorsed standards override mechanism is used to selectively update various components logically included on the bootclasspath as part of the JDK, either components for standards that evolve outside of the JCP, like Corba, or standalone JSRs also shipped with the JDK,
like JAX-WS.
The extension mechanism can be used to support technologies not shipped with the JDK, such as an independent JSR or even a site-wide library.
The table below shows the different command line options to java and javac that can be used to configure the sub-paths.
These options have evolved over time. The bootclasspath and extension directories were added in JDK 1.2, the ability to prepend to the bootclasspath was added in JDK 1.3, endorsed standards were added in JDK 1.4, JDK 5
harmonized the path options on the java and javac command lines, and JDK 6 allowed classpath wildcards, but only for the strict classpath component and not for bootclasspath or the
Class-Path Jar manifest attribute.
Check the documentation for the JDK release in question for matching configuration information.
There is certainly plenty of opportunity for modularity in JDK 7 to simplify the configuration options needed to resolve dependencies!
At JavaOne I attended an interesting session around a new service called Zembly. It is a developer service build on the Sun Cloud and as a beta is available free to developers. They described Zembly as:
A browser based, social IDE
REST service mashup platform
Massively scalable app hosting cloud
Or put another way Development as a Service and Platform as a Service. The development tools themselves are delivered entirely within the browser (I think using AJAX and HTML but they did talk about using JavaFX in the future) and provide click and include access to a large number of REST based web services that are available today on the next. The tools support a number of scripting languages (PHP, Python, JavaScript and Ruby). From the demonstration it looked pretty easy to quickly mash up some quite compelling web applications and then deploy them to the cloud. This means as a developer you can experiment with new web services (development and deployment) without the need to make any investment over and above the laptop and browser that you have today to access the net. At the moment (at least while the service is in beta) it is free to use.
By deploying to the cloud you can start your deployment as small as you want and scale as quickly or as slowly as you want. If your service does not take off you can just turn it off and try another one. This seems to me like the perfect way to stimulate the next wave of web based innovation.
In this Hands-on Lab, learn about security concepts such as single sign-on (SSO) and federation and put them into action, learn about the OpenSSO security framework and services, and learn how you can use this open-source project to secure your own applications.
A new video from Daniel Raskin, Sun's Smoking Monkey in charge of identity strategy, showing how the Fedlet can now easily SAML-enable an SP on the .Net platform.
All the JavaOne Hands-on Labs from this year are published at the Sun Developer Network. These "tutorials" will allow to get your hands dirty with the latest greatest technologies. However you'll miss the best part and that's the explanation of the speakers and help of proctors at J1.
The 2009 JavaOne conference may be over, but the learning doesn't have to be. Share with peers and friends what you learned from the technical sessions you attended while at the Conference or from the PDF presentations hosted at JavaOne Online. Learn more about the blogging contest.
It's worth to watch the following Technical General Session video to see the technical overview and current state of the Java platform.
JavaFX: Revolutionary, augmented GUI, ease of development, graphics, etc.
Project Kenai where you can host your open source projects and code, as well as find and collaborate with developers of like mind
Project Zembly is a browser-based development environment that consumes RESTful services
Netbeans 6.7 available with improved Kenai integration and other developer productivity enhancements
Java SE 7: Current is Milestone 3, Milestone 6 in Oct '09, Milestone 8 in Feb '10 – Release Candidate
JDK 7 (modularity, Project Jigsaw, JSR-294, no more classpath, aggregator, module files, multi-lingual JVM, the Da Vinci Machine Project: JSR-292 (InvokeDynamic) new byte code, Project Coin: small language changes, the Diamond <> operator, concurrency and collection updates, JSR-203 (Additional new I/O API's), Socket Direct Protocol, Stream Control Protocol, JSR-308 (Type Annotations)
Hotspot performance, Parallel Classloaders, Compressed 64-bit pointers, G1 Collector (very low pause, high probabilistic, more tunable than CMS) (I mentioned that many of these performance features are also available now with JDK 6 Update 14)
Client side improvements: XRender 2D pipeline, Swing Date Picker, Updated Unicode 5.1 support, etc.
Java EE 6: 09/09 release, more powerful, flexible, ease of development, profiles and pruning, extensible
Web tier improvements: JAX-RS 1.1 RESTful Web Services, JSF 2.0, Servlet 3.0, JSP 2.2, EL 1.1, etc.
EJB tier: EJB 3.1, “Lite” standalone version, JSR-303 Bean validation, packaging in WAR
Java Store launched: Connecting Developers to Consumers (bytecode upload, verification by Sun, published warehouse, URL for user feedback, developer updates)
I was sincerely impressed by each and every Campus Ambassador I met. Not only do these students have their regular academic activities to focus on - but they also are adept at using Sun software and lead OSUM clubs on-campus and in their communities.
And, as you might expect, they are very proficient in just about every cool new communications tool you can think of - tweeting, flickering, and blogging (oh my!) about their experiences along the way.
For most of the Ambassadors who traveled to San Francisco it was their first time in the United States - and their enthusiasm and energy was infectious. Check out this trip report from Angad Singh, one of the Campus Ambassadors from India, for a sense of what the whole experience was like for he and his fellow Ambassador friends from India, Korea, Brazil, and Chile.
Overall, Sun welcomed nearly 1000 students to the both
the JavaOne andCommunityOne events this year. Check out the complete line-up of student videos and stories HERE.
Thanks to all the talented Campus Ambassadors I met who shared their global experiences, passion for learning, social media savvy, and laughter with me. I have no doubt you will go on to do great things!
Here's a pic of me and Hyejin Park Sun Campus Ambassador from Korea.
One of the cool things I discovered at JavaOne this year was
a framework for building rich internet applications (RIAs) called Vaadin.
Besides being a very nice tool, they also had the good idea of giving away printed copies of
their free book at the booth. Since my laptop battery time is limited,
having a hard copy to read gave me plenty of time to learn about it between sessions, while waiting to meet
people, while sitting at the bar, etc.
Vaadin is a web application framework that lets you write Java code to create your web pages. No JSP, no HTML
(unless you want to), no XML, etc., and only one jar file needed for the framework. Somewhere in my reading or
while talking to one of the Vaddin people, I came
across the one exception to the "no xml" statement: Vaadin is still a Java EE application, so of course there is still
a web.xml file needed to deploy an application. My first thought was, "We can fix that, right?" So for no
particular reason, here is how to create a rich internet application with no XML files at all using Vaadin and Servlet
3.0 inside GlassFish v3 Preview.
To get rid of the web.xml file, use the @WebServlet annotation on your servlet
class. Vaddin is open-source, so of course you could add it to the class and rebuild it. But let's do the proper thing
and subclass the servlet. I've put it in the same package as the parent in case it's looking for any resources relative
to the package. Here is the entire class:
package com.vaadin.terminal.gwt.server;
import javax.servlet.annotation.WebInitParam;
import javax.servlet.annotation.WebServlet;
@SuppressWarnings("serial")
@WebServlet(
name = "Noxml Application",
initParams = {
@WebInitParam(name = "application",
value = "com.example.noxml.NoxmlApplication")
},
urlPatterns = { "/*" }
)
public class EE6ApplicationServlet extends ApplicationServlet {
// nothing here
}
Pretty simple stuff. Thank you Servlet 3.0. Now, to give you a sense of what Vaadin is like and to show that this
really works, here is the application I wrote. It simply adds a couple blocks of text to the web page and a button.
Clicking the button switches the text between the two lines (called "labels" in Vaadin). Here is the entire class:
package com.example.noxml;
import com.vaadin.Application;
import com.vaadin.ui.*;
import com.vaadin.ui.Button.ClickEvent;
@SuppressWarnings("serial")
public class NoxmlApplication extends Application {
/*
* A very simple application with two labels and a button.
* To keep this short, I've added an anonymous listener
* for the button that calls my very exciting swap method.
*/
@Override
public void init() {
// create components
Window mainWindow = new Window("Noxml Application");
final Label label1 = new Label("Hello RIA.");
final Label label2 = new Label("Goodbye XML.");
Button button = new Button("Very Exciting Button",
new Button.ClickListener() {
public void buttonClick(ClickEvent event) {
swapText(label1, label2);
}
});
// add 'em
mainWindow.addComponent(label1);
mainWindow.addComponent(button);
mainWindow.addComponent(label2);
// add window to the application
setMainWindow(mainWindow);
}
// where is my tuple unpacking?
private void swapText(Label l1, Label l2) {
Object temp = l1.getValue(); // a string in this case
l1.setValue(l2.getValue());
l2.setValue(temp);
}
}
That's all there is to it. My entire web application contains only three classes (one is the anonymous inner
class in NoxmlApplication), a single jar file in the lib directory, and no xml files. It's not much to look at since
I kept it simple, but all of the Ajax requests/responses are taken care of for me and I just wrote a little Java code.
Speaking of not much to look at, here is a
very exciting screen cast of
the web application in action.
I've included the Vaadin links above. If you'd like to try out GlassFish v3 and the great developer
features of Java EE 6, here are some instructions on setting up the application server with
NetBeans and with
Eclipse (the latter only shows v3 Prelude, but
you can use a v3 server as well). For more on creating a servlet using the 2.0 annotations, see
Arun's blog.
Have fun.
Even though it has officially been a month since JavaOne 2009, their is still a lot of buzz surrounding the event and the student experience.
Avinash Joshi, a Sun Campus Ambassador at Amrita Vishwa Vidyapeetham, Kerala, attended JavaOne and recently blogged about his time at the conference. He said: "What a learning experience...! Learning never stops."
That definitely seemed to be the case as developers young and old came to share and learn at JavaOne. Hopefully the tradition of JavaOne will continue next year -- with the same generous offer of free entrance to students!
You can check out all the details of Avinash's time at JavaOne as well as his nearly a dozen links to photos, videos, and more.
And, just to make your day, here is a short 2-minute clip that gives a glimpse into the student experience at JavaOne:
Az első félév zárásaként, egyébként pedig a Sun 17 éves Kapás utcai jelenlétének lezárásaként is megtartottuk a nyári szabadságok előtti utolsó JavaCafénkat. A helyszín a régi volt, az időpont és a téma egy kicsit szokatlan, ennek ellenére a közel 60 résztvevő hasznos és talán felejthetetlen rendezvényen vehetett részt.
A meghirdetett téma az idei JavaOne konferenciáról szóló élménybeszámoló volt Momó és Géza tolmácsolásában, de a Sun költözése ürügyén egy nagy halom marketing ajándék és néhány SunRay vékonykliens is kisorsolásra került.
A konkrét tartalomba most nem mennék bele, hiszen leginkább élmények megosztása volt a cél, az említett szakmai anyagokat pedig sokkal teljesebben el lehet érni a rendezvény honlapjáról. A lényeg, hogy a levetített videók teljes terjedelemben (sok egyéb videóval együtt) a konferencia honlapjáról, az elhangzott prezentációk diái és a hands-on labok a fejlesztői oldalról letölthetőek.
Géza élménybeszámolója alatt elég sokat foglalkozott a közelmúltban jelentősen megújult JavaFX-el. A JavaCafén is bemutatott JavaFX példák elérhetők a JavaFX weboldaláról illetve itt jegyzem meg, hogy a sokak által kedvelt és méltán népszerű Java with Passions oldal folyamatosan egészül ki (illetve frissül) a JavaFX tanfolyamokkal is. Aki most ismerkedik a technológiával, annak mindenképpen hasznos lehet végiglapozni a site-on elérhető ingyenes tanfolyamokat.
Végül, de nem utolsósorban: Ősszel is lesz JavaCafé (legalábbis ha rajtunk múlik), de már biztos hogy nem a Kapás utcában. A pontos helyszínről és időpontról majd tájékoztatunk benneteket!
If you missed this year's JavaOne conference or want to get details of sessions you attended, you can review the slides from technical sessions on the JavaOne Online site.
Voici les présentations faites à la troisième édition de l'Aquarium Paris :
• Versions PDF.
• Les mêmes sur slideshare.net
Merci à tous les participants et en particulier à Jacky de Cap Gemini pour son retour sur GlassFish et son déplacement de Lille.
Pour ceux déçus par l'absence d'une présentation dédiée à JavaFX, je vous invite à vous rendre au ParisJUG ce 7 Juillet ou il en sera question en détails.
Attending
JavaOne 2009 Conference at San Francisco was a wonderful, learning
experience. As a part of Sun Microsystems's Campus Ambassador Program,
they nominated five CA's from all over the world who would get an
opportunity to attend the JavaOne 2009 Conference, fully sponsored by
them. Let me now share my JavaOne 2009 experiences with you all.
Let
me start with the day when we reached San Francisco. Three of us –
Ashwin Bhat from Mangalore, Angad from Delhi (Both of them are Tech
Leads) and I – landed at San Francisco on Sunday, the May 31 afternoon,
It was one of the "most awaited moments" of my life. When I reached the
hotel lobby (Hotel Nikko, where we were put up), Gary was there to
receive us. He had told us that we would meet-up for dinner at 6 p.m.
Besides me, other three CAs, Tom, Hyejin, Felipe had also checked in at
the hotel around the same time. After the dinner, he told Tom, Hyejin,
Felipe and Me that all four of us would be on stage with David Douglas
during his Keynote session the next day! Wow! This news was thrilling….
To be in front of 3000 audience (delegates) was unimaginable!
On
June 1st (Day-1), we were ready with our "two sentences" that we were
supposed to answer to David on the Stage. In the course of his Keynote
Address, David invited all four of us (CAs) to the Stage. After
welcoming me to JavaOne, David asked, "What OSUM looks like in India".
That was simple. I answered, "As Campus Ambassadors, we have set up
OSUM Clubs in various Universities in India, where we conduct Tech
Demos, Contests for the Student Communities. It’s all about promoting
Free and OpenSource Softwares to the Students. For more details, please
visit osum.sun.com"
It
was truly amazing to be on the Stage - not as speakers but to be
rewarded :). I was extremely delighted when I looked back on the
Stage…. Our University name was up on the big screen! Amrita Vishwa
Vidyapeetham declared its presence, on the world-map!!
JavaOne
was a huge convention. It was Java, Java and Java, all the way.
Everywhere there was Java in some or the other form. The Pavilion
opened up at around 3 p.m. When I went in, there were a number of
stalls/lounge put up by different companies, individuals, or anyone who
use Java in some or other form. I was given the responsibility of
manning the "OSUM Lounge" - a stall/lounge for students to come in and
learn or join the OSUM Community. The entry to JavaOne Conference was
free for the students so we had many coming in! It was nice to meet a
lot of students and exchange the thoughts. At the OSUM Lounge, we had a
"Scavenger Hunt" where we gave out small cards to the students with a
list of "must attend" technical session, lectures beneficial to
students. To verify they attend the session, a person from the stall
would stand in front of the hall for stamping. And at the end of the
day, if a student has a minimum of 4 stamps, they are entitled for the
Raffle where "IPod Touch" or "SunSpot" were given out! This helped
students participate efficiently in the JavaOne event by providing the
schedules ahead of time. Fun while you learn….!
Apart
from OSUM Lounge, we had the OpenSolaris Install Lounge, Sun Cloud,
Zembly, Intel, Sony, BlackBerry, JavaFX and many other stalls. There
was also an interesting stall titled "Create Your Custom T-Shirt". When
you give a caption like, for example, "Java + Community = Powerful",
you will have this printed on your Java T-Shirt. It was fun!
The
2009 JavaOne Conference opened on Tuesday (June 2, 2009) morning with
the Sun General Session. Hosted by the Sun Microsystems CEO Jonathan
Schwartz, the session ended with an appearance by Sun Chairman and
Co-founder Scott McNealy, who introduced surprise guest Larry Ellison,
Co-founder and CEO of Oracle Corporation. Oracle's acquisition of Sun
Microsystems, announced in April, is expected to be finalized in the
next few months.
Schwartz
opened the 14th JavaOne conference with a trip down the memory lane. It
was fabulous. My day went in interviewing people - for JavaOne Minutes,
asking them about their experience at JavaOne and running around in the
Pavilion grabbing my "GOODIES". I got loads of them. I also had an
opportunity of talking at an Exclusive JavaOne Radio Coverage with Lin
Lee, Vice President Global Communities, which was streamed online.
My
next best moment at the Sun Party was when I got a rare opportunity of
standing with James Gosling, the Founder of Java for a photograph. It
was great; I am going to preserve this photograph life-long! A real
memoir, of course!!
The
next day, I went on attending the sessions, manning the OSUM Lounge,
running around and so on. The best part of the day was when we CAs were
called for a video shooting as part of The Global Communities Teams
Success Stories, which works directly with Influencer Worldwide who
shape how billions of people use and will be impacted by technology.
After that, we had a dinner party with Lin Lee and some more Sun
Employees who help with the Student Communities around the world. Here,
Gary surprised us (Tom, Hyejin, Felipe and me) by presenting a very
nice glass cube memento to each one of us. It was really awesome with
our name and "Campus Ambassador Program - Outstanding Results Award"
carved on that. Thank you Sun!
Thursday
was usual - attending sessions. In the second half, Gary took us all -
Angad, Ashwin, Kevin, Felipe, Tom, Hyejin, David Botterill and me - on
a San Francisco tour. It was again a great one. Thanks a bunch Gary!
On
the last day, James Gosling's annual whirlwind Toy Show at the JavaOne
conference displayed not only technical excellence and innovation, but
also excellence in generating technology that serves humanity. He gave
out the "Duke's Choice Award" - The award for the most innovative
concept / idea done using Java. The event was well attended, and the
audience was enthusiastic as ever.
What
a learning experience….! Learning never stops. In all, it was a great
opportunity that I got from Sun. Sun Microsystems is an amazing
Organization. I am so much influenced by the people and the technology
@ Sun that it’s hard to leave them all. I just cant complete without
thanking (in no particular order) - Lin Lee, Gary Serda, Ganesh, Vijaya
Santosh, Ajay, Rajesh, Kumar Abhishek, David (who was with us all the
time entertaining us), Pratibha (Travel Desk), and Veena Damodaran
(sorry if I have missed someone). I am greatly indebted to my College
for creating this opportunity for me and for the support. In
particular, I want to thank my professor, mentor, guide and friend
Vipin Pavithran Sir who was the source for me to reach up to this
level. He inspired me; ignited my thoughts and took me to the right
direction. Finally, thanks to my parents, for their encouragement and
support in my endeavors. Thank you everyone.
Here's a quick video showing student participation at JavaOne - I've said this before and I'll say this again - where was all of this when I was a student:
Here's another quick video with Nicole Yankelovich talking about Project Wonderland, it's a good introduction to Project Wonderland, and for students, some words about virtual worlds as a day job:
And if you are interested in Project Wonderland, there's a lot of recent activity there, you might also want to check out: