A good article on implementing friendly URLs in IBM WebSphere Portal 8-based WCM rendering
Let's discuss and capture real time use cases and problems in WebSphere Portal world
Showing posts with label WP 8. Show all posts
Showing posts with label WP 8. Show all posts
Implementing friendly URLs in IBM WebSphere Portal 8-based WCM rendering
How to Enable and Disable Managed pages feature in WebSpshere Portal Server 8.0?
By default, managed pages is enabled in WebSphere Portal Server 8.0. In order to disable the managed pages, one can use the following config engine task.
Note: Do not attempt to enable managed pages on a server where managed pages are already enabled. If you previously disabled managed pages and want to re-enable the feature, you must ensure that the "Portal Site" library is empty first. If you fail to remove page artifacts from the previous configuration, the resulting portal might not work properly.
Disabling managed pages has the following effects:
By default, each virtual portal has its own specific workspace where content is stored. When you disable managed pages, only a single workspace for the default virtual portal is available. The workspaces of other virtual portals are still there, but you can no longer access them. Any system associations between pages in those virtual portals and their respective Portal Site libraries also no longer work.
Note: To preserve content in the other virtual portals, you must import or syndicate the libraries into the default virtual portal before disabling managed pages.
You can still access the Portal Site library for the default virtual portal, but the library is no longer automatically synchronized with the page structure.
Pages are no longer managed in IBM Web Content Manager, with the following implications:
ConfigEngine.bat disable-managed-pages -DPortalAdminPwd=wpsadmin -DWasPassword=wasadmin
Note: Do not attempt to enable managed pages on a server where managed pages are already enabled. If you previously disabled managed pages and want to re-enable the feature, you must ensure that the "Portal Site" library is empty first. If you fail to remove page artifacts from the previous configuration, the resulting portal might not work properly.
Disabling managed pages has the following effects:
By default, each virtual portal has its own specific workspace where content is stored. When you disable managed pages, only a single workspace for the default virtual portal is available. The workspaces of other virtual portals are still there, but you can no longer access them. Any system associations between pages in those virtual portals and their respective Portal Site libraries also no longer work.
Note: To preserve content in the other virtual portals, you must import or syndicate the libraries into the default virtual portal before disabling managed pages.
You can still access the Portal Site library for the default virtual portal, but the library is no longer automatically synchronized with the page structure.
Pages are no longer managed in IBM Web Content Manager, with the following implications:
- No page drafts can be created.
- No new versions of pages can be created.
- Pages are no longer syndicated.
- Access control changes that you perform in the portal interface are no longer applied to the portal page site area.
- If you delete a page from the portal interface, the corresponding portal page site area is not deleted.
Try to delete the content in "Portal Site" library and then ran the following commands
ConfigEngine.bat enable-managed-pages -DPortalAdminPwd=wpsadmin -DWasPassword=wpsadmin
ConfigEngine.bat create-page-nodes -DPortalAdminPwd=wpsadmin -DWasPassword=wpsadmin
It will create lost-found and Content Root folders under Portal Site library as shown below.
Labels:
Administration,
Customization,
Managed Pages,
WCM,
WP 8
Configuring developer mode in WebspShere Portal Server 8.0
This article explains
how to configure and un-configure the development mode option.
Portlets and Web Applications will be activated on first access and not at the start up. Since some of the portlets and applications are required at start up, a white list, which contains the list of applications, will hold the applications still started at start up.
Note: To add applications to the white list, modify the wp_profile_root\PortalServer\config\StartupPerformance\wp.base_TargetMapExclList.properties file. Add a line such as App_name, where App_name is the name of the application. Log on to the WebSphere Integrated Solutions Console and go to Applications -> Application Types ->WebSphere enterprise applications to get a list of available applications.
WebSphere portal server initially will have 93 applications installed. Those applications are
1 PA_MosoftExchange2010
2 wci
3 wcm
4 PA_Community_Port_App
5 PA_FS_Disambiguation
6 PA_Markups_Manager
7 Default_Theme_80
8 Dojo_Resources
9 wps
10 PA_DynamicUIApp
11 PA_WPF
12 PA_PropertiesPortApp
13 PA_MPagesandFavorites
14 PA_portletWiring
15 PA_WPS_Welcome
16 IEHS_war
17 PA_WCMLRingPortJSR286
18 lwp_peoplefinder_war
19 PA_Portlet_Manager
20 EphoxEditLive
21 PA_Blurb_1
22 PA_Properties
23 WCM_EXTENSION
24 PA_Web
25 PA_Manage_Webservices
26 PA_Clients_Manager
27 WebResourceServlet.ear
28 PA_FrequentUsers
29 PageBuilder2_Theme
30 PA_PTransformationApp
31 Personalization_Workspace
32 PA_Search_Center
33 PA_ThemesAndSkinsMgr
34 PA_ResourceView
35 JavaContentRepository
36 PA_Principals_Manager
37 wps_theme
38 PA_UniqueNames
39 PA_WebDockPortServlet
40 PA_Import_XML
41 SpellChecker
42 Seedlist_Servlet
43 pznscheduler
44 PA_Set_Permissions
45 PA_wp.vwat.manager
46 PA_PortalWSRPProxy
47 WSPolicyManager
48 PA_SearchSitemapPort
49 PA_Pingpageproperties
50 PA_WCM_Admin
51 PA_BksFinalJSRProject
52 PA_Impersonation
53 PA_Eecontentandlayout
54 PA_WebScanner
55 Quickr_Document_Picker
56 PA_MageVirtualPortals
57 PA_ParamConfig
58 PA_Tag_Cloud
59 PA_Banner_Ad
60 MashupCommonComponent
61 PA_Roles
62 PA_Policy_Status
63 Live_Object_Framework
64 PA_Settings
65 Theme_Modules
66 PA_Feed_Service_Admin
67 PA_IWidget_Wrapper
68 UserProfileRESTServlet
69 PA_Tracing
70 PA_spa
71 PA_Login_Portlet_App
72 lwp_peoplePicker_war
73 PA_wp.feedspace
74 wp.vwat.servlet.ear
75 lwp_groupsViewer_war
76 pznpublish
77 lwp.addtosametimelist_war
78 PA_Blurb
79 PZN_Utilities
80 PA_ContactList
81 PA_appearance
82 PA_Credential_Admin
83 wps_scheduler
84 eventExplorer
85 Personalization_Lists
86 PA_CredVaultDialog
87 feedReader
88 AJAX Proxy Configuration
89 PSESearchAdapter
90 PA_WCM_Authoring_UI
91 PA_URL_mapping
92 websiteDisplayer
93 PA_Selfcare_Port_App
Run the ConfigEngine.bat enable-develop-mode-startup-performance -DWasPassword=password task, from the wp_profile_root\ConfigEngine directory, immediately after installing WebSphere Portal to develop portals and portlets. Then stop and restart the WebSphere_Portal server to propagate the changes.
1 PA_MosoftExchange2010
2 wci Application is in exclude list. Skip ...
3 wcm Application is in exclude list. Skip ...
4 PA_Community_Port_App
5 PA_FS_Disambiguation
6 PA_Markups_Manager
7 Default_Theme_80 Application is in exclude list. Skip ...
8 Dojo_Resources Application is in exclude list. Skip ...
9 wps Application is in exclude list. Skip ...
10 PA_DynamicUIApp
11 PA_WPF
12 PA_PropertiesPortApp
13 PA_MPagesandFavorites
14 PA_portletWiring
15 PA_WPS_Welcome
16 IEHS_war Application is in exclude list. Skip ...
17 PA_WCMLRingPortJSR286 Application is in exclude list. Skip ...
18 lwp_peoplefinder_war Application is in exclude list. Skip ...
19 PA_Portlet_Manager
20 EphoxEditLive Application is in exclude list. Skip ...
21 PA_Blurb_1
22 PA_Properties
23 WCM_EXTENSION
24 PA_Web
25 PA_Manage_Webservices
26 PA_Clients_Manager
27 WebResourceServlet.ear
28 PA_FrequentUsers
29 PageBuilder2_Theme Application is in exclude list. Skip ...
30 PA_PTransformationApp
31 Personalization_Workspace Application is in exclude list. Skip ...
32 PA_Search_Center
33 PA_ThemesAndSkinsMgr
34 PA_ResourceView
35 JavaContentRepository Application is in exclude list. Skip ... 36 PA_Principals_Manager
37 wps_theme Application is in exclude list. Skip ...
38 PA_UniqueNames
39 PA_WebDockPortServlet
40 PA_Import_XML
41 SpellChecker Application is in exclude list. Skip ...
42 Seedlist_Servlet Application is in exclude list. Skip ...
43 pznscheduler
44 PA_Set_Permissions
45 PA_wp.vwat.manager
46 PA_PortalWSRPProxy
47 WSPolicyManager
48 PA_SearchSitemapPort
49 PA_Pingpageproperties Application is in exclude list. Skip ...
50 PA_WCM_Admin
51 PA_BksFinalJSRProject
52 PA_Impersonation Application is in exclude list. Skip ...
53 PA_Eecontentandlayout
54 PA_WebScanner Application is in exclude list. Skip ...
55 Quickr_Document_Picker Application is in exclude list. Skip ...
56 PA_MageVirtualPortals
57 PA_ParamConfig
58 PA_Tag_Cloud
59 PA_Banner_Ad
60 MashupCommonComponent Application is in exclude list. Skip ...
61 PA_Roles
62 PA_Policy_Status
63 Live_Object_Framework Application is in exclude list. Skip ...
64 PA_Settings
65 Theme_Modules Application is in exclude list. Skip ...
66 PA_Feed_Service_Admin
67 PA_IWidget_Wrapper
68 UserProfileRESTServlet Application is in exclude list. Skip ...
69 PA_Tracing
70 PA_spa
71 PA_Login_Portlet_App Application is in exclude list. Skip ...
72 lwp_peoplePicker_war
73 PA_wp.feedspace
74 wp.vwat.servlet.ear
75 lwp_groupsViewer_war
76 pznpublish
77 lwp.addtosametimelist_war
78 PA_Blurb
79 PZN_Utilities
80 PA_ContactList
81 PA_appearance
82 PA_Credential_Admin
83 wps_scheduler Application is in exclude list. Skip ...
84 eventExplorer Application is in exclude list. Skip ...
85 Personalization_Lists Application is in exclude list. Skip ...
86 PA_CredVaultDialog
87 feedReader Application is in exclude list. Skip ...
88 AJAX Proxy Configuration Application is in exclude list. Skip ...
89 PSESearchAdapter
90 PA_WCM_Authoring_UI Application is in exclude list. Skip ...
91 PA_URL_mapping
92 websiteDisplayer Application is in exclude list. Skip ...
93 PA_Selfcare_Port_App Application is in exclude list. Skip ...
Run the ConfigEngine.bat disable-develop-mode-startup-performance -DWasPassword=password task, from the wp_profile_root\ConfigEngine directory, to revert back to a production server. Then stop and restart the WebSphere_Portal server to propagate your changes.
Developer mode is for a development environment only and should not be used in a production environmentThe JVM will be switched to development mode and the initial heap size will be set to the maximum allowable heap size to reduce the amount of garbage collection during start up.
Portlets and Web Applications will be activated on first access and not at the start up. Since some of the portlets and applications are required at start up, a white list, which contains the list of applications, will hold the applications still started at start up.
Note: To add applications to the white list, modify the wp_profile_root\PortalServer\config\StartupPerformance\wp.base_TargetMapExclList.properties file. Add a line such as App_name, where App_name is the name of the application. Log on to the WebSphere Integrated Solutions Console and go to Applications -> Application Types ->WebSphere enterprise applications to get a list of available applications.
WebSphere portal server initially will have 93 applications installed. Those applications are
1 PA_MosoftExchange2010
2 wci
3 wcm
4 PA_Community_Port_App
5 PA_FS_Disambiguation
6 PA_Markups_Manager
7 Default_Theme_80
8 Dojo_Resources
9 wps
10 PA_DynamicUIApp
11 PA_WPF
12 PA_PropertiesPortApp
13 PA_MPagesandFavorites
14 PA_portletWiring
15 PA_WPS_Welcome
16 IEHS_war
17 PA_WCMLRingPortJSR286
18 lwp_peoplefinder_war
19 PA_Portlet_Manager
20 EphoxEditLive
21 PA_Blurb_1
22 PA_Properties
23 WCM_EXTENSION
24 PA_Web
25 PA_Manage_Webservices
26 PA_Clients_Manager
27 WebResourceServlet.ear
28 PA_FrequentUsers
29 PageBuilder2_Theme
30 PA_PTransformationApp
31 Personalization_Workspace
32 PA_Search_Center
33 PA_ThemesAndSkinsMgr
34 PA_ResourceView
35 JavaContentRepository
36 PA_Principals_Manager
37 wps_theme
38 PA_UniqueNames
39 PA_WebDockPortServlet
40 PA_Import_XML
41 SpellChecker
42 Seedlist_Servlet
43 pznscheduler
44 PA_Set_Permissions
45 PA_wp.vwat.manager
46 PA_PortalWSRPProxy
47 WSPolicyManager
48 PA_SearchSitemapPort
49 PA_Pingpageproperties
50 PA_WCM_Admin
51 PA_BksFinalJSRProject
52 PA_Impersonation
53 PA_Eecontentandlayout
54 PA_WebScanner
55 Quickr_Document_Picker
56 PA_MageVirtualPortals
57 PA_ParamConfig
58 PA_Tag_Cloud
59 PA_Banner_Ad
60 MashupCommonComponent
61 PA_Roles
62 PA_Policy_Status
63 Live_Object_Framework
64 PA_Settings
65 Theme_Modules
66 PA_Feed_Service_Admin
67 PA_IWidget_Wrapper
68 UserProfileRESTServlet
69 PA_Tracing
70 PA_spa
71 PA_Login_Portlet_App
72 lwp_peoplePicker_war
73 PA_wp.feedspace
74 wp.vwat.servlet.ear
75 lwp_groupsViewer_war
76 pznpublish
77 lwp.addtosametimelist_war
78 PA_Blurb
79 PZN_Utilities
80 PA_ContactList
81 PA_appearance
82 PA_Credential_Admin
83 wps_scheduler
84 eventExplorer
85 Personalization_Lists
86 PA_CredVaultDialog
87 feedReader
88 AJAX Proxy Configuration
89 PSESearchAdapter
90 PA_WCM_Authoring_UI
91 PA_URL_mapping
92 websiteDisplayer
93 PA_Selfcare_Port_App
Run the ConfigEngine.bat enable-develop-mode-startup-performance -DWasPassword=password task, from the wp_profile_root\ConfigEngine directory, immediately after installing WebSphere Portal to develop portals and portlets. Then stop and restart the WebSphere_Portal server to propagate the changes.
1 PA_MosoftExchange2010
2 wci Application is in exclude list. Skip ...
3 wcm Application is in exclude list. Skip ...
4 PA_Community_Port_App
5 PA_FS_Disambiguation
6 PA_Markups_Manager
7 Default_Theme_80 Application is in exclude list. Skip ...
8 Dojo_Resources Application is in exclude list. Skip ...
9 wps Application is in exclude list. Skip ...
10 PA_DynamicUIApp
11 PA_WPF
12 PA_PropertiesPortApp
13 PA_MPagesandFavorites
14 PA_portletWiring
15 PA_WPS_Welcome
16 IEHS_war Application is in exclude list. Skip ...
17 PA_WCMLRingPortJSR286 Application is in exclude list. Skip ...
18 lwp_peoplefinder_war Application is in exclude list. Skip ...
19 PA_Portlet_Manager
20 EphoxEditLive Application is in exclude list. Skip ...
21 PA_Blurb_1
22 PA_Properties
23 WCM_EXTENSION
24 PA_Web
25 PA_Manage_Webservices
26 PA_Clients_Manager
27 WebResourceServlet.ear
28 PA_FrequentUsers
29 PageBuilder2_Theme Application is in exclude list. Skip ...
30 PA_PTransformationApp
31 Personalization_Workspace Application is in exclude list. Skip ...
32 PA_Search_Center
33 PA_ThemesAndSkinsMgr
34 PA_ResourceView
35 JavaContentRepository Application is in exclude list. Skip ... 36 PA_Principals_Manager
37 wps_theme Application is in exclude list. Skip ...
38 PA_UniqueNames
39 PA_WebDockPortServlet
40 PA_Import_XML
41 SpellChecker Application is in exclude list. Skip ...
42 Seedlist_Servlet Application is in exclude list. Skip ...
43 pznscheduler
44 PA_Set_Permissions
45 PA_wp.vwat.manager
46 PA_PortalWSRPProxy
47 WSPolicyManager
48 PA_SearchSitemapPort
49 PA_Pingpageproperties Application is in exclude list. Skip ...
50 PA_WCM_Admin
51 PA_BksFinalJSRProject
52 PA_Impersonation Application is in exclude list. Skip ...
53 PA_Eecontentandlayout
54 PA_WebScanner Application is in exclude list. Skip ...
55 Quickr_Document_Picker Application is in exclude list. Skip ...
56 PA_MageVirtualPortals
57 PA_ParamConfig
58 PA_Tag_Cloud
59 PA_Banner_Ad
60 MashupCommonComponent Application is in exclude list. Skip ...
61 PA_Roles
62 PA_Policy_Status
63 Live_Object_Framework Application is in exclude list. Skip ...
64 PA_Settings
65 Theme_Modules Application is in exclude list. Skip ...
66 PA_Feed_Service_Admin
67 PA_IWidget_Wrapper
68 UserProfileRESTServlet Application is in exclude list. Skip ...
69 PA_Tracing
70 PA_spa
71 PA_Login_Portlet_App Application is in exclude list. Skip ...
72 lwp_peoplePicker_war
73 PA_wp.feedspace
74 wp.vwat.servlet.ear
75 lwp_groupsViewer_war
76 pznpublish
77 lwp.addtosametimelist_war
78 PA_Blurb
79 PZN_Utilities
80 PA_ContactList
81 PA_appearance
82 PA_Credential_Admin
83 wps_scheduler Application is in exclude list. Skip ...
84 eventExplorer Application is in exclude list. Skip ...
85 Personalization_Lists Application is in exclude list. Skip ...
86 PA_CredVaultDialog
87 feedReader Application is in exclude list. Skip ...
88 AJAX Proxy Configuration Application is in exclude list. Skip ...
89 PSESearchAdapter
90 PA_WCM_Authoring_UI Application is in exclude list. Skip ...
91 PA_URL_mapping
92 websiteDisplayer Application is in exclude list. Skip ...
93 PA_Selfcare_Port_App Application is in exclude list. Skip ...
Run the ConfigEngine.bat disable-develop-mode-startup-performance -DWasPassword=password task, from the wp_profile_root\ConfigEngine directory, to revert back to a production server. Then stop and restart the WebSphere_Portal server to propagate your changes.
Labels:
Administration,
Configuration,
Customization,
Performance,
Tuning,
WP 8
What's new in WebSphere Portal V8 ?
WebSphere Portal 8 was released by IBM some time back. Below are some of
the useful links for those who have just started working on WebSphere
Portal 8.
Click Here to view the complete list of features that are introduced as part of WebSphere Portal 8.
Click Here for complete list of features comparison of different versions of WebSphere Portal.
Perfected Steps to Installing IBM WebSphere Portal v8
Click Here to view the complete list of features that are introduced as part of WebSphere Portal 8.
Click Here for complete list of features comparison of different versions of WebSphere Portal.
Perfected Steps to Installing IBM WebSphere Portal v8
How to enable / disable edit mode for portal pages in WebSphere Portal 8?
Portal Administration pages are not intended to be edited, those pages
are excluded from the edit mode features provided by the site toolbar.
When you navigate to an administration page, the site toolbar automatically exits edit mode. The edit mode features are suppressed by the page parameter (theme.disable.edit.mode) on the Administration page label unique name (wps.Administration). Setting the parameter on the top-level administration page also causes the child pages to be affected.
You can set the theme.disable.edit.mode parameter on any page where you want to disable edit mode in the site toolbar. Edit the properties of the page, and add this parameter with a value of true.
Add the set the property to true as shown below.
When you navigate to an administration page, the site toolbar automatically exits edit mode. The edit mode features are suppressed by the page parameter (theme.disable.edit.mode) on the Administration page label unique name (wps.Administration). Setting the parameter on the top-level administration page also causes the child pages to be affected.
You can set the theme.disable.edit.mode parameter on any page where you want to disable edit mode in the site toolbar. Edit the properties of the page, and add this parameter with a value of true.
Add the set the property to true as shown below.
How to implement friendly URLs in IBM WebSphere Portal 8-based WCM rendering
This article showcases the new feature in version
8 of IBM WebSphere Portal / IBM Web Content Manager (WCM) with which
you can implement a clean-navigation, stateless URL in Portal-based WCM
delivery. Also referred to as friendly URLs or human readable URLs.
Difference between Friendly URL’s and URL mappings
In this article, I am going to talk about friendly URLs, URL mappings and difference between them.
Friendly URLs
Friendly URLs are human readable URL prefixes generated based on the content node hierarchy. The URL prefix for content sub node will contain the prefix assigned to the super and all other nodes above it. Friendly URLs are added to a page through page properties in Admin UI or we can add them through XML access too.

By default, Friendly URLs are disabled in websphere portal, to enable them
1. Open WAS admin console.
2. Navigate to Resources -> Resource environment -> Resource environment providers.
3. Search WP_ConfigService and click custom properties.
4. Click “NEW” and add “friendly.enabled” in name and “true ” for the value.
5. If it already exists change “friendly.enabled” to true
The URL assigned is stored in the page level metadata as com.ibm.portal.friendly.name.
URL Mappings
URL mappings are used to define the human readable URL prefixes to the content in the portal which will serve as entry points onto the portal. However, these URL mappings will not be preserved upon navigating to other content node. We can define URL mappings through Admin UI and XML access. Portal does not provide any API to construct URL mappings programatically. URL mappings are preferred when we need a URL to link up between two different portals. This will allow us to maintain a constant URL even with change in content node.

Few Important Points
1. We need to maintain URL mappings for each entry point and they will not be valid for the next navigation state.
2. We need to define friendly URLs for all the pages or nodes in the hierarchy before assigning it to sub pages. It cannot resolve a friendly URL unless and until all pages are properly defined with respective URLs.
3. For friendly URLs, URl assigned is stored in page level metadata as com.ibm.portal.friendly.name.
Friendly URLs
Friendly URLs are human readable URL prefixes generated based on the content node hierarchy. The URL prefix for content sub node will contain the prefix assigned to the super and all other nodes above it. Friendly URLs are added to a page through page properties in Admin UI or we can add them through XML access too.
By default, Friendly URLs are disabled in websphere portal, to enable them
1. Open WAS admin console.
2. Navigate to Resources -> Resource environment -> Resource environment providers.
3. Search WP_ConfigService and click custom properties.
4. Click “NEW” and add “friendly.enabled” in name and “true ” for the value.
5. If it already exists change “friendly.enabled” to true
The URL assigned is stored in the page level metadata as com.ibm.portal.friendly.name.
URL Mappings
URL mappings are used to define the human readable URL prefixes to the content in the portal which will serve as entry points onto the portal. However, these URL mappings will not be preserved upon navigating to other content node. We can define URL mappings through Admin UI and XML access. Portal does not provide any API to construct URL mappings programatically. URL mappings are preferred when we need a URL to link up between two different portals. This will allow us to maintain a constant URL even with change in content node.
Few Important Points
1. We need to maintain URL mappings for each entry point and they will not be valid for the next navigation state.
2. We need to define friendly URLs for all the pages or nodes in the hierarchy before assigning it to sub pages. It cannot resolve a friendly URL unless and until all pages are properly defined with respective URLs.
3. For friendly URLs, URl assigned is stored in page level metadata as com.ibm.portal.friendly.name.
Labels:
Administration,
Basics,
Configuration,
Customization,
Development,
Errors,
Features,
Issues,
JSR 168,
JSR 286,
Performance,
Specification,
Support,
Troubleshooting,
Tuning,
Workarounds,
WP 7,
WP 8
What is the best way to deploy portlets within Portal environment?
This article lists down different ways of deploying portlets within Portal environment listing advantages and disadvantages of each.
One Portlet per war
In this approach, each portlet is bundled as one war file.
Advantages:
In this approach, we pack all the portlets in one war file.
Advantages:
This approach refer to portlets grouped together based on function/ same functionality into single WAR files.
Advantages:
Disadvantages:
![]() |
| Portlet Deployment |
One Portlet per war
In this approach, each portlet is bundled as one war file.
Advantages:
- Abstraction to the lowest level
- Independent development and testing of portlets
- Change to single portlet will not impact other portlets within portal
- Messy deployment as the number of portlets grow
- Sharing of portlet session is an issue
In this approach, we pack all the portlets in one war file.
Advantages:
- Clean deployment, easy to manage
- Easy to share portlet session
- Parallel development is a challenge
- The size of the deploying war becomes extremely large and takes a long time to deploy
- Single change in one portlet will cause a redeploy of all portlets, adding re-testing overheads and making portal unavailable
This approach refer to portlets grouped together based on function/ same functionality into single WAR files.
Advantages:
- Small changes to a functionality will not affect the overall portal
- Clean and easy to manage
- Portlets which need to share session will be grouped into one
- Parallel development at functionality level is possible
Disadvantages:
- Maintenance at individual Portlet level might affect other packaged portlet of the application
Shared library management in ext of Portal server
Shared library in ext of Portlets
Shared LibrariesApart from portlet applications, there are certain shared libraries used by most of the portlet applications (WAR's). This lead to challenge of how to deploy these shared applications. Here are few options:
Single Portlet application and shared libraries packed into one EAR
This approach suggests having single portlet application, along with shared libraries and resource files, packed as one EAR file.
Advantages:
- Each EAR will be truly independent
- Common functionality could be extended based on the need of the portlet application
- Changes to shared libraries will not impact all the other independent EAR's
- Each EAR would be large and will take longer deployment time
- Each individual EAR would contain copy of the framework classes and maintainability of different versions of framework classes in different columns will be a challenge
- More complex deployment process
- Changes to shared libraries will require redeployment of all the EARs
- Complex deployment
- Class loading strategy of the application server would have to be restricted to PARENT LAST
Multiple Portlet applications and shared libraries packed into one EAR file
This approach suggests that multiple portlet applications along with shared libraries and resources files, such as properties, packed into one single EAR.
Advantages:
- All portlet applications share same common libraries
Disadvantages:
- Big size and will take a long time for deployment
- Change to single portlet application will require redeployment of whole EAR and thus unavailability of the application
- Complex deployment
Shared library in ext of Portal server
This approach suggests that the shared library to be placed within the ext library directory of the portal server. This approach is suggested when there is are framework libraries which need to be shared across the organization (Organization level frameworks for logging/exception handling etc.) and each application hosted in the environment should follow those standards.Advantages:
- One of the most common way of sharing the files among the multiple applications
- In portal world, all the common files pertaining to theme, portlets and third party application are stored in shared library
- No need to use Dyna Cache or JSR 286 events to save and share values across portlets
- Library would be available across applications
- Individual applications would be lighter since they won’t contain the code for framework classes
Disadvantages:
- Change management for the shared libraries would be very risky
Steps for Creating a Shared library on Portal Server
- Logon to Websphere Application server console
- Navigate to Environment -> Shared Libraries
- Click apply and save it
- Go to servers -> Application servers -> websphere portal -> Java and Process management -> classloader.
- Click Shared library references
- Add the library that you want to share
- Save the configuration and restart the Portal server.
Subscribe to:
Posts (Atom)


