CreatePageFromZip.xml

+

Search Tips   |   Advanced Search

 

<?xml version="1.0" encoding="UTF-8"?>

<request
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:noNamespaceSchemaLocation="PortalConfig_8.0.0.xsd"
    type="update"
    create-oids="true">

    <!-- Sample for creating a page containing an existing portlet. 
         This sample is very similar to DeployPortlet; the difference is that the portlet
         is not deployed (update actions) but only found (locate action).
         This sample also demonstrates how to set the skin for the new portlet and how 
         NLS settings (page title and description) can be read from property files. -->
    <portal action="locate">
        
        <!-- uid must match uid attribute of portlet-app in portlet.xml -->
        <web-app action="locate" uid="com.ibm.wps.cp.portlet.tagcloud.webmod">
           <!-- uid must match uid attribute of concrete-portlet-app in portlet.xml -->
           <portlet-app action="locate" uid="com.ibm.wps.cp.portlet.tagcloud">
                <!-- name must match content of portlet-name subtag  of concrete-portlet in portlet.xml -->
                <portlet action="locate" objectid="theExamplePortlet" name="Tag Cloud">
                </portlet>
            </portlet-app>
        </web-app>

        <!-- Parent element under which the new page is inserted -->
        <content-node action="locate" objectid="parentPage" uniquename="ibm.portal.Home"/>

        <!-- Note that the preceding elements are needed because the XML request uses ID generating mode
             and the new page must refer to the portlet and the parent place, so the object IDs
             thePortlet and wps.content.root.My_Portal must be defined.
             If we use ID preserving mode and have the correct objectid values for these two resources,
             you do not need to locate them. -->
        
        <!-- The new page. contentparentref attribute must match the objectid of the parent. 
             Change the uniquename attribute to create another page. -->
        <content-node action="update" active="true" allportletsallowed="true" content-parentref="parentPage" create-type="explicit" domain="rel" ordinal="last" type="staticpage" uniquename="ibm.portal.ssa.SamplePage.2">
            <localedata locale="en" prefix="page.sample">
                <url>file:///$server_root$/base/wp.xml/doc/xml-samples/pagetitles_en.properties</url>
            </localedata>
            <localedata locale="de" prefix="page.sample">
                <url>file:///$server_root$/base/wp.xml/doc/xml-samples/pagetitles_de.properties</url>
            </localedata>
            <!-- The content of static page in binary format 
                 attribute markup can be set to one of portal server supported markups
                 attribute display-option can be set to "inline" or "iframe" or "ajax".-->
            <pagecontents markup="html" display-option="inline">
                <url>file:///$server_root$/base/wp.xml/doc/xml-samples/index1.zip</url>
            </pagecontents>
            <parameter name="com.ibm.portal.bookmarkable" type="string" update="set"><![CDATA[Yes]]></parameter>
            <parameter name="com.ibm.portal.friendly.name" type="string" update="set"><![CDATA[staticpage2]]></parameter>
            <!-- this parameter must match the name of static page -->
            <parameter name="com.ibm.portal.static.page.file.name.html" type="string" update="set"><![CDATA[index.html]]></parameter>
            <access-control externalized="false" owner="uid=wpsadmin,o=defaultwimfilebasedrealm" private="false"/>
            <component action="update" active="true" domain="rel" ordinal="100" orientation="V" type="container">
                <component action="update" active="true" domain="rel" ordinal="100" orientation="V" type="container"/>
                <component action="update" active="true" domain="rel" ordinal="100" orientation="H" type="container">
                    <!-- this parameter must match the portlet-container name in the static page -->
                    <parameter name="com.ibm.portal.layoutnode.localname" type="string" update="set"><![CDATA[portletContainer1]]></parameter>
                    <component action="update" active="true" domain="rel" ordinal="100" type="control">
                        <!-- this parameter must match the portlet-window name in the static page -->
                        <parameter name="com.ibm.portal.layoutnode.localname" type="string" update="set"><![CDATA[portletWindow1]]></parameter>
                        <portletinstance action="update" domain="rel" portletref="theExamplePortlet" />
                    </component>
                </component>
            </component>
        </content-node>
    </portal>
</request>