Portal Hacks: Ajax Table Container as a Community template

Sun Java System Portal Server 7.1 Update 1 introduces the Ajax table container (see screencast for more information) . The Ajax container provides Ajax capabilities at the framework level such as drag & drop positioning of portlets, asynchronous refreshing of portlets, multiple layouts and styles.

The Community feature (see this post for more information) allows you to create new communities with different layout templates. The layout templates provided out-of-the-box are 2 column, weblog and  wiki, left navigation, and wiki. The Ajax container is not provided out-of-the-box, but it is fairly easy to add the Ajax table layout to the existing templates. Follow these steps to add Ajax table layout as one of the options to be displayed during community creation.

Step #1

From your command shell (make sure you are logged in as root or the portal user), go to /var/opt/SUNWportal/portals/<portal-id>/communitytemplates. All the paths in this post are for a portal installed on Solaris. If you are using Linux or Windows use the appropriate corresponding paths. For example, the above path on Linux will be /var/opt/sun/portal/portals/<portal-id>/communitytemplates, and on Windows it'll be something like C:\\Sun\\JavaES5\\portal\\data\\portals\\<portal-id>\\communitytemplates.

Step #2

In the /var/opt/SUNWportal/portals/<portal-id>/communitytemplates directory, copy 2column directory as ajax (or some other name), and 2column.properties as ajax.properties.

# cd /var/opt/SUNWportal/portals/portal1/communitytemplates
# cp -r 2column ajax
# cp 2column.properties ajax.properties
# ls
2column                      ajax.properties              menucontainer                wiki.properties
2column.properties           menucontainer.properties     wiki_en.properties
2column_en.properties        blogwiki                     menucontainer_en.properties
ajax                         blogwiki.properties          wiki

Step # 3

Change to the newly created ajax directory. You'll see a number of XML files in the directory.

# cd ajax
# ls
banned.xml    disabled.xml  member.xml    pending.xml   visitor.xml
deleted.xml   invited.xml   owner.xml     rejected.xml

Edit each file and replace the string "JSPTableContainerProvider" with "AJAXTableContainerProvider".

Step # 4

Change directory one level up and edit ajax.properties. Customize the values for the new ajax template. This should be fairly straightforward. Next create a localized copy of ajax.properties by copying it as ajax_en.properties.

# cp ajax.properties ajax_en.properties

That's it! Your ajax community layout is now ready to be tested.

Login to the Community sample as a user. Default user is test/test. Click on the "Create a New Community" link to launch the community creation wizard. Enter the values for the first two screens of the wizard till you reach the Template step. In the templates screen you should now see a new option for the Ajax Table Layout.

Select Ajax Layout in the template selection step and go through the wizard to create a new community. Access your newly created community and you should see the community load up using the Ajax table layout. In your layout, you'll be able to drag and drop portlets around the page, change the layout from 2-column to 3-column, and even change the style of the page.

This concludes the simple hack to make your community Ajax-enabled!

Comments:

Post a Comment:
Comments are closed for this entry.
About

atul

Search

Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today