New Release - Liferay Portal 6.1 CE GA3

I’m happy to announce that today, Liferay released the much anticipated Liferay Portal 6.1 CE GA3 release! DOWNLOADS: [Tomcat Bundle | GlassFish Bundle | JBoss Bundle | Maven Artifacts and Info | Source Bundle | Github Repoother bundles and support files].

This update contains over 500 fixes, most importantly those fixes related to Liferay’s Security Manager (née PACL) and Spring MVC, which prevented many of you from successfully publishing your apps to the Marketplace. These issues should now be fixed.

Version Name

Following Liferay's versioning scheme established in 2010, this release is called Liferay Portal 6.1 CE GA3. The internal version number is 6.1.2. See below for upgrade instructions from previous releases.

PACL Fixes

Earlier this year, Liferay made the use of its Security Manager optional, for those that wish to publish free apps. This will continue to be optional, though you are highly encouraged to make use of PACL in your apps - this is an important step for securing your apps, especially paid apps (once this feature is added to Marketplace).

In support of PACL, a new quasi-feature has also been added in this release - the PACL Policy Generator. This feature will automatically generate the necessary PACL policy declarations for you, saving you from having to manually test, modify, and re-test your apps. See the PACL Policy Generator's official documentation for details on how to use the generator.

If you’ve been waiting for this release to publish your app to the Marketplace, be sure to test your app with this release, and indicate that your apps are compatible with this release (and the associated EE release) by using liferay-versions=6.1.2+,6.1.30+ in your file. If you’ve already successfully published apps with liferay-versions=6.1.1+ or liferay-versions=6.1.1+,6.1.20+ then you don’t need to re-publish, but you should test against the release to ensure compatibility (see the compatibility note below).

For more detail, see:

  • LPS-33047 - PACL - As a developer I would like reasonable java operations such as classloading, reflection, native library access within libraries I include to not prevent me from developing plugins for the marketplace
  • LPS-32200 As a Liferay Marketplace Developer, it should be less time consuming and less error prone to identify and declare necessary PACL declarations

Security Fixes

Liferay is committed to producing high quality and secure products. As with all of Liferay’s CE update releases, many security bugs have been fixed, including all of the security issues reported to, and fixed in the context of, the Liferay Community Security Team. The security of our products is very important to our customers and the wider Liferay community, and we have processes in place to ensure that any security-related issues are promptly addressed and that our customers' data is kept secure. For more detail, check out Liferay's “/security” URL.

JDK 7 Support

Another addition to this release is support for Java 7. Typically, Liferay will add support for new underlying platforms in a minor release, but this one was too important to pass up. See LPS-29538 Java 7 Support for details.

Spring MVC Fixes

6.1 CE GA2 had a bug that prevented many Spring MVC-based apps from properly initializing. See LPS-29103 Custom Spring MVC -portlets broken after upgrading to Liferay 6.1 GA2 (web.xml listener order) for more detail, but rest assured it's no longer an issue!


Liferay aims to make releases within a given “release family” compatible, and are continually improving the development process to catch compatibility issues early and go through the proper deprecation process, and it is no different in this release. A handful of APIs have been deprecated in this release as a result of bugfixing. If you are using them, you should strongly consider modifying your apps to use their documented replacement APIs.


  • com.liferay.portlet.documentlibrary.util.AudioProcessorUtil::setAudioProcessor()
  • com.liferay.portlet.documentlibrary.util.ImageProcessorUtil::setImageProcessor()
  • com.liferay.portlet.documentlibrary.util.PDFProcessorUtil::setPDFProcessor()
  • com.liferay.portlet.documentlibrary.util.RawMetadataProcessorUtil::setRawMetadataProcessor()
  • com.liferay.portlet.documentlibrary.util.VideoProcessorUtil::setVideoProcessor()


  • com.liferay.portal.util.Portal::getAlternateURL()
  • com.liferay.portal.util.Portal::getCanonicalURL()
  • com.liferay.portal.util.PortalUtil::getAlternateURL()
  • com.liferay.portal.util.PortalUtil::getCanonicalURL()


As a general rule, you can upgrade from one major release to the next major release. For example, you can upgrade directly from Liferay 6.0.x to 6.1.2, but not from 5.2.x to 6.1.2. If you need to upgrade over several major releases, you'll need to run the upgrade procedure for each major release until you reach the release you want. See the official upgrade documentation for more detail and the explicit steps for upgrading. In particular, you can upgrade from 6.0.x, 6.1.0, and 6.1.1 to this release (6.1.2).

Known Issues

1. The GlassFish bundle has a known first-start issue (LPS-39095) with the following workarounds:

  • Stop and restart the domain
  • Add to your file (this causes Liferay to use the default security manager configured by the application server. A security manager will not be used if the application server did not configure one) 

2. Due to a last minute JSP compilation build failure, the Liferay+Resin bundle is not yet available. Engineers are working on the fix as I type and it should be available soon! 

In closing

A special community shout-out goes to Rotterdam CS and Emeldi for helping us with the PACL and Spring MVC testing - their apps and staff helped us find several important issues before the release, which is an awesome by-product of all the great apps people are making! Thanks, ya'll!

This is most likely the last update for the 6.1 CE vintage - 6.2 CE is right around the corner, so if you’re interested in seeing what’s coming in the next release, be sure to get involved in the 6.2 Beta program!

Very good news!

I hope this issue is also fixed!

Federico Budassi.
Rotterdam Community Solutions.
Great work !!
Just the link to the 'versioning scheme' is missing ;)
¡These are great news!

Will the next release (6.2) be based on 6.1 GA 3? I mean, will all the fixes from 6.1 GA 3 be present in 6.2?

@Rafik: fixed, thanks!

@Florencia - yes, they should all be included!

@ Federico - this bug does not look like it was backported to 6.1 CE GA3. But there is a convenient workaround in the bug report..
But the SDK Zip file is still called "6.1.1"; is it only a naming error?

@Marco - that was intentional, to underscore the compatibility in the 6.1 family - so you can build apps for 6.1.0, 6.1.1, and 6.1.2 using the sdk. We should have kept the 6.1.0 name in the original release, but did not.
Are you aware that with this release it seems to be impossible to download plugins from the app store that are more than a few kb large ? (for example the popup and the the newsletter portlet.

Its great that acl is fixed and all that , but unless this can be easily resolved this is yet another crippling bug.

How long until the GA4 ?
Hey Jelmer, can you try this: go to Control Panel -> System Administration -> File Uploads and increase the "Documents and Media: Max File Size" to 10x it's default value, and try again to download apps via Control Panel? I think it's a DL-related regression.
Yes it is a regression. I seriously have to wonder how you people do QA over at liferay
I am sorry to sound negative all the time. But this was *literally* the first thing I tried when I downloaded GA3 and it broke.

Companies like rotterdam CS that have actually invested a significant chunk of money in portlet development must be fuming right now since nobody will be able to download a non trival portlet without making changes to the default installation
Great and thanks for your updates !!!

About Marketplace plugin is there a related GA3 standalone version (like the GA2 released here ?
Can we get a quick glimpse into Liferay 7.0? We understand that it is due this winter as per the roadmap shared during 2011 Symposium.
@Denis - the update has been posted at

@Prasanta - The release this winter is 6.2, and the next release's version / naming hasn't been decided yet emoticon But you can check out the latest features in this release at
Let me imitate Jelmer Kuperus the way his said:

Are you aware that with this release it still using an obsolete Struts 1.2.9

It will be great if it could be substituted, but unless this can be easily resolved this is yet another potential risk.

Yes, it is a retrogression. I seriously have to wonder how you explain to your customers, competitors and fans.
I am sorry to sound negative all the time. But I must tell you the truth: "Apache does not support your struts-1.2.9.jar anymore".

Companies like rotterdam CS that have actually invested a significant chunk of money in portlet development must be fuming right now since nobody will be able to upgrade or replace a core jar file without making changes to the default installation

See here:
And here:
Hey Ching - see and please help to socialize this! There are probably other old/unsupported stuff that we should also upgrade, it just takes time and people.
That is a total joke, even 2 line patches get ignored 80% of the time
Yes, Ronald Sarayudej, I promise you to socialize your competitors, GateIn or uPortal, with this unresolved ticket.

Hey Jelmer Kuperus, it is not a total joke. According to 80-20 rule, it should be 20% of joke and 80% ignorance of the time.
@Jelmer - I know, we've not been good historically - but it's getting better (slowly) looking at this year's contributed patches.

@Ching - as always, thanks for letting us know about what's important to you, we'll see if we can get struts updated asap!!
@James Falker - as always, you're welcome, it is important to you not me cause I don't need to work for any portal.

I am just a spectator who is watching *portals.war* between Liferay and its competitors.
Round 1 ...
I bet my two cents with David H Nebinger that Liferay team will get Struts updated. Please don't let me lose money!
Dear Ronald Sarayudej,
I must apologize to you for the upgrade of Liferay cores. When I see there is more old and unsupported stuff, the combinations and difficulties will be increased exponentially.
It will be a tough jobs for your tough guys. Good luck.
Dear Liferay's Team,

In this release did you move the "user account creation" to workflow
and does it need approval as default option ?