With a PeopleTools 8.50 (or later) license, you are entitled to install and run the following PeopleSoft Applications Portal 9.1 Related Content services
- Related Discussion
- Related Links
- Related Tags
For this testcase I have installed PeopleSoft CRM 9.1 Demo and Enterprise Portal 9.1 Demo, both running on PeopleTools 8.51 locally. I have installed one PIA (Weblogic) hosting both CRM and Portal with separate sites.
Webprofile
The first thing you need to do, is to add an authentication domain to your webprofile. Navigate to Webprofile page using menu path Main Menu >PeopleTools > Webprofile > Webprofile Configuration and open the webprofile you submitted during installation of PIA.Because I am running PeopleSoft locally, I can easily fake a domain by adding the following line to my hosts file
127.0.0.1 skillcenter.logica.com
Setup Integration Broker on both systems
Because I am running both environments within the same PIA, they share the same Integration Gateway. First we need to figure out the default local node of the environments.
Default local node of CRM is PSFT_CR
Default local node of Portal is PSFT_PA
These are the default local nodes upon installation. You should rename your default local node to an unique node name. See comment from Jim Marion in the comment section, why you should do this.
After setting up the Integration Gateway, set both default local nodes in the Gateway Setup Properties. Navigate to this page using Main Menu > PeopleTools > Integration Broker > Configurtion > Gateways and click on link Gateway Setup Properties
Set keystore password encrypted
By default the integrationgateway.properties file contains a keystore password that is not encrypted. We need to encrypt this password.Click in the PeopleSoft Node Configuration page on the link Advances Properties Page and scroll down to line stating
secureFileKeystorePasswd=password
Using the password encrypting block change encrypt the password and change this in the file.
Configure CRM
We have now completed the prerequisite configuration. Now we can start configuring CRM.Configure trusted nodes
Navigate to Main Menu > PeopleTools > Security > Security Objects > Single Signon and add both Default Local Nodes as trusted nodes.
Configure ANONYMOUS Node
By default the ANONYMOUS node contains a non-existing user. We need to add an existing PeopleSoft user for this node.Go to Main Menu > PeopleTools > Integration Broker > Integration Setup > Nodes and open ANONYMOUS node.
Change the Default User ID to an existing user.
Configure WSDL_NODE Node
The WSDL_NODE also contains a non-existing user upon installation.Change the Default User ID to an existing user. In addition this needs to have a password.
Set Authentication Option to Password and provide a password.
Click on tab WS Security.
Change the Authentication Token Type to Username Token and check the checkboxes Encrypted and Digitally Signed.
Configure PSFT_PA Node
We need to set the Authentication Option for this Node to Password.In addition we need to add the uri of Portal.
Click on tab Portal.
Set the uri of the Portal environment.
Configure Portal
Now that we have configured CRM we have to configure Portal in the same way we have configured CRM.Set the default local nodes PSFT_PA and PSFT_CR as trusted nodes the same way as in the CRM configuration.
Configure ANONYMOUS and WSDL_NODE the same way as done for CRM. Ensure that you use the same Userid defined in the nodes for both environments.
Configure PSFT_CR Node
Open Node PSFT_CR and set Authentication Option for this Node to Password and Userid to the Userid as defined in the CRM environment.Click on tab Portal and add the uri of the CRM environment.
Now both environments are ready for configuring Related Content. Before continuing bounce application servers and webserver and clear cache.
Setting up Related Content
Let's try to add the Discussion service to a CRM component.Go to Main Menu > PeopleTools > Portal > Related Content Service > Manage Related Content Service.
Click on link Assign Related Content to Application Pages
You will now be prompted to choose the page where you want to add the Related Content service. Let's try to add the Discussion service to the Userprofile component.
Navigate down the menu tree and choose Userprofile component.
You will now be redirected to the screen where you have to assign related content.
Set the following values as shows:
Service Type - Service
Service ID - RELATEDDISCUSSIONS
and click on the link Configure.
Leave the top block default and scroll down the page.
Select Related Content Menu and choose the Security option of your preference and save the changes.
Now let's go to the Userprofile component and see if we have access to the Related Content Service.
You can see there is a new link available for Related Content.
When selecting this link, a dropdown menu is presented with all available Related Content for this component.
Selecting the Discussion Related Content, will create a new frame splitting the screen, with the User Profile page on top and the Related Content service below.
See also this post on creating a custom Related Content Service to Google Maps for directions from home to work location.
Hi Hakan,
ReplyDeleteverry nice post, can I ask you the following: did you install the portal in the same PS_HOME as the CRM application or in it's own PS_HOME? And did you install the appserver and process scheduler from the same PS_HOME as CRM or (in case of multiple PS_HOME) also from the portal PS_HOME?
Ernst
Ernst,
ReplyDeleteIn this case both Portal en CRM are installed in the same PS_HOME and are running in the same PIA. But this should not really matter, since Related Content communicates through services (HTTP).
Hakan, the first portion of your blog post contains a good write up of configuring integration broker. I noticed that you used the delivered default local node names (PSFT_PA, PSFT_CR). Since everyone has these names upon installation, it is a good reference point for the article, but not so good from a security perspective. What do you think about adding a step to your article for renaming those nodes? The node name becomes part of the PS_TOKEN and is what a trusted node uses to identify the sender. If you have SSO trusted nodes setup in your dev, test, prod, etc, but all nodes have the default names, then your prod system will inadvertently trust your dev, test, etc, thinking they are the real prod node.
ReplyDeleteYour write up on configuring related content is very good as well. In your CRM system, was the related discussions service preconfigured? It was preconfigured in my portal server, but not my content provider systems, so I used my portal as a blue print for configuring my CRM system. Would you mind showing how you added the related discussions service to your CRM system (not configuring a component as shown here, but the actual service definition) and then showing how you mapped fields between the component/page and the service (the configure link)?
Hi Jim,
ReplyDeleteThank you for your comment, I have added some text referencing your comment on changing the default local node name.
These Related Content Services come predelivered with PeopleTools 8.50 and greater, so yes, my CRM environment was predeliverd with these services.
See also the datasheet reference at the beginning of my post.
Here is a portion of the datasheet.
PeopleTools Related Content Framework is delivered with PeopleTools 8.50/8.51 releases. In addition, with a PeopleTools license, you are able to use the following three Applications Portal related content services:
- Related Discussion service
- Related Links service
- Related Tags service
You must install and configure a PeopleSoft Applications Portal database to host the data for these services. However, a separate PeopleSoft Applications Portal license is not required to use these related content services as described above.
I had also created my own Related Content Service to Google Maps, which takes two locations from the component (Home & Work) and shows the Google Maps routeplanner and distance from your home to work. I will write a blog in this as well.
Regards,
Hakan Biroglu