Posts Tagged ‘Java’

The Top 5 New Features in eXo Cloud IDE

Wednesday, July 20th, 2011

Four months ago we launched cloud-ide.com, the first free online service eXo has ever provided, and its success has been incredible. Our goal: to be the preferred path for developers to Platform-as-a-Service (PaaS) deployments.

Today we are unveiling a major upgrade to the service, with more than 75 new features. I would like to show you my top 5 favorites.

1) Git Support

Git popularity is huge and more and more projects use it to manage their source code. Even some PaaS, such as Heroku or Openshift Express, use it as an application deployment paradigm.

Supporting Git in eXo Cloud IDE was clearly our number 1 priority, and we focused on improving the integration we announced in May at Red Hat Summit. Now we support most of the protocol commands, all natively integrated within eXo Cloud IDE.

As you can see in the first screenshot, we support many Git commands that are exposed in a new Git menu in the IDE. It is possible to init or clone a remote repository, add a file to the index, create a branch, add remote repositories and push the code to different branches on different remote repositories! And at every step of the way, you can view the current status of your repo.

image00

To be able to support private Git repositories, and to communicate with them using the SSH protocol, we have also added the capability to create private and public keys for dedicated domains, and the ability to upload existing private keys and bind them to a domain. In the next screenshots, you can see that I have created 2 private/public keys for the Heroku and GitHub domains, as well as uploaded 2 private keys for Red Hat OpenShift and CloudBees.

image07

It is also possible to browse the version history of Git repositories, see the changes and who made them!

image03

2) OpenShift and Heroku Support

The primary goal of eXo Cloud IDE is to be able to develop apps in the cloud, then deploy them to the different PaaS available in the market. With this upgrade, we now support 3 different PaaS, each that has a different deployment model.

For Heroku and OpenShift, we use some REST commands from the PaaS menu (see the next screenshot) to create applications bound to a Git repository.

image05

Then we use the Git menu to clone and push modifications to this remote repository, such as the OpenShift repo shown in the next screenshot.

image04

We have announced our Red Hat OpenShift support at Red Hat Summit last month in Boston. You can see the video demonstrating how to deploy to OpenShift here.

3) CloudBees Support

For deploying Java apps to CloudBees RUN@cloud PaaS, we only use Git and the CloudBees DEV@cloud service.

A developer first has to create a Java project in eXo Cloud IDE.  Then he has to init that repository and push the code to the CloudBees Git repository (after having registered its public SSH key in the service). From here, we leverage CloudBees DEV@cloud, which uses Maven and Jenkins to manage both the build of the Java WAR artifacts and the deployment to CloudBees RUN@cloud PaaS.

image02

4) Java / JSP support

Java is the language of choice for most eXo developers. In the first version of Cloud IDE a developer could write some REST API in Java using the JAX-RS specification. He could also store structured data inside a Java Content Repository (JCR).

With this upgrade, we now also support standard Java classes (Servlets or POJOs) and Java Server Pages (JSP).

As before, every file has some color syntaxing, code completion and outline. The next screenshot shows those features for a JSP page.

image06

Once the Java and JSP have been written it is possible to deploy them to CloudBees DEV@cloud, which manages the build (it can also manage any unit tests that you add in the Cloud IDE) and the deployment of the generated WAR.

As you can see, you can now create, test and deploy standard Java projects directly in the Cloud.

5) Ruby and PHP Support

With the launch of Red Hat OpenShift Express, we announced support for the Ruby language within eXo Cloud IDE. A developer can quickly create a Ruby file; the IDE provides some color syntaxing, outline and auto completion. A Ruby project can then be deployed to either OpenShift or Heroku, as described previously.

image01

Red Hat OpenShift also supports the PHP language, so it was a great opportunity for us to add support for this dynamic language to our catalog. And of course, we have some color syntaxing, outline and auto completion.

These are my top 5 favorite new features. I hope you will check out the new and improved Cloud IDE and give us your feedback!

For now, we’re getting back to work – this is just the beginning of a new era.

eXo Cloud IDE First to Support Java, Direct PaaS Deployments for Developers

Wednesday, July 20th, 2011

Quick and Easy On-Ramp to PaaS of Choice: CloudBees DEV@cloud and RUN@cloud, Heroku, Red Hat OpenShift

SAN FRANCISCO — July 20, 2011 — eXo, the enterprise Java portal and cloud user experience platform (UXP) company, today announced that eXo Cloud IDE is the first web-based IDE to support Java, extending its support for HTML, JavaScript, Groovy, PHP and Ruby languages. eXo Cloud IDE also offers a quick and easy on-ramp for deploying applications directly to several major Platform-as-a-Service (PaaS) including CloudBees, Heroku, and Red Hat OpenShift.

News Highlights

  • About eXo Cloud IDE: Launched in March, eXo Cloud IDE is a multi-tenant, hosted development environment that enables social coding – the collaborative development of applications, gadgets and mashups that can be deployed directly to a PaaS. eXo Cloud IDE is available online at www.cloud-ide.com.
  • Easy On-Ramp to PaaS Deployments: eXo Cloud IDE now includes a drop-down menu for easily deploying applications to Heroku and Red Hat OpenShift PaaS. By leveraging Git repositories, eXo Cloud IDE allows developers to manage, edit and redeploy changes from the PaaS menu. To deploy Java applications to CloudBees, developers build the apps using the CloudBees DEV@cloud service and deploy via the CloudBees RUN@cloud service.
  • Robust IDE Goes Beyond JavaScript: With eXo Cloud IDE, the company goes beyond basic JavaScript to enable rich, functional development of REST services and Ruby, PHP and Java applications.
    • Java/JSP support has been enhanced to include support for standard Java classes (Servlets or POJOs) and Java Server Pages (JSP). Developers can create standard Java projects in the cloud, and also test and deploy those projects directly to the cloud using Maven and Jenkins via CloudBees DEV@cloud capabilities. eXo Cloud IDE continues to let developers write REST APIs in Groovy using the JAX-RS specification and store structured data inside a Java Content Repository.
    • PHP support gives developers another option for writing applications. As with other languages supported by eXo Cloud IDE – including Ruby – every file has color syntaxing, outline and auto code completion.
  • Improved Git Support: eXo Cloud IDE now features a new, easy-to-use Git menu, which natively integrates protocol commands. This gives developers access to Git controls, as well as visibility into the version history of repositories, without ever having to leave the eXo Cloud IDE domain.

Supporting Quotes

  • Sacha Labourey, founder and CEO of CloudBees: “eXo CloudIDE developers can not only deploy their applications to CloudBees RUN@cloud Java PaaS in a snap, but they can also leverage CloudBees DEV@cloud and benefit from Git code repositories, Jenkins-based Continuous Integration and Maven repositories, all nicely integrated. This provides a complete development and runtime environment in the cloud.”
  • Benjamin Mestrallet, eXo founder and CEO: “The primary goal of eXo Cloud IDE is to provide a cloud service where teams of developers can collaborate and build applications in the language they prefer, while also giving them the freedom and flexibility to deploy their applications to the different cloud platforms available in the market. With this announcement, we now support three different PaaS offerings and their distinct deployment models.”

Online Resources

Recent News

eXo Extends Seesmic into Java Enterprises

Thursday, December 2nd, 2010

SAN FRANCISCO, Calif. (December 2, 2010)eXo today announced that its user experience platform, eXo Platform, is now integrated into the Seesmic Desktop application. The integration extends Seesmic to thousands of eXo enterprise users at large financial services, insurance and telco companies as well as public sector agencies. These organizations have modernized their Java systems with eXo Platform, bringing the rich, social features of the consumer web to their Java applications. Now, from Seesmic Desktop, users can access real-time updates from their eXo-based applications, alongside their Twitter, Linkedin and Facebook activity streams.

News Highlights

  • eXo Platform is a social intranet, integrated web content management system and modern application development platform in one for Java enterprises. It provides a framework for integrating existing Java and third-party applications – even those written in Ruby, PHP and .NET – or rapidly building applications, mashups or REST custom APIs.
  • Initially launched as a Twitter client, Seesmic Desktop can now manage multiple accounts across several services, including Facebook, Google Buzz, Linkedin and Twitter. With Seesmic Desktop, Seesmic is expanding the use of the Desktop application beyond personal social networks to enterprise applications such as eXo Platform. The new marketplace has over 50 social networking, entertainment, utilities and e-commerce integrations to extend the functionality of their desktop application far beyond Facebook and Twitter.
  • Integration of eXo services inside Seesmic Desktop offers convenient access for enterprise users. Real-time updates from co-workers, teams and applications are syndicated inside the application, alongside other services that users frequently access already, such as their Facebook, Linkedin and Twitter accounts.
  • By integrating enterprise activity streams into a familiar ‘daily use’ sort of tool like Seesmic, eXo makes it easier for users to track, respond and collaborate on business-related activities – even when they’re not logged into their company social intranet.

Supporting Quotes

Benjamin Mestrallet, founder and CEO of eXo: “The expansion of Seesmic Desktop into the enterprise further fuels the consumerization of IT that is blurring the lines between the personal and the corporate. Increasingly, our customers want the ease and features of the consumer web in their day-to-day corporate computing life, and eXo integrated into Seesmic does just that.”

Loïc Le Meur, CEO of Seesmic: “Our plug-in architecture on Seesmic Desktop allows enterprise players like eXo to expand the reach of their services to social networks. With the integration into Seesmic Desktop, eXo now brings together the internal feeds of an organization and the external feeds of all the social services available on our platform.”

Online Resources

What Apple’s Announcement Really Means to Java Developers

Friday, October 29th, 2010

Hey Steve, keep the bean in the Apple!

The news from last week that grabbed the attention of many Java developers was Apple’s announcement of its intentions to deprecate Java in the latest OS X 10.6 update. One sentence stood out in particular, “Developers should not rely on the Apple-supplied Java runtime being present in future versions of Mac OS X,” and raised the question: should Java developers (many of whom, like me, develop on Macs) freak out?

I don’t think so. (Though it prompted additional speculation and follow-on news stories.)

Let’s be realistic. Most applications run on the server side, on Unix/Linux and/or Windows Server – which has nothing to do with Apple or Mac OS X. And more and more applications are running on the cloud, where the language isn’t necessarily irrelevant, but certainly less important than the services that the application exposes. And I’m sure Java will have a big role in ‘development in the cloud,’ as we can already see with Google AppEngine and the VMWare/SpringSource effort.

I think the more interesting question to ask is “Why did Apple do this?”

I believe this is related Apple’s other big news last week: the new “Mac App Store,” which looks like an effort to have one single technology and language to develop “official” applications for Mac. In fact, for all Apple platforms running OS X and iOS, developers should use X Code and Objective C. That’s fine with me, as I enjoy developing small apps for my iPhone and iPad in my spare time, using these tools. But at eXo, many of our developers are using Java, often on Macs, to build our software.

We’re not talking about the same kind of applications. If, in the future, Java does not exist on Macs, it will not cause enterprise developers to abandon Java, but simply force them to move away from their Macs. Personally, I don’t want that to happen. I switched to Mac in 2001, and I’ve been a big fan of all Apple products ever since (most of my extended family are now also on Macs, and they couldn’t care less about Java).

As a Java developer, do I switch back to PC now? Unlikely. I am very confident (overconfident?) that Java will still be present on OS X. The difference is that Apple will simply stop caring about it — the same way that Microsoft doesn’t care now. I cannot believe that Apple will stop/block Java on their platform. So the future of Java in general, and now on Mac, is fully under the control of the Java community, driven by Oracle and OpenJDK. I am sure we will find many skilled “MacAddicts” to maintain and improve Java on OS X, to at least allow Java developers to run their favorite IDE and test their applications before deploying them on the servers — keeping the “Write Once, Run Anywhere” a reality (almost…). The only “bad” part is the fact that “Java Desktop” will not borrow any of the cool features of Apple Mac OS X. Not a big deal, since Java Desktop has never been that successful anyway.

So my advice to fellow Java developers is this: if you care, be vocal. Let’s make sure Apple lets the community drive the future of Java on Mac, since the future of the Java platform is still very exciting for many of us.

What is eXo Platform 3.0? (Part 4)

Monday, September 20th, 2010

Today, I am proud to announce the release of eXo Platform 3.0. In preparation for this big day, I have blogged over the last week about what eXo Platform 3.0 is to show the breadth of the product: portal foundation, social intranet and integrated web content management.

But to me the most exciting definition of eXo Platform 3.0 is as a powerful, modern application development platform. I like to think it is the platform that will make Java relevant again in this Web 2.0 world where dynamic languages like Ruby and PHP rule. Now Java can stand as a first-class language for Web 2.0 applications.

What really sets eXo Platform 3.0 apart is its REST architecture. Any portal can present third-party application data as portlets, but eXo offers advanced integration using web services to actually communicate and interact with applications. You can integrate third-party apps, whether they’re written in Java, .NET, PHP or any other language, with eXo Platform’s native APIs.

But more importantly, you can create custom REST APIs on the fly — and deploy them directly from the platform. This means unlimited extensibility; with the custom APIs, you can build as many extensions as you need. eXo Platform provides a standard way to develop these JAX-RS REST services, with development, testing and deployment all done online in a new web-based IDE. Besides REST services, this IDE lets you rapidly build applications, JavaScript files, Groovy scripts, gadgets and mashups.

It’s this architecture that lets eXo integrate easily with third-party apps. In fact, at Java One this week, we will be demoing how a simple plug-in can social-enable an enterprise application, in this case Jaspersoft’s Business Intelligence (BI) software. One of the immediate benefits of such an integration would be the automated syndication of BI events and user interactions in activity streams, enabling users to see relevant information for new and modified reports in real time. Salesforce.com got a lot of buzz for Chatter. eXo lets any app get the same “Chatter” features — without having to build it themselves.

We’ve also modularized eXo Platform 3.0, with a new mechanism using will make upgrading to future versions almost effortless.

What all these features amount to is a systematic way to build rich Java apps with content management, collaboration, social and knowledge. I invite you to go under the hood with me in these online video demos — a short intro (8 min) and a more in-depth tour (30 min). We’re also offering a 30-day evaluation subscription that includes support tickets, so download and give it a try.