Mine added:
Apache commons-* (pfft, everyone should know this one already)

—  I wanted to mirror this reddit comment, and hopefully add some of my own. Some of these I already knew about, and some I ended up finding outside of this list later on.
VMware furnishes funds of 420 million dollars and purchases and increases income in the company

The virtual apparatus provider VMware announces on Monday, will furnish funds of 420 million dollars and purchase one and increase income in the company SpringSource privately, business of strengthening the cloud and calculating application management and increasing income in the community etc..

VMware shows, after purchasing SpringSource, its business will include being virtual and employing framework and cloud to calculate etc.. VMware claims in a statement, this purchases and costs cash and stock of 362 million dollars, and the option of 58 million dollars altogehter. The trade is expected to finish in the third quarter of this year.

At the telephone conference of the analyst on Monday, VMware reaffirmed the achievement expectancy of the whole year to the third quarter and this fiscal year, in order to reflect this transaction. However, it is estimated it is not U.S.A.’s accounting criterion running gross profit rate in the third quarter that this transaction will influence VMware.

Insider think, purchase SpringSource help VMware ” the platform will be served promptly ” Plan. VMware plans to put out integrally ” The platform is served promptly ” The solution, including software and VMware original vSphere cloud operating system of SpringSource.

SpringSource whether one establish company for 5 year already, with activeness to increase income in developer’s community, and some big corporate clients. Vmware shows that will continue ” adhere the principles of making SpringSource solution welcomedding, namely the intersection of SpringSource and software and many kinds of the intersection of middleware and interoperability of software, and until developer very much important to turn on the source schema in community ” .

Purchasing SpringSource makes VMware stand in the front of some key fields. Spring Framework of SpringSource supports half the enterprise Java projects, this company offers over 95% of the loophole repair for Java application server Apache Tomcat used extensively at the same time. SpringSource also has Hyperic to employ and control tools.

The Spring Framework is the defacto Swiss Army Knife framework for Java. If you know Java, but don’t know Spring, you don’t *really* know




How Martin Odersky rewrote the rules of coding for a mobile world

#SuryaRay #Surya Next time you pull out your smartphone to use a popular application – whether it’s to price check items in a store, to tweet or to check your cloud-based calendar — you might thank Martin Odersky.

Odersky is something of a superstar in the Java programming world. He wrote the most widely used Java C compiler, and now he’s the force behind the fast-growing Scala programming language. That language makes it easier for developers to code for “parallelism,”  which is what allows tens of thousands of people to use an application at the same time without crashing it.

In the pre-cloud, client-server era, you might have had a couple hundred – or maybe thousand –  users hammering on a server-based application. But they accessed it from company-issued PCs, so programmers could assume a finite number of users and make sure they had enough server power and bandwidth to support that number.

That all goes away in today’s world, where millions of people use popular applications at the same time. How many smartphone users hit Twitter during a major sporting event? Or on election day? Your guess is as good as mine. It is that scale that parallelism enables and that Scala helps makes easier to program.

Why Scala?

Up until a few years ago, to make applications perform better you installed a faster processor. But we’ve pretty much maxed out the speed limit for individual chips. So best way to get better performance now is to use chips with multiple cores, all operating at a high speed, and to spread the workload among them. Here’s an admittedly simplistic analogy: Instead of packing multiple tons of cargo onto a single huge freighter, you divvy the load up among an array of smaller boats that can move faster.

The key is to have a captain who knows how to take advantage of that expanded fleet — or, to bring the analogy back to the tech world, an application that knows how to take advantage of those multiple cores. Instead of writing a program that runs on a single core, you have to write a program that’s smarter about deploying the workloads among many cores.

“Single-core performance is running out of steam, and you need to parallelize everything,” Odersky told me in a recent interview. You do that through what’s known as functional programming. Ray Ozzie, the former chief software architect for Microsoft and no slouch when it comes to coding, likens functional programming to spreadsheets where each cell in the spreadsheet containing that formula acts as an independent processor working concurrently to keep the spreadsheet updated. It’s a parallel computing system enabled by functional programming, Ozzie says via email.

Scala works with Java and compiles in the JVM, which is significant because many, many of the world’s enterprise applications are written in Java. It’s not a stretch to say there are millions of Java programmers (Oracle, which now owns Java, claims 9 million.)  With Scala these programmers can keep using their Java libraries, frameworks and the JVM while also taking advantage of functional programming, which tends to be less verbose than Java code.

That brevity leads to more compact, elegant software compared to older-style imperative programming. With imperative programming, variables can evolve over time, while in functional programming variables keep the same value. The notion of shifting variables poses a problem in a parallel process where one part of the program executes based on an older value that has since changed.

Scala gains steam

In September, Redmonk analyst Stephen O’Grady used data from Github and Stackoverflow to show Scala on its way to becoming a top-tier language, along with Java, Javascript, PHP, and Python. Other functional languages such as Erlang and Haskel have their admirers but their user base isn’t growing as fast, according to this data.

Odersky, a professor at the Ecole Polytechnique Federale de Lausanne (EPFL) in Switzerland, is also co-founder and CTO of Typesafe, a San Francisco startup that promotes the use of Scala and related Akka middleware, especially in the enterprise. Typesafe customers include LinkedIn and the Dutch Border Patrol, which uses a Scala-based application to photograph every car coming into the country and quickly know — based on the license plate — whether to stop that car or not. Twitter and FourSquare are also Scala users. Odersky also teaches a Coursera class on Scala that drew an astounding 45,000 registrants.

“I studied with lots of amazing people at MIT, but very few successfully cross that academic-to-business divide, and Martin has,” says Bill Kaiser, a partner with Greylock Partners, a Typesafe investor. Odersky’s ongoing interaction with students allows him to stay involved in what’s new in programming, adds Mark Brewer, CEO of Typesafe, who jokes that Odersky spends about 50 hours a week on Typesafe business and another 50 teaching.

The programming pantheon

Those two and others make the case that Odersky belongs in the same pantheon of programming gods as James Gosling, the father of Java itself; Niklaus Wirth, who wrote Pascal (and with whom Odersky studied); Anders Hejlsberg, of Turbo Pascal fame; and Bjarne Stoustrup, who wrote C++ and other languages.

Rod Johnson, the co-founder of Springsource, now part of VMware, and now a director of Typesafe, says Martin “absolutely” belongs in this august company. “Considering prior art in each case, I would rate Scala as a more impressive — and original — achievement than Java or C# and on a par with C++,” Johnson says via email. “The way Scala successfully mixes functions and objects; the way in which it resolves the multiple inheritance problem; its effective type inference; and its interoperability with Java are all particularly impressive.”

The next frontier

Odersky said the explosion of mobile devices continues to challenge programmers. While new languages and tools like Scala helped, more needs to be done to deliver software that keeps up with the new hardware. For one thing, it needs to bet much easier for non-programming geniuses to both write and troubleshoot such software.

“If you want to write a multi-threaded application now it’s still nightmarishly difficult. There are lots of mistakes that are hard to detect. We have to make programming these kinds of applications feasible for everyone, not just experts and that is very hard,” he says.

For more on Odersky and Scala, check out this video of a talk he gave at Intel.

Intel hosts Dr. Martin Odersky presenting Scala 2.10 from Typesafe on Vimeo. @suryaray
RESTful Webservices con Java (Jersey / JAX-RS) - Tutorial Uno

REST con Java (JAX-RS) usando Jersey

Este articulo explica como desarrollar RESTful web services en Java con JAX-RS implementacion de Jersey.

En este ejemplo se usara SpringSource Tools Suite(Eclipse Helios), Java 1.6, SpringSource TC Server and JAX-RS 1.1. (Jersey 1.4).

1. REST - Representational State Transfer

1.1 Informacion General:

En una Arquitectura REST tipicamente se tiene un REST server, el cual provee acceso a los Clientes REST  que acceden a consultar, modificar un Recurso REST.

REST permite que los recursos sean presentados en diferentes tipos de datos, "text, html, xml, JSON".  El Cliente REST puede generar una peticion de un tipo de dato via el protocolo HTTP.

1.2. HTTP metodos

Los metodos estandar HTTP usados en en REST son  PUT, GET, POST, DELETE.

1.3. RESTFul webservices

Un RESTFul webservices es basados en metodos HTTP y en el concepto REST. Por lo general se define URI base para los servicios, los MIME-types sus soportes (XML, Text, JSON, user-defined,..) y un conjunto de operaciones (POST, GET, PUT, DELETE) que seran soportados. JAX-RS soporta la creacion de XML y JSON.

1.4. Java, REST and Jersey

Java define el estandar de  REST  via JAX-RS (The Java API for RESTful Web Services) en JSR 311 . Jersey : es la implementación de referencia de esta especificación. Jersey contiene basicamente el core server y el core client. El core client provee una libreria para comunicar con el Server. 

JAX-RS usa  anotaciones que definen las clases pertinentes de REST.

2. Instalacion

2.1.  Jersey

Download Jersey de Jersey Homepage . extraer el zip y usar los JARS de la carpeta lib

2.2.  STS(Eclipse) y  STS Server(Tomcat)


SpringSource Tool Suite STS server viene incluido  en el STS. 

3. Crear tu primer RESTful Webservice

Crear un nuevo proyecto “Dynamic Web Project” “WebServiceOne”. 

Copiar todo los  jars de la carpeta lib de zip Jersey dentro de “WEB-INF/lib”.

3.2.  Java Class

Crear la clase domain.

import javax.xml.bind.annotation.XmlRootElement;

public class WSOneAll {
private String summary;
private String description;
public String getSummary() {
return summary;
public void setSummary(String summary) {
this.summary = summary;
public String getDescription() {
return description;
public void setDescription(String description) {
this.description = description;

Crear la siguiente clase.

public class WSOneAllResource {

@Produces( { MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
public WSOneAll getXML() {
WSOneAll wsOneAll = new WSOneAll();
wsOneAll.setSummary("Este es mi primer WS.");
wsOneAll.setDescription("JSON: Este es mi primer WS con XML, JSON");
return wsOneAll;

// This can be used to test the integration with the browser
@Produces( { MediaType.TEXT_XML })
public WSOneAll getHTML() {
WSOneAll wsOneAll = new WSOneAll();
wsOneAll.setSummary("Este es mi primer WS.");
wsOneAll.setDescription("XML: Este es mi primer WS con XML, JSON");
return wsOneAll;
3.3.  Definir Jersey Servlet dispatcherNecesitas registrar Jersey como servlet dispatcher para REST requests. abrir el archivo “web.xml” y modificar lo siguiente.

TipEl parametro  ”” define en que package buscara las clases Web Service.

3.4.  Run your rest service

Correr la  aplicacion web en el STS Server. Probar tu REST service con la siguiente url: “http://localhost:8080/WebServiceOne/rest/WSOneAll”..

El Explorer debe mostrar:

  xml version=”1.0” encoding=”UTF-8” standalone=”yes” ?>

- <wsOneAll>

  <description>JSON: Este es mi primer WS con XML, JSONdescription>

  <summary>Este es mi primer WS.summary>


3.5. Crear un cliente

Jersey contiene una libreria REST client. Esta libreria es usada para  testing o para construir un REST client en Java.

Crear una nueva clase Java “”.


import com.sun.jersey.api.client.Client;
import com.sun.jersey.api.client.ClientResponse;
import com.sun.jersey.api.client.WebResource;
import com.sun.jersey.api.client.config.ClientConfig;
import com.sun.jersey.api.client.config.DefaultClientConfig;

public class WSOneClient {

 public static void main(String[] args) {

 private static void WSOneAllClient(){
  ClientConfig config = new DefaultClientConfig();
  Client client = Client.create(config);
  WebResource service = client.resource(getBaseURIWS());

 private static URI getBaseURIWS() {
  return UriBuilder.fromUri(

Thank you

Gracias, Espero sirva de ayuda a la gente que esta iniciando con Web Service, en especial REST.

David Motta B.

Announcing the Final Release of GWT 2.1

Sale el Release Final de GWT 2.1, anunciado en el blog oficial de GWT

"Desde hace varios meses, hemos estado trabajando duro para añadir las características y funcionalidad que se hizo una demostración por primera vez en Google I de este año / O. El objetivo de este comunicado ha sido para hacer más fácil la construcción de aplicaciones empresariales orientadas a web que se puede sacar el máximo provecho de la nube - el despliegue de cero, la ampliación instantánea, ahorro de costes, y la portabilidad que permite ejecutar su aplicación en una variedad de entornos en la nube, como el de Google  App Engine, y VMware solución in situ, vFabric. Hace unas semanas mencionamos que estábamos cerca de envolver este proyecto, y hoy estamos felices de anunciar la disponibilidad general de estas herramientas."

En los que se destaca las caracteristicas principales:
Developer Tools for Business Apps

Google Web Toolkit SDK

Google Plugin for Eclipse

  • Better support for Maven projects
  • Speed Tracer
  • UI enhancements

Google Speed Tracer

Getting Started

Para iniciar la un mantenimiento veloz puedes usar  Spring Roo and SpringSource Tool Suite, para ello debes descargar   SpringSource Tool Suite y instalar el Google Plugin para Eclipse.

Una vez completado, inicia con unos comandos simples de Roo.

Por default generar una aplicacion con esta vista:

Ademas, el projecto generado  por comandos podras importarlo com un proyecto Maven y personalizar y seguir desarrollando usando el IDE en este  caso Eclipse o STS”.

Una vez importado puedes iniciar a correr la aplicacion “Run As->Web Application”

para que inicies la personalizacion usa esta guia GWT Developer Guides y Roo documentation.

Ademas hay un manual completo “Getting Started”  Getting Started with GWT, Spring Roo, and SpringSource Tool Suite.

Download the Google Plugin for Eclipse or SpringSource Tool Suite to get started now!

Articulo publicado en : Google Web Toolkit Blog

GWT 2.1 RC1 con Spring Roo RC1 y SpringSource Tool Suite RC1 disponible

Anuncian la primera versión release (RC1)de GWT 2.1. producto del trabajo en conjunto con VMware y Spring Source, hay varias mejoras que hacen muy bueno de este release.

GWT 2.1 RC esta disponible en Google Code download site y la version 2.1-SNAPSHOT en Google Maven Snapshot Repository.

Ademas, VMWare estara liberando  Spring Roo RC1 y SpringSource Tool Suite RC1 con lo nuevo de GWT 2.1

via blog Google Web ToolKit

Ejemplo Spring Roo: maven, dojo toolkit, spring web flow y spring core

5. Ejecutar los siguientes comandos:

  • hint
  • project —topLevelPackage
  • persistence setup —provider HIBERNATE —database HYPERSONIC_PERSISTENT
  • database properties list
  • entity —class ~.domain.Cliente
  • field string codigo —notNull —sizeMin 1 —sizeMax 10
  • field string nombres —sizeMax 128
  • field string apellidos —sizeMax 128
  • field number edad —type java.lang.Integer
  • field number dni —type java.lang.Integer
  • field date fechaNaci —type java.util.Date
  • test integration
  • controller scaffold ~.web.CitasController
  • selenium test —controller ~.web.CitasController
  • perform test
  • perform eclipse
  • quit

     6. Luego Importar el proyecto con el ID STS(Spring tool suite).

     7. Deployar en el Servidor SpringSource tc Server Developer Edition v2.0

     8. iniciar el servidor


     9. Entrar a la aplicacion  http://localhost:8080/clinicas/clientes


Como se puede apreciar con Roo usted puede construir fácilmente aplicaciones Java completo en cuestión de minutos. Se diferencia de otras herramientas de productividad.

VMware to Acquire SpringSource

VMWare, la empresa especializada en virtualización de sistemas desde el escritorio al datacenter, comprará SpringSource, proveedor de la plataforma Spring.

La adquisición ha sido ya aprobada por los accionistas de SpringSource e involucra un movimiento de unos 420 millones de dólares en diferentes formas. Se espera que la operación se complete en el tercer cuarto de este año.

La estrategia presentada por VMWare es la de desarrollar y ofrecer una completa plataforma como servicio (PaaS) que pueden alojarse en datacenters propios u ofrecidos como servicios “en la nube”.

Spring en la Cloud… suena muy interesante espermos buenas sorpresas

Fuente :