Monday Jan 10, 2011

New video - Closed network setup

If you're interested in leveraging the GlassFish Update Center feature while running inside the firewall, we have a new screencast covering setting up an IPS server inside your company network, populating it with GlassFish packages and hooking existing or new installs of GlassFish into it.

This follow-up to an earlier post on Update Center benefits includes the portion on getting the packages as an archive from My Oracle Support, the successor to sunsolve.

This original screencast, and this other one offer brief intros to the Update Center for managing GlassFish features.

We now have 400+ subscribers and 65 videos on the YouTube GlassFish Channel. Thanks for your support!

Tuesday Sep 07, 2010

Java EE 6 Update 1 with JDK 6 U21 - and Using the Update Tool

We have released new Java EE 6 SDK w/ JDK 6 bundles using JDK 6 U21 (the good one, not this one). All bundles, including the non-JDK bundles which have not changed since June 17, 2010, are now at OTN; check the SDK download page, or navigate directly to the SDK w/ JDK bundles for Web Profile and Full Platform.

All the IPS packages have been refreshed; those for SDK w/ JDK have the new JDK components while those for the SDK w/o JDK have changed only very slightly. Since I normally use a Mac, I use an SDK w/o JDK; in that case, the only file changed is the about_sdk.html in the sdk-branding IPS component (or about_sdk_web.html in sdk-branding-web for web profile).

If you have installed the Java EE 6 SDK and enabled its Desktop Notifier, the update machinery will (eventually) detect the new packages, which will activate the following sequence:

First you will see the notifier; you can either dismiss it, or you can click on it to continue the update process

Next you will be presented an overview of the available updates.  There may be more than one, depending on what you have installed in your machine. For each one, you will be shown the size of the download (3.4KB in this case - since it is just one file in one component) and you will be asked to accept the license.

You can also manage the details for the installation process... and you are given an opportunity to look at the Ads :-)

The next step is the actual download, and a report on its completion.

At this point you can ask for details of the installed software. For example, you can go look at what components have been installed and their properties, or what AddOns are available, or what repositories you are using.

As you can see, this is all very painless. The upgrade is almost a no-op in this case but the same exact process will be used for larger updates and, since IPS underlies all the GlassFish 3 distributions, this also applies to the Commercial Distributions from Oracle.

The Oracle official documentation has very good explanations for all these tasks (thanks, Scott!); see Chapter 10: Extending and Updating GlassFish Server, specially Upgrading to Oracle GlassFish Server from the Oracle GlassFish Server Open Source Edition and Updating Installed Components. Commercial patches are installed in exactly the same way - which, compared to the previous approach, has customers really happy.

Friday Nov 13, 2009

Updated Repositories for GFv3 Prelude

GlassFish v3 is not just modular but the components can be updated through IPS-based UpdateCenter machinery. The Update Center team has been evolving tracking the IPS changes and adding refinements of their own; newer releases, like GFv3Preview, have been running recent UC, but the repositories for GFv3Prelude were running an older version of UC.

Last week the Glassfish team pushed Update Center Toolkit 2.2u2 to the Prelude repositories. In normal conditions you should not notice the change but if you visit the repository directly you will see new graphics and additional facilities (like package search) plus improved performance and metrics.

GFv3 FCS is around the corner and we are seeing very high interest in the release. At that point we expect the bulk of the GlassFish downloads to switch to being served from the IPS repositories - and we will find out if our capacity planning has been accurate :-)

Sunday Nov 08, 2009

Extra GlassFish News - Nov 8th, 2009

Radio Receiver Icon

This is the first of our weekly news catch-up and covers Nov 1 to Nov 11, 2009. This week the news catch-up is partial; next week I'll create the entry through the week and will try to be more comprehensive.

This week we also cover old news on JRuby and OSGi.

GlassFish and Middleware News

Predicting our Systems Future

From the past: OSGi in GlassFish (triggered by this thread):

From the past: JRuby on GlassFish (triggered by this thread)

Saturday Sep 12, 2009

Choosing The Right GlassFish v3 Bundle For You


GlassFish v3 is available in a number of download bundles. The bundles are available at different locations: the Community Download Page and the JavaEE Preview SDK, with different installer technologies: ZIP file or an installer and with different feature sets: Web or Full Profile.

Alexis has written a good summary of the issues involved to help you navigate through these options. Check it out, and continue to get ready for the GF v3 fcs release.

Wednesday Sep 02, 2009

GlassFish v3 Preview Updated


It took a bit longer than anticipated, but we have updated the repositories behind GlassFish v3 Preview (STABLE from You are most likely to notice this through the see new SoftwareUpdate tool, but you might also see it through the GUI UpdateTool or the embedded UpdateTool, or do it manually via the CLI.

Full details in Alexis writeup and Abhijit's announcement.

The whole thing has been working very well for me in recent builds but this is software, so please let us know if you experience any issues.

Friday Aug 21, 2009

News from the Web Stack: Update Center install and Django

IPS WebStack screencast

Jeff's blog entry on installing Web Stack using IPS (a new feature in 1.5) now has a screencast version (4 min. ogg format, use Firefox 3.5 or VLC 1.0), courtesy of Brian. The GlassFish Web Stack (see recent 1.5 release) uses the same packaging technology as the GlassFish App Server and as OpenSolaris (where the technology initially came from).

IPS, also known as pkg(5), offers a packaging system and tools (both command-line and graphical) to install and manage images. Check the IPS tag for more coverage (mainly applied to GlassFish AS).

Earlier in the week Brian had also posted a detailed entry on how to setup Django using WebStack on Solaris, together with a screencast (also in .ogg format). This one uses the "native" Python implementation and the Apache web server. For details on how to run Django with Jython on GlassFish, visit Vivek's blog which has all the details for you (the GlassFish v3 update center now has a jython container available as an add-on).

Also don't forget that Hudson is now part of the GlassFish Web Stack and thus now a supported product.

Sunday Aug 09, 2009

Get Ready for the Software Update Tool

We have been converting our distributions to leverage the new IPS format. Recent conversions to IPS include OpenMQ 4.4 and some distributions of GFv2.1 but the distribution with the largest volume remains GFv3 Preview.

The current release of GFv3 Preview uses These packages were last updated before J1 (except docs) but we will soon push out an update based on an stable promoted build and when that happens you are likely to encounter the New SoftwareUpdate Tool.


The SoftwareUpdate tool provides a simplified interface to the standard UpdateTool, normally activated via a PopUp Notice. A single click Starts a Search for all the Apps that can be updated. Once Completed, choose the Apps you want to update, accept the license terms, and install.

The SoftwareUpdate tool will report on the progress of the install: [1], [2], [3]. Once Completed you are done. The underlying machinery is the same used in the UpdateTool, and you can peek into the details, both before installing and after installing, but the SoftwareUpdate experience is faster and simpler, and more appropriate for most users.

IPS is one of the key new technologies that we are leveraging for GlassFish v3; related entries are tagged IPS. If you want more technical details, Christophe has a very good Presentation as part of the IPS Best Practices wiki. Also check the UC2 Blogs.

Thursday Jul 23, 2009

Jersey 1.1.1 EA - Now in an Update Center Repository


Jersey 1.1.1-ea (see Announcement) is now available at the DEV Update Center repository. This means you can update your GlassFish to this development module with a couple of clicks.

Follow the same instructions as for the latest Mojarra/JSF to discover and install the module; see our previous post for details.

The Update Center technology and repositories leverage IPS and GFv3's modularity (built on OSGi) to make updates, upgrades and additions very easy. The technology supports multiple repositories, local, intra-net, or remote and can be used not just to deliver updates to GlassFish but also all sorts of functionality on it, from Sun, its partners, your partners, your group, your IT shop, etc...

This is a significant change to the way we currently address these tasks and we are still improving all the pieces of this chain. I'm considering organizing a couple of online webinars on the topic later in the summer to get more details out but also to get your feedback and do some additional brainstorming.

Sunday Jun 28, 2009

How Things Work - IPS and GF v3 Packages, continued

Alexis has posted additional entries in his GlassFish à la carte series. Part I and Part II (also see Review) showed how to get a minimal distro and add components to it, including some containers; Part III shows how to create a Custom Layered Distro from GlassFish v3 using the IPS tools.

The distro only bundles pre-existing components; enough to run an ejb/jersey sample. I think that this layered distro arrangement may become quite common for distribution of packages for GFv3 and it nicely shows the power of the modularity in GFv3, IPS and the embedded IPS support in GFv3.


Alexis' examples show how to create the new package, add it to your own IPS repository, and then create a new domain to run the EJB-Jersey sample. The IPS setup is very easy thanks to the documents and binaries from IPS Best Practices project, plus the Package Prototype from Alexis.

To learn about IPS, check out Producing and Maintaining Packages (specially Christophe's Prezo) and MakePkgs. All the binaries you need are included in the IPS Toolkit.

The whole thing works like a champ; excerpting some of the key commands from my shell trascript:

# Created a directory for my local repo % pkg/bin/pkg.depotd -p 10001 -d /Users/pelegri/Software/my-repo # port no. and store dir. # downloaded package prototype and renamed it as % cat >LICENSE.txt # need a LICENSE file! % pkg/bin/makepkgs -s http://localhost:10001/ -b ../Sample ../Sample/ % bin/pkg set-publisher -P --enable -O % bin/pkg set-publisher --enable -O http://localhost:10001 localRepo % bin/updatetool # screenshot % bin/pkg install sample-distro # pretty much all done % bin/asadmin create-domain --instanceport 8080 --adminport 4848 mydomain % bin/asadmin start-domain mydomain # download the jersey-ejb sample WAR file % bin/asadmin deploy ../../jersey-samples/jersey-ejb-1.1.1-ea-SNAPSHOT.war % open http://localhost:8080/jersey-ejb/ # screenshot

Saturday Jun 13, 2009

How Things Work - IPS and GF v3 Packages (GlassFish à la Carte)

You probably know that the new, modular, GlassFish v3 is built from (OSGi) components that can be updated using IPS. We assemble these pieces into ready-to-go JavaEE 6 Web Profile and full JavaEE 6 bundles but they can also be used to create à la carte distributions, as Alexis shows in his latest posts.

I recommend you to at least try the first example to get a better understanding of how all these technologies work together. The beauty of GFv3 is that everything is very small and fast - I'm writing this entry from a public WiFi site with pretty moderate connectivity and I'm spending more time waiting on BSC than running the example.


Part I starts with a IPS toolkit image from IPS Best Practices. The toolkit image is 5MB (most of it is the python 2.4 runtime) and has no GlassFish in it. From there, the next step is to download the GF v3 nucleus (2.41MB), which automatically brings in Felix (564KB), Grizzly (943KB) and HK2 (565KB); the IPS packages include the relevant OSGi modules.

The rest of that entry shows how to install the updatecenter IPS pkg (that is the biggest package because of python graphical toolkit) and how to use it to add the management pkg, and then creates and starts a domain.

Part II in the series shows first how to install the GFv3 Web Container; then it mirrors Jerome's recent entry on GF v3, OSGi and Spring (that portion gets a bit complex and I see that Jerome already published a simpler version). Part III will continue the main theme of creating an a la carte GF v3 that has the components you want and is yet extensible.

Thursday Apr 23, 2009

Creating IPS Packages - Part III: Different Strategies


Do you want your favorite package to be one-click away from millions of desktops Around the World? If so, help us add these packages to the GlassFish community repositories.

To help this Alexis has been writing a series of blog entries; the last entry explains Different Strategies for Different Types of Components, covering Frameworks and Libraries, Applications Running in GlassFish, Applications Independent of GlassFish and GlassFish Extensions (HK2/OSGi Components).

Previous posts covered: Overview of Concepts and Hibernate as a Sample; more posts will follow soon.

Tuesday Apr 14, 2009

Creating IPS Packages - Part II: Hibernate Sample


Alexis has published his second article in a series ([1]) on creating IPS packages for GlassFish v3, this time explaining how to create the Hibernate package.

The latest post gives detailed instructions on the process needed, including setup, key files and directories, Authoring the Hibernate IPS package example and Publishing and testing. More entries to follow; our goal is to make it very easy for you to publish your favorite packages to the community repository so that hundreds of thousands of people can use them.

Also see other entries tagged as IPS and UpdateCenter

Tuesday Apr 07, 2009

Creating IPS Packages - Part I: Overview


Alexis has started a new series to document / encourage more IPS packages for our GFv3-based repository. The first post introduces the packaging and repository concepts and provides links to a number of entry points like the UpdateCenter2 and GlassFish-Repo projects.

Alexis's next post will use as an example the existing hibernate package in the v3 repository; then he will document how to create these packages for frameworks, Java EE applications, standalone applications, and GlassFish extensions. Check them out and let us know how the whole experience works for you; our goal is to improve the process.

Other related entries are tagged IPS

Monday Mar 02, 2009

Hibernate JPA on GlassFish - One Click Away via your Update Tool


GlassFish v3 uses EclipseLink as the default JPA provider but it supports Hibernate equally well, and, thanks to the benefits of IPS and the UpdateCenter, that's just a click away: just fire the updatetool and clicking on the package.

For more details - but just a few more, there is really not much to tell - check on Mitesh's writeup.