Webcenter Portal

Creating Repository Connection using Fusion Middleware Control

Step 1, Open EM console

Step 2, Select Service Configuration as below

conn0

Step 3, Specify below configuration,

conn1

Step 4, Click Test to make sure it is connected as below,

conn2

Enjoy!!!

Advertisements

Webcenter rcu error – Processes too low

Error : While running rcu for WebCenter 11.1.1.8 if you see “Processes too low 100. Should be set atleast 200” something like this.

Solution:

Step1, open SQL prompt with admin permission.

Step 2, Connect as sysdba

Step 3, SQL>ALTER SYSTEM SET PROCESSES=300 SCOPE=SPFILE;

Step 4, SQL>SHUTDOWN IMMEDIATE;

Step 5, SQL> STARTUP;

Step 6, Enjoy!!!

How to install Webcenter Portal 11.1.1.8

Use Case – Share steps to install Webcenter Portal 11.1.1.8

Solution – Please follow below steps for installation,

Step 1, make sure rcu has already executed

follow below screens,

step1 step2 Step3 Step4 Step5 Step6 Step7 Step8 Step9 Step10

Enjoy…

 

How to display 3 level menu with customized look and feel

Use Case – User wants to display a menu with below look and feel,

Image

Solution –

Step 1, Create a navigation model with 3 level hierarchy

Step 2, Add pages in page hierarchy

Step 3, Update GlobePageTemplate to read 3 level of navigation. refer – https://webcenterhowto.wordpress.com/2014/03/13/customizing-globepage-template-in-webcenter-framework-application/

Step 4, Add below css,

<style>
table tr{
position:relative;
}
table td{
vertical-align:top;
}
table ul li ul{
display:none;
}

table ul li:hover ul{
display:block;
position:absolute;
left:0;
width:700px;

background:#ccc;
}

table ul li:hover ul li{
float:left;
width:200px;
}
</style>

Step 5, Enjoy…

Customizing GlobePage template to display 3 level Menu in Webcenter Framework Application

Use Case – Customize Globe Page template to display three level of menu from navigation model

Solution –

Inside GlobePageTemplate.jspx, add another forEach for 3rd level of menu processing. here is the code,

<?xml version=’1.0′ encoding=’UTF-8′?>
<jsp:root xmlns:jsp=”http://java.sun.com/JSP/Page&#8221; version=”2.1″
xmlns:f=”http://java.sun.com/jsf/core&#8221;
xmlns:af=”http://xmlns.oracle.com/adf/faces/rich&#8221;
xmlns:pe=”http://xmlns.oracle.com/adf/pageeditor&#8221;
xmlns:cust=”http://xmlns.oracle.com/adf/faces/customizable&#8221;
xmlns:c=”http://java.sun.com/jsp/jstl/core”&gt;
<jsp:directive.page contentType=”text/html;charset=UTF-8″/>
<f:loadBundle basename=”oracle.webcenter.portalframework.sitestructure.resource.PortalAppPageResource”
var=”portalResource”/>
<af:pageTemplateDef var=”attrs”>
<af:panelGroupLayout id=”pt_root” layout=”scroll”>
<!– centered vertical stack: banner, navbar, content, footer –>
<af:panelGroupLayout id=”pt_pgl2″ layout=”vertical”
inlineStyle=”width:#{attrs.contentWidth};margin: 0 auto;”>
<!– (1) banner, overall layout –>
<af:panelBorderLayout id=”pt_pgl1″
rendered=”#{!composerContext.inEditMode or attrs.isEditingTemplate}”
inlineStyle=’background-image:url(#{facesContext.externalContext.requestContextPath}/images/globe.png);’>
<!– (2)-1 logo (Custom Text, Tag Line) –>
<cust:panelCustomizable id=”pt_pc2″ layout=”horizontal”
inlineStyle=”border-style:none;”>
<af:panelGroupLayout id=”pt_pgl4″ layout=”vertical”>
<af:spacer id=”pt_sp1″ height=”12px”/>
<af:goLink text=”#{portalResource[‘logo’]}” id=”pt_ot4″ destination=”/”
inlineStyle=”font-size:x-large; color:White;”/>
<af:spacer id=”pt_sp2″ height=”10px”/>
<af:outputText value=”#{portalResource[‘logo_tag’]}” id=”pt_ot6″
inlineStyle=”color:#558ff9; font-style:italic; font-size:small;”/>
<af:spacer id=”pt_sp4″ height=”12px”/>
</af:panelGroupLayout>
</cust:panelCustomizable>
<!– (2)-2 global links (Welcome Message, Administration Link, Login/Logout –>
<f:facet name=”end”>
<cust:panelCustomizable layout=”vertical” id=”pt_pgl16″ halign=”end”
inlineStyle=”padding:6px 8px”>
<!– Global links –>
<af:panelGroupLayout id=”pt_pgl11″
inlineStyle=”white-space:nowrap”>
<f:facet name=”separator”>
<af:panelGroupLayout id=”pt_pgl17″>
<af:spacer id=”pt_spb” width=”5px”/>
<af:outputText value=”|” id=”pt_bar1″
inlineStyle=”color:White;”/>
<af:spacer id=”pt_spa” width=”5px”/>
</af:panelGroupLayout>
</f:facet>
<!– 1) Username –>
<af:outputText id=”pt_ot1″
value=”#{requestContext.formatter[portalResource.welcome][securityContext.userName]}”
inlineStyle=”color:White; font-size:small;”
rendered=”#{attrs.showGreetings}”/>
<!– 2a) Admin link –>
<af:goLink id=”pt_glnk1″ text=”#{portalResource[‘admin’]}”
destination=”/admin”
rendered=”#{attrs.showAdmin and !attrs.isAdminPage}”
inlineStyle=”font-size:small; color:White;”/>
<!– 2b) Back to Portal link –>
<af:goLink id=”pt_glnk2″ text=”#{portalResource[‘back’]}” destination=”/faces/wcnav_currentSelection”
rendered=”#{attrs.showAdmin and attrs.isAdminPage}”
inlineStyle=”font-size:small; color:White;”/>
<!– 3) Logout link –>
<af:commandLink id=”pt_glnk4″ text=”#{portalResource[‘logout’]}”
action=”#{o_w_s_l_LoginBackingBean.doLogout}”
rendered=”#{securityContext.authenticated}”
inlineStyle=”font-size:small; color:White;”/>
</af:panelGroupLayout>
<!– Login form –>
<af:subform id=”pt_sf1″ defaultCommand=”pt_logincb”
rendered=”#{attrs.showLogin and !securityContext.authenticated}”>
<af:panelFormLayout id=”pt_pfl1″>
<af:panelLabelAndMessage id=”pt_plam1″ label=”#{portalResource[‘username’]}” for=”pt_it1″
styleClass=”NoLabelWrap”
labelStyle=”font-size:small;color:white;”>
<af:inputText id=”pt_it1″ simple=”true”
value=”#{o_w_s_l_LoginBackingBean.userName}”
columns=”15″/>
</af:panelLabelAndMessage>
<af:panelLabelAndMessage id=”pt_plam2″ label=”#{portalResource[‘password’]}” for=”pt_it2″
styleClass=”NoLabelWrap”
labelStyle=”font-size:small;color:white;”>
<af:inputText id=”pt_it2″ simple=”true”
value=”#{o_w_s_l_LoginBackingBean.password}”
columns=”15″ secret=”true”/>
</af:panelLabelAndMessage>
</af:panelFormLayout>
<af:spacer width=”3″ height=”3″ id=”pt_s2″/>
<af:panelGroupLayout id=”pt_pgl14″ layout=”horizontal”
halign=”end”>
<af:commandLink id=”pt_logincb” text=”#{portalResource[‘login’]}”
action=”#{o_w_s_l_LoginBackingBean.doLogin}”
inlineStyle=”font-size:small;color:white;”/>
<af:spacer id=”pt_s3″ width=”5px”/>
</af:panelGroupLayout>
</af:subform>
</cust:panelCustomizable>
</f:facet>
</af:panelBorderLayout>
<!– (3) navbar (Home node, Page Hierarchy Nodes, Sub-level Nodes etc –> <cust:panelCustomizable id=”pt_pc4″ styleClass=”nav-table-wrap”

rendered=”#{!composerContext.inEditMode and attrs.showNavigation and !attrs.isEditingTemplate}”>
<af:subform id=”pt_sfm1″>
<af:panelGroupLayout id=”pt_pgl3″ layout=”horizontal”
styleClass=”nav-table”>
<!– iterate over navigation items –>
<af:forEach var=”node” varStatus=”vs”
items=”#{navigationContext.defaultNavigationModel.listModel[‘startNode=/, includeStartNode=false’]}”>
<af:panelList id=”pt_pl1″ clientComponent=”true”>
<af:group id=”pt_g1″>
<af:switcher id=”pt_sw1″
facetName=”#{empty node2.children ? ‘command’ : ‘golink’}”>
<f:facet name=”command”>
<af:commandLink id=”pt_cl1″
text=”#{node.title}”
action=”pprnav”
disabled=”#{not empty node.children}”
actionListener=”#{navigationContext.processAction}”>
<!– pass node to processAction for setting current selection and navigation –>
<f:attribute name=”node” value=”#{node}”/>
<!–<af:showPopupBehavior popupId=”menuPopup”
align=”afterStart”
triggerType=”mouseOver”/>–>
<!–<c:if test=”${node.attributes[‘Target’] == ‘_popup’}”>
<af:clientAttribute name=”modelPath”
value=”#{node.navigationModel.metadataId}”/>
<af:clientAttribute name=”selectedPrettyUrl”
value=”#{node.prettyUrl}”/>
<af:clientAttribute name=”selectedTitle”
value=”#{node.title}”/>
–>
<!–<af:showPopupBehavior popupId=”::rendererPopup”
triggerType=”action”/>–>
<!–
</c:if>–>
</af:commandLink>
</f:facet>
<f:facet name=”golink”>
<af:goLink id=”pt_gl1″ text=”#{node.title}”
destination=”#{node.goLinkPrettyUrl}”
targetFrame=”#{node.attributes[‘Target’]}”
disabled=”#{not empty node.children}”
>
<!–<af:showPopupBehavior popupId=”menuPopup”
align=”afterStart”
triggerType=”mouseOver”/>–>
</af:goLink>
</f:facet>
</af:switcher>
<af:panelGroupLayout id=”pt_pgl5″ layout=”vertical” styleClass=”sub-nav-wrap”>
<af:forEach var=”node2″ varStatus=”vs2″
items=”#{node.children}”>
<af:panelList id=”pt_pl2″ clientComponent=”true”>
<af:group id=”pt_g3″>
<af:switcher id=”pt_sw2″
facetName=”#{(empty node2.children) ? ‘command’ : ‘golink’}”>
<f:facet name=”command”>
<af:commandLink id=”pt_cl2″ text=”#{node2.title}”
action=”pprnav”
disabled=”#{not empty node2.children}”
actionListener=”#{navigationContext.processAction}”>
<!– pass node to processAction for setting current selection and navigation –>
<f:attribute name=”node” value=”#{node2}”/>
<!–<af:showPopupBehavior popupId=”menuPopup1″
align=”afterStart”
triggerType=”mouseOver”/>–>
<!–<c:if test=”${node2.attributes[‘Target’] == ‘_popup’}”>
<af:clientAttribute name=”modelPath”
value=”#{node2.navigationModel.metadataId}”/>
<af:clientAttribute name=”selectedPrettyUrl”
value=”#{node2.prettyUrl}”/>
<af:clientAttribute name=”selectedTitle”
value=”#{node2.title}”/>
–>
<!–<af:showPopupBehavior popupId=”::rendererPopup”
triggerType=”action”/>–>
<!–
</c:if>–>
</af:commandLink>
</f:facet>
<f:facet name=”golink”>
<af:goLink id=”pt_gl2″ text=”#{node2.title}”
destination=”#{node2.goLinkPrettyUrl}”
targetFrame=”#{node2.attributes[‘Target’]}”
disabled=”#{not empty node.children}”
>
<!–<af:showPopupBehavior popupId=”menuPopup1″
align=”afterStart”
triggerType=”mouseOver”/–>
</af:goLink>
</f:facet>
</af:switcher>
<!—Start–>
<af:panelList id=”pt_pl3″ clientComponent=”true”>
<af:forEach var=”node3″ varStatus=”vs3″
items=”#{node2.children}”>
<af:switcher id=”pt_s5″
facetName=”#{(empty node3.children) ? ‘command’ : ‘golink’}”>
<f:facet name=”command”>
<af:commandLink id=”pt_cl3″
text=”#{node3.title}”
action=”pprnav”
disabled=”#{not empty node3.children}”
actionListener=”#{navigationContext.processAction}”>
<!– pass node to processAction for setting current selection and navigation –>
<f:attribute name=”node” value=”#{node3}”/>
<!–<c:if test=”${node3.attributes[‘Target’] == ‘_popup’}”>
<af:clientAttribute name=”modelPath”
value=”#{node3.navigationModel.metadataId}”/>
<af:clientAttribute name=”selectedPrettyUrl”
value=”#{node3.prettyUrl}”/>
<af:clientAttribute name=”selectedTitle”
value=”#{node3.title}”/>
–>
<!–<af:showPopupBehavior popupId=”::rendererPopup”
triggerType=”action”/>–>
<!–
</c:if>–>
</af:commandLink>
</f:facet>
<f:facet name=”golink”>
<af:goLink id=”pt_gl3″ text=”#{node3.title}”
destination=”#{node3.goLinkPrettyUrl}”
targetFrame=”#{node3.attributes[‘Target’]}”
disabled=”#{not empty node3.children}”
/>
</f:facet>
</af:switcher>
</af:forEach>
</af:panelList>
</af:group>
</af:panelList>
</af:forEach>
</af:panelGroupLayout>
<!—End–>
</af:group>
</af:panelList>
</af:forEach>
</af:panelGroupLayout>
</af:subform>
</cust:panelCustomizable>
<af:popup id=”rendererPopup” contentDelivery=”lazyUncached”

launcherVar=”source” eventContext=”launcher”>
<af:setPropertyListener from=”#{source.attributes.modelPath}”
to=”#{viewScope.modelPath}”
type=”popupFetch”/>
<af:setPropertyListener from=”#{source.attributes.selectedPrettyUrl}”
to=”#{viewScope.selectedPrettyUrl}”
type=”popupFetch”/>
<af:setPropertyListener from=”#{source.attributes.selectedTitle}”
to=”#{viewScope.selectedTitle}”
type=”popupFetch”/>
<af:dialog id=”pt_d1″ title=”#{viewScope.selectedTitle}” type=”cancel”
cancelTextAndAccessKey=”Close”>
<af:region value=”#{bindings.navigationrenderer1.regionModel}”
id=”pt_r1″/>
</af:dialog>
</af:popup>
<!– (4) content –>
<af:facetRef facetName=”content”/>
<!– (5) footer –>
<af:panelGroupLayout id=”pt_pgl15″ layout=”vertical”
rendered=”#{!composerContext.inEditMode or facesContext.viewRoot.viewId == ‘/oracle/webcenter/siteresources/scopedMD/s8bba98ff_4cbb_40b8_beee_296c916a23ed/siteTemplate/gsr395559d2_16dc_4c21_89f8_f62c184d3bbc/Container.jspx’}”>
<af:spacer id=”pt_sp8″ height=”3px”/>
<af:outputText id=”pt_ot5″
value=”#{portalResource[‘copyright’]}”/>
</af:panelGroupLayout>
</af:panelGroupLayout>
</af:panelGroupLayout>
<af:xmlContent>
<component xmlns=”http://xmlns.oracle.com/adf/faces/rich/component”&gt;
<display-name>Globe Page Template</display-name>
<facet>
<description>Facet for content</description>
<facet-name>content</facet-name>
</facet>
<attribute>
<attribute-name>contentWidth</attribute-name>
<attribute-class>java.lang.String</attribute-class>
<default-value>1001px</default-value>
</attribute>
<attribute>
<attribute-name>showNavigation</attribute-name>
<attribute-class>java.lang.Boolean</attribute-class>
<default-value>#{true}</default-value>
</attribute>
<attribute>
<attribute-name>showGreetings</attribute-name>
<attribute-class>java.lang.Boolean</attribute-class>
<default-value>#{securityContext.authenticated}</default-value>
</attribute>
<attribute>
<attribute-name>showLogin</attribute-name>
<attribute-class>java.lang.Boolean</attribute-class>
<default-value>#{true}</default-value>
</attribute>
<attribute>
<attribute-name>showAdmin</attribute-name>
<attribute-class>java.lang.Boolean</attribute-class>
<default-value>#{securityContext.authenticated}</default-value>
</attribute>
<attribute>
<attribute-name>isAdminPage</attribute-name>
<attribute-class>java.lang.Boolean</attribute-class>
<default-value>#{false}</default-value>
</attribute>
<attribute>
<attribute-name>isEditingTemplate</attribute-name>
<attribute-class>java.lang.Boolean</attribute-class>
<default-value>#{false}</default-value>
</attribute>
</component>
</af:xmlContent>
</af:pageTemplateDef>
</jsp:root>

Enjoy….

How to deploy Webcenter Framework Applications in Webcenter PS6 11.1.1.8

Portal Framework applications and Portlet Producer applications must not be deployed to any of the default servers i.e.

a. AdminServer

b. WC_Spaces

c. WC_Portlet

d. WC_Collaboration

e. WC_Utilities

To deploy these applications, you must create the following custom managed servers:

■ WC_CustomPortal
This is a custom portal managed server that hosts Portal Framework applications. For deploying your Portal Framework applications, you must create this custom managed server by extending your domain with the oracle.wc_custom_portal_template_11.1.1.jar template.

Reference – Oracle® Fusion Middleware – Installation Guide for Oracle WebCenter Portal 11g Release 1 (11.1.1.8.0)

Step 1, run config.bat to extend weblogic domain

Step 2, select template from <middlewarehome>\<webcenterhomw>\common\templates\applications\oracle.wc_custom_portal_template_11.1.1.jar as below,

custom

Step 3, Specify default password for newly created datasources

Step 4, Check Admin and Managed Server-> add WC_CustomPortal to Machine if you have created.

Step 5, follow default wherever i have not specified anything and done.