Release Notes - Jetspeed 2 - Version 2.1

The list below outlines the issues that are addressed with release 2.1. For a full list of features, see the features list .

Bug

  • [JS2-134 ] - Language Set not created from supported-locale
  • [JS2-168 ] - capabilities test fails on hsql
  • [JS2-204 ] - PLT.7.1.2 Portlet URL securit y not implemented and absolute URL rendering
  • [JS2-226 ] - Page Aggregation using STRATEGY_PARALLEL severly broken
  • [JS2-273 ] - Editing Page Layout works incorrectly
  • [JS2-282 ] - Error when session expires and portlet window is maximized
  • [JS2-315 ] - Premature access to portal can break access to portlets.
  • [JS2-316 ] - JSF Component javascript not being rendered
  • [JS2-339 ] - Calls to preferences.store() trigger a warning about missing transaction in OJB
  • [JS2-375 ] - Database scripts broken on Oracle 8i
  • [JS2-405 ] - Logout Problem when running behind Apache with mod_jk
  • [JS2-438 ] - Broken link on web site
  • [JS2-439 ] - typo in SSO sites portlet
  • [JS2-445 ] - Unable to build J2 - Failed to download, Missing version numbers
  • [JS2-448 ] - Oracle installer broken.
  • [JS2-450 ] - portlet application manager eats useful exception message
  • [JS2-452 ] - unable to add a custom mode to the portlet.
  • [JS2-456 ] - PageImporter did not import element in page.security to database
  • [JS2-458 ] - J2 Security constraint is broken by DatabasePageManager
  • [JS2-460 ] - Minimize/Restore broken
  • [JS2-464 ] - Redeployment of portlets that have services defined jetspeed-portlet.xml ARE NOT updating the JETSPEED_SERVICES table with new/altered values.
  • [JS2-467 ] - Broken links in http://portals.apache.org/jetspeed-2/getting-started-binary.html
  • [JS2-468 ] - Customizer cannot edit nested layouts.
  • [JS2-473 ] - Many uses of Fragment.getFragments() assume access to the underlying list, not a copy: this is invalid
  • [JS2-475 ] - Proposed changes in portal permissions
  • [JS2-478 ] - admin portlets application inconsistency
  • [JS2-479 ] - Non-thread safe code in the DB PageManager
  • [JS2-481 ] - Unable to change Jetspeed2's default theme "tigris" to another one.
  • [JS2-483 ] - buggy css layouts / patch for table based layout
  • [JS2-485 ] - admin portlets profiler admin
  • [JS2-495 ] - OJB + Spring Transactions broken
  • [JS2-496 ] - J2 on tomcat 5.5.15: 403 returned to client browser when any user that doesn't have admin role attempts to log in
  • [JS2-497 ] - Can not correctly display the display-names of layout-portlet when editing a page in Chinese or Japanese.
  • [JS2-498 ] - When editting page, can not correctly display the display-name in the language, which have country name.
  • [JS2-501 ] - Pluto ObjectID implementation produces invalid map key values
  • [JS2-503 ] - UserManager's setUserEnabled() method fails after creating new users
  • [JS2-509 ] - Portlet Preferences are not stored on a user by user basis
  • [JS2-511 ] - org.apache.jetspeed.om.portlet.impl.PortletDefinitionImpl line 558 throws NPE
  • [JS2-518 ] - Setting PorletPreferences in PSML does not work
  • [JS2-519 ] - Concurrency issues due to ServletPortletInvoker being used as singleton
  • [JS2-520 ] - RSSPortlet ignores preference itemdisplayed
  • [JS2-522 ] - Infinite loop created in PortletWindowAccessorImpl.getWindowFromCache() while under load
  • [JS2-526 ] - JBoss web.xml entry for security-constraint login/redirector wont work under Tomcat
  • [JS2-528 ] - Error while trying to deploy portlets
  • [JS2-530 ] - MenuElementImpl.getMetadata does not return the defined data
  • [JS2-535 ] - SSO default resources
  • [JS2-556 ] - decorator.vm in portlet decorators not overriden
  • [JS2-562 ] - LDAP attribute name comparison should be case-insensitive
  • [JS2-564 ] - wrong italian localization strings
  • [JS2-571 ] - Changes to page structure (PSML) using the DatabasePageManager are not reflected to the internal page representation.
  • [JS2-572 ] - Maven 2 build requires spring-portlet and spring-beans version
  • [JS2-576 ] - PortletDefinitionImpl.getDisplayNameSet() returns empty set if getDisplayName() is not called first
  • [JS2-582 ] - Portlet sessions are not invalidated when the portal session is destroyed with emptySessionPath="true"
  • [JS2-588 ] - "Portal Site Detail" portlet doesn't work in trunk
  • [JS2-590 ] - Moving / Deleting portlets doesn't always work under DatabasePageManager
  • [JS2-591 ] - cannot access a new page with a multibyte page name
  • [JS2-592 ] - The customizer portlet cannot add portlets to a .psml page when logged in as admin
  • [JS2-599 ] - Statistics throw a NumberFormatException for last 24 hours and last 7 days
  • [JS2-605 ] - Query string parameters should not (by default) be provided to portlets to be compliant to JSR 168 spec requirements
  • [JS2-607 ] - An error occur when trying storing a null value in preferences
  • [JS2-611 ] - Custom Portlet Mode and Window State incorrectly handled / processed from portlet.xml
  • [JS2-613 ] - ConcurrentModificationException under high load
  • [JS2-633 ] - nested layout broken with permission security enabled
  • [JS2-635 ] - count of portlet on portlet selecotor
  • [JS2-641 ] - override.properties isn't loaded by the bean 'placeholderConfig'
  • [JS2-646 ] - ActionValveImpl can throw NullPointerException under clustered environment.
  • [JS2-651 ] - Add Portlet fails when logged in as Subsite User
  • [JS2-652 ] - Desktop does not render page if any portlet on the page shows "Failed to retrieve Portlet Definition"
  • [JS2-655 ] - Entity Editor Broken
  • [JS2-656 ] - Cross-Site Scripting (XSS) vulnerability

Improvement

  • [JS2-110 ] - Replace HSQL with Axion as default database in J2
  • [JS2-190 ] - Changing the portlet.xml in a deployed portlet/webapp does not change Jetspeed.
  • [JS2-198 ] - Portlets don't use user-specific preferences. The Portlet Preferences for anon user are always used.
  • [JS2-264 ] - Updating just the portlet content
  • [JS2-329 ] - 3 new 100% table-free portlet decorations.
  • [JS2-354 ] - Provision for portlet-level permissions
  • [JS2-449 ] - User Specific Preferences
  • [JS2-461 ] - Serializer component
  • [JS2-462 ] - Need to clean up Velocity logs, too many warnings and some errors even
  • [JS2-470 ] - LDAP Authorization Support Implementation + Sun LDAP Authentication Support
  • [JS2-480 ] - Statistics cleanup
  • [JS2-491 ] - Enhance J2 LDAP Security Documentation
  • [JS2-493 ] - More chinese Localization
  • [JS2-504 ] - update chinese Localization
  • [JS2-506 ] - Extend profiler to fallback to parent folders when requested path is not available.
  • [JS2-508 ] - Fixing commons-logging on WebSphere and other application servers
  • [JS2-516 ] - Make selection of last visited page in folder on folder request optional
  • [JS2-527 ] - Allow email addresses to be used for user accounts by making hierarchical interpretation of principal names optional
  • [JS2-534 ] - Korean translation for portal, portal-site, j2-admin, demo, rss, gems, layout-portlets, and jetspeed-api.
  • [JS2-539 ] - Korean translation for *.psml, *.link, and folder.metadata files under the /WEB-INF/pages/**/ folder.
  • [JS2-541 ] - Log initialization failures when deploying on Websphere 6.0.2.x
  • [JS2-543 ] - Velocity logging using the jetspeed-webapp-logging component
  • [JS2-549 ] - Simple documentation for using the JSF bridge in Jetspeed
  • [JS2-568 ] - Upgrade commons-httpclient bundled in jetspeed war
  • [JS2-575 ] - Sun LDAP connection pooling implementation needed so that Jetspeed does not need to be restarted if LDAP server is restarted or connection is lost.
  • [JS2-578 ] - Improve Creation of PSML pages for new users
  • [JS2-600 ] - update Chinese Localization
  • [JS2-603 ] - Upgrade Search component to lucene 2.0.0
  • [JS2-606 ] - Allow deployment of local portlet applications without a jetspeed- name prefix
  • [JS2-614 ] - Jetspeed Deploy compliant with servlet spec 2.4
  • [JS2-640 ] - Run with active Java security manager enabled
  • [JS2-642 ] - update chinese LOCALIZATION
  • [JS2-648 ] - A multi-database profile settings for maven 2
  • [JS2-649 ] - XML Schemas for Jetspeed XML Data
  • [JS2-654 ] - enhance components to use JetspeedCache for distributed environments

New Feature

  • [JS2-275 ] - Option to make Action URLs relative or absolute
  • [JS2-283 ] - Basic Ajax Service Implementation
  • [JS2-466 ] - Production Configuration / Hardcode Base URL
  • [JS2-476 ] - Create user pages from a user's roles
  • [JS2-490 ] - A profiler rule which serves content based on the network associated with the http request
  • [JS2-514 ] - Jetspeed Desktop
  • [JS2-523 ] - Supporting custom PortletModes and WindowStates
  • [JS2-524 ] - Providing a "print" custom PortletMode and a "solo" custom WindowState
  • [JS2-550 ] - A new Two-way password encoding service allowing decoding of encoded passwords
  • [JS2-557 ] - Property Loader Valve
  • [JS2-559 ] - Place portlets in decorators
  • [JS2-583 ] - Message properties files in greek
  • [JS2-585 ] - A continuous build script
  • [JS2-596 ] - CLONE -Support Tomcat TCP Clustering
  • [JS2-610 ] - Categorization of Portlets with new Category Portlet Selector
  • [JS2-644 ] - Remote Portlet Application Deployer
  • [JS2-645 ] - Portlet Security Constraints
  • [JS2-647 ] - Cluster Deployment
  • [JS2-653 ] - Show theme depending what user you are

Task

  • [JS2-361 ] - Portlet Caching implemented in Aggregator
  • [JS2-366 ] - Clean up orphan tables in J2 DB schema
  • [JS2-529 ] - Minimize verbose debugging output of Missing/Forbidden page fallback in PortalSiteSessionContextImpl
  • [JS2-570 ] - Add Support for SpringMVC Portlet framework plus doHeader phase
  • [JS2-573 ] - Profiler docs

Wish

  • [JS2-344 ] - PHP 5 support
  • [JS2-521 ] - j2-admin: Styling of login error messages (Login.jsp)
  • [JS2-554 ] - Upload Jetspeed jars to Ibiblio