Jetspeed provides a way for portlets to access Jetspeed components, or services, from a portlet. Although this is a Jetspeed-specific feature, it is how Jetspeed Administrative portlets can work with customizing Jetspeed. For example, the Group Administration portlet below uses a Jetspeed service to manipulate Jetspeed groups.
				All services must be exported by Jetspeed in the Spring configuration jetspeed-services.xml file. 
				All services required by a portlet must be
				specified in the jetspeed-portlet.xml.	 
            
				Portlet applications requiring a jetspeed service 
				refer to that service in their jetspeed-portlet.xml deployment descriptor:
<js:services> <js:service name='ApplicationServerManager'/> <js:service name='PageManager'/> <js:service name='PermissionManager'/> <js:service name='PortalAdministration'/> <js:service name='UserManager'/> </js:services>
Applications can get the service in the portlet init phase, for example:
groupManager = (GroupManager) getPortletContext().getAttribute(CommonPortletServices.CPS_GROUP_MANAGER_COMPONENT);
| Key Jetspeed Services defined in Spring (see jetspeed-services.xml for full list) | |
|---|---|
| Entry Key | Ref Bean | 
| PortletRegistryComponent | org.apache.jetspeed.components.portletregistry.PortletRegistry | 
| SearchComponent | org.apache.jetspeed.search.SearchEngine | 
| PAM | PAM | 
| UserManager | org.apache.jetspeed.security.UserManager | 
| PageManager | org.apache.jetspeed.page.PageManager | 
| RoleManager | org.apache.jetspeed.security.RoleManager | 
| GroupManager | org.apache.jetspeed.security.GroupManager | 
| Profiler | org.apache.jetspeed.profiler.Profiler | 
| SSO | org.apache.jetspeed.sso.SSOProvider | 
| EntityAccessor | org.apache.jetspeed.components.portletentity.PortletEntityAccessComponent | 
| WindowAccessor | org.apache.jetspeed.container.window.PortletWindowAccessor | 
| ApplicationServerManager | org.apache.jetspeed.tools.pamanager.servletcontainer.ApplicationServerManager | 
| PortletFactory | portletFactory | 
| DeploymentManager | deploymentManager | 
| IdGenerator | IdGenerator | 
| Powertools | Powertools | 
| HeaderResource | org.apache.jetspeed.headerresource.HeaderResourceFactory | 
| TemplateLocator | TemplateLocator | 
| DecorationLocator | DecorationLocator | 
| DecorationFactory | DecorationFactory | 
| Desktop | JetspeedDesktop | 
| PermissionManager | org.apache.jetspeed.security.PermissionManager | 
| PortalStatistics | PortalStatistics | 
| PortalAdministration | PortalAdministration | 
| PreferencesProvider | org.apache.jetspeed.prefs.PreferencesProvider | 
| org.apache.jetspeed.container.session.PortalSessionsManager | org.apache.jetspeed.container.session.PortalSessionsManager | 
| SecurityAccessController | org.apache.jetspeed.security.SecurityAccessController | 
| PortletTrackingManager | org.apache.jetspeed.aggregator.PortletTrackingManager | 
| PortalAuthenticationConfiguration | org.apache.jetspeed.administration.PortalAuthenticationConfiguration | 
| PortalConfiguration | PortalConfiguration | 
| ImporterManager | importerCastorPageManager | 
| decorationContentCache | decorationContentCache | 
| portletContentCache | portletContentCache | 
| AuditActivity | org.apache.jetspeed.audit.AuditActivity | 
| JetspeedSerializerFactory | org.apache.jetspeed.serializer.JetspeedSerializerFactory | 
| PasswordEncodingService | org.apache.jetspeed.security.PasswordEncodingService |