One of the cool features of WebCenter Portal and WebCenter Content is that it integrates quite well into each other. WebCenter Content has a very powerful feature that allows us to create structured information based upon a definition of the data. The data will be stored in XML and we can create several templates to display the content.
These features can be made available in WebCenter Spaces by configuring the OHS properly. With a few tweaks here and there, we can also enable the same features in a custom WebCenter Portal application.
I already made a large tutorial section on how to enable Site Studio in WebCenter and how to work with these region definitions and data files.
The intention of this post is to show how to configure your application so all of the features like inline editing will also work from within WebCenter Portal.
Let me first tell you how the integration in with WebCenter Spaces and WebCenter Content works.
In common you will have a setup that resembles like the following one:
WebCenter Spaces: http://localhost:8888/webcenter
WebCenter Content: http://localhost:16200/cs
In order for this to work, we need to install the Web Tier and configure the proxy so we can access both WebCenter Spaces and Content on the same address and port:
The reason for this is that when we enable inline editing, WebCenter will use an iframe with a source that uses the same host and port and adds the context root of UCM as specified in the connection in the enterprise manager.
If I already lost you here, just read my previous post about how to enable these features.
In order for this to work with a regular Portal application, we need to configure it in the same way. This means that we need to configure the OHS and add our application so it will also be available on the same host and port as UCM.
This can be a little tricky, especially if you are working with a development environment because you are working with your integrated WebLogic. We can make it work as long as the OHS can access your local machine and you will need to access your application by using the host and port of the OHS and not http://localhost:7101/yourContextRoot.
Let me just show you how to do this exactly. Suppose that I have an application called ssIntegration with context root ssIntegration. This application is available on my integrated WLS as http://localhost:7101/ssIntegration.
I have added the content presenter with some data files and I want to enable inline editing.
First thing to do is configure the OHS and add following code to the mod_wl_ohs.conf file:
As you can see, these line will tell the OHS to proxy the application. In this example I use localhost but the OHS and your application do not need to be on the same machine. The OHS just need to be able to access your local machine.
I need to restart the OHS and after that instead of accessing my app through http://localhost:7101/ssIntegration I need to access it through http://localhost:7777/ssIntegration.
This is because when WebCenter generated the iframe, it will use the same host and port so if I would access it by using port 7101 which is the integrated WLS, WebCenter would generate the iframe with source http://localhost:7101/cs which does not work.
The next step is to configure the cookie path. This is required because you will lose the session every time the iframe closes.
We need to add a session descriptor to the weblogic.xml in the WEB-INF folder and specify the cookie path (which is the context root of your application):
When this is done you can access the application through the OHS and use ctrl+shift+c to go to contribution mode in a data file.
If hope this is clear. if you have further question please leave a comment.