gatein SVN: r3777 - portal/branches.
by do-not-reply@jboss.org
Author: trong.tran
Date: 2010-08-09 07:13:54 -0400 (Mon, 09 Aug 2010)
New Revision: 3777
Added:
portal/branches/branched-r3776/
Log:
branch created from gatein trunk rev number 3776
Copied: portal/branches/branched-r3776 (from rev 3776, portal/trunk)
13 years, 11 months
gatein SVN: r3776 - portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest.
by do-not-reply@jboss.org
Author: hangnguyen
Date: 2010-08-09 06:58:19 -0400 (Mon, 09 Aug 2010)
New Revision: 3776
Added:
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_34_ChangeContainerWhenEditPropertiesOfNodeInPortalNavigation.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_35_ChangeApplicationWhenEditPropertiesOfNodeInPortalNavigation.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_45_ManageNodeGroup.html.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_46_MoreActionOnNodeInEditNavigationOfGroup.html.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_47_EditNodePagePropertiesForGroup.html.html
Log:
TESTVN-1006: Create new GateIn Selenium scripts
Added: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_34_ChangeContainerWhenEditPropertiesOfNodeInPortalNavigation.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_34_ChangeContainerWhenEditPropertiesOfNodeInPortalNavigation.html (rev 0)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_34_ChangeContainerWhenEditPropertiesOfNodeInPortalNavigation.html 2010-08-09 10:58:19 UTC (rev 3776)
@@ -0,0 +1,577 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="http://localhost:8080/portal" />
+<title>Test_SNF_PRL_34_ChangeContainerWhenEditPropertiesOfNodeInPortalNavigation</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Test_SNF_PRL_34_ChangeContainerWhenEditPropertiesOfNodeInPortalNavigation</td></tr>
+</thead><tbody>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Edit Node page's properties in portal navigation--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>windowMaximize</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Add new node for portal --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Site</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Add Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Add Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>name</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>name</td>
+ <td>Test_SNF_PRL_34</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>label</td>
+ <td>Test_SNF_PRL_34</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[2]/div/div/div/div/div/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Page Selector--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[2]/div/div/div/div/div/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Search and Select Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Search and Select Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//img[@title='Select Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//img[@title='Select Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Save to finish create new node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- View new node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='PortalNavigationTopContainer']/div[3]/div/div/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='PortalNavigationTopContainer']/div[3]/div/div/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>Test_SNF_PRL_34</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>Test_SNF_PRL_34</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Change container when edit page properties of node --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Site</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[8]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[8]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_34']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_34']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Node's Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Node's Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>pause</td>
+ <td>1000</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- View layout of node before Change container--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementNotPresent</td>
+ <td>css= div[@id="UIPortalApplication"]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyElementNotPresent</td>
+ <td>css= div[@id="UIPortalApplication"]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Change container--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIPortalComposerTab']/div[1]/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIPortalComposerTab']/div[1]/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='oneRow']/div</td>
+ <td>//div[2]/div/div/div/div/div/div[2]/div/div/div/div/div[1]/div/div/div[1]/div/div/div/div[1]/div</td>
+</tr>
+<tr>
+ <td>dragAndDropToObject</td>
+ <td>//div[@id='oneRow']/div</td>
+ <td>//div[2]/div/div/div/div/div/div[2]/div/div/div/div/div[1]/div/div/div[1]/div/div/div/div[1]/div</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>UIPortalApplication</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyElementPresent</td>
+ <td>UIPortalApplication</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Edit container --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseOver</td>
+ <td>//div/div/div[2]/div/div/div/div/div/div/a[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div/div/div[2]/div/div/div/div/div/div/a[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>title</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>title</td>
+ <td>Test_SNF_PRL_34</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>width</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>width</td>
+ <td>300px</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>height</td>
+ <td>100px</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>height</td>
+ <td>100px</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Move position of container --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseOver</td>
+ <td>//div/div/div[2]/div/div/div/div/div/div/div[2]</td>
+ <td>Test_SNF_PRL_34</td>
+</tr>
+<tr>
+ <td>dragAndDropToObject</td>
+ <td>//div/div/div[2]/div/div/div[2]/div/div/div/div/div/div/div</td>
+ <td>//div[@class='LAYOUT-BLOCK LAYOUT-PORTLET']</td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- View after change position of container --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete container --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseOver</td>
+ <td>//div[2]/div/div/div/div[2]/div/div/div[2]/div/div/div/div/div/div/div[2]</td>
+ <td>Test_SNF_PRL_34</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[2]/div/div/div/div[2]/div/div/div[2]/div/div/div/div/div/div/a[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[2]/div/div/div/div[2]/div/div/div[2]/div/div/div/div/div/div/a[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Are you sure you want to delete this Container?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIPageEditor']/div[1]/div/div/div/a[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIPageEditor']/div[1]/div/div/div/a[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Close Navigation Management form --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- View node after change container --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='PortalNavigationTopContainer']/div[3]/div/div/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete this node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Site</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[8]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[8]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>pause</td>
+ <td>1000</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_34']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_34']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Are you sure you want to delete this node?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementNotPresent</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_34']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
Added: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_35_ChangeApplicationWhenEditPropertiesOfNodeInPortalNavigation.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_35_ChangeApplicationWhenEditPropertiesOfNodeInPortalNavigation.html (rev 0)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_35_ChangeApplicationWhenEditPropertiesOfNodeInPortalNavigation.html 2010-08-09 10:58:19 UTC (rev 3776)
@@ -0,0 +1,667 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="http://localhost:8080/portal" />
+<title>Test_SNF_PRL_35_ChangeApplicationWhenEditPropertiesOfNodeInPortalNavigation</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Test_SNF_PRL_35_ChangeApplicationWhenEditPropertiesOfNodeInPortalNavigation</td></tr>
+</thead><tbody>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Edit Node page's properties in portal navigation--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>windowMaximize</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Add new node for portal --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Site</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Add Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Add Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>name</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>name</td>
+ <td>Test_SNF_PRL_35</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>label</td>
+ <td>Test_SNF_PRL_35</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[2]/div/div/div/div/div/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Page Selector--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[2]/div/div/div/div/div/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Search and Select Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Search and Select Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//img[@title='Select Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//img[@title='Select Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Save to finish create new node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- View new node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='PortalNavigationTopContainer']/div[3]/div/div/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='PortalNavigationTopContainer']/div[3]/div/div/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>Test_SNF_PRL_35</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>Test_SNF_PRL_35</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Change application when edit page properties of node --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Site</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[8]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[8]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_35']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_35']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Node's Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Node's Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>pause</td>
+ <td>1000</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- View layout of node before Change application--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementNotPresent</td>
+ <td>css= div[@id="UIPortalApplication"]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyElementNotPresent</td>
+ <td>css= div[@id="UIPortalApplication"]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Drag & drop applcation in portal--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='Gadgets/Calculator']/div/div/div[1]/div[1]</td>
+ <td>UIPortalApplication</td>
+</tr>
+<tr>
+ <td>dragAndDropToObject</td>
+ <td>//div[@id='Gadgets/Calculator']/div/div/div[1]/div[1]</td>
+ <td>UIPortalApplication</td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- View application after drag & drop in portal--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>UIPortalApplication</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyElementPresent</td>
+ <td>UIPortalApplication</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Return to normal view --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Edit application --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseOver</td>
+ <td>//div/div/div[2]/div/div/div/div/div/div/div[2]</td>
+ <td>Calculator</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div/div/div[2]/div/div/div/div/div/div/a[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div/div/div[2]/div/div/div/div/div/div/a[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>title</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>title</td>
+ <td>Test_SNF_PRL_35</td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose Select Icon tab --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIMaskWorkspace']/div[2]/div/div/div/div/div/div/div[1]/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIMaskWorkspace']/div[2]/div/div/div/div/div/div/div[1]/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//form[@id='UIPortletForm']/div[3]/div/div/div[2]/div[2]/div/a[1]/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//form[@id='UIPortletForm']/div[3]/div/div/div[2]/div[2]/div/a[1]/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose Decoration Themes--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIMaskWorkspace']/div[2]/div/div/div/div/div/div/div[1]/div/div/div/div/div[3]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIMaskWorkspace']/div[2]/div/div/div/div/div/div/div[1]/div/div/div/div/div[3]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIItemThemeSelector']/div[2]/div[1]/div/div[2]/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIItemThemeSelector']/div[2]/div[1]/div/div[2]/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save And Close</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save And Close</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- View after change something in application --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>Test_SNF_PRL_35</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>Test_SNF_PRL_35</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Return to normail view --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Move position of application --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseOver</td>
+ <td>//div/div/div[2]/div/div/div/div/div/div/div[2]</td>
+ <td>Test_SNF_PRL_35</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[1]/div/div[2]/div/div/div[2]/div/div/div/div/div/div/div[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>dragAndDropToObject</td>
+ <td>css=div[class='DragControlArea']</td>
+ <td>//html/body/div/div[2]/div/div[2]/div/div/div/div/div/div[2]/div/div/div/div/div/div/div/div[2]/div</td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- View after change position of application --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>UIPortalApplication</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>UIPortalApplication</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Switch View mode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete application --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseOver</td>
+ <td>//div[2]/div/div[2]/div/div/div[2]/div/div/div/div/div/div/div[2]</td>
+ <td>Test_SNF_PRL_35</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[2]/div/div[2]/div/div/div[2]/div/div/div/div/div/div/a[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[2]/div/div[2]/div/div/div[2]/div/div/div/div/div/div/a[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Are you sure you want to delete this portlet?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIPageEditor']/div[1]/div/div/div/a[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIPageEditor']/div[1]/div/div/div/a[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Close Navigation Management form --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- View node after change application --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='PortalNavigationTopContainer']/div[3]/div/div/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete this node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Site</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[8]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[8]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>pause</td>
+ <td>1000</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_35']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_35']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Are you sure you want to delete this node?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementNotPresent</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_35']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
Added: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_45_ManageNodeGroup.html.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_45_ManageNodeGroup.html.html (rev 0)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_45_ManageNodeGroup.html.html 2010-08-09 10:58:19 UTC (rev 3776)
@@ -0,0 +1,442 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>Test_SNF_PRL_45_ManageNodeGroup</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Test_SNF_PRL_45_ManageNodeGroup</td></tr>
+</thead><tbody>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Manage node for group --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>windowMaximize</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Group</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Edit Navigation --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Add new node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Add Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Add Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>name</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>name</td>
+ <td>Test_SNF_PRL_45</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>label</td>
+ <td>Test_SNF_PRL_45</td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose Page Selector tab --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[2]/div/div/div/div/div/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[2]/div/div/div/div/div/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Select a page for ndoe--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Search and Select Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Search and Select Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//tr[2]/td[5]/div/img</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//tr[2]/td[5]/div/img</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Click Save to close Navigation Management form--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- View new node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Test_SNF_PRL_45</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Test_SNF_PRL_45</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>Test_SNF_PRL_45</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>Test_SNF_PRL_45</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Edit this node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Group</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>pause</td>
+ <td>2000</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[2]/div/div/div[3]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[2]/div/div/div[3]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_45']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_45']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit this Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit this Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>pause</td>
+ <td>2000</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>label</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>label</td>
+ <td>Test_SNF_PRL_45_edit</td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose Page Selector tab --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[2]/div/div/div/div/div/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[2]/div/div/div/div/div/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose new page for this node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Search and Select Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Search and Select Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIRepeater']/table/tbody/tr[4]/td[5]/div/img</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIRepeater']/table/tbody/tr[4]/td[5]/div/img</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Close navigation Management form --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- View page after edited --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Test_SNF_PRL_45_edit</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Test_SNF_PRL_45_edit</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>Test_SNF_PRL_45_edit</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>Test_SNF_PRL_45_edit</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Group</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Group</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>pause</td>
+ <td>2000</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[3]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[3]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_45_edit']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_45_edit']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Are you sure you want to delete this node?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
Added: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_46_MoreActionOnNodeInEditNavigationOfGroup.html.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_46_MoreActionOnNodeInEditNavigationOfGroup.html.html (rev 0)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_46_MoreActionOnNodeInEditNavigationOfGroup.html.html 2010-08-09 10:58:19 UTC (rev 3776)
@@ -0,0 +1,587 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>Test_SNF_PRL_46_MoreActionOnNodeInEditNavigationOfGroup</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Test_SNF_PRL_46_MoreActionOnNodeInEditNavigationOfGroup</td></tr>
+</thead><tbody>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- More action on node in edit navigation of group --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>windowMaximize</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Group</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Add new node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Add Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Add Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>name</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>name</td>
+ <td>Test_SNF_PRL_46</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>label</td>
+ <td>Test_SNF_PRL_46</td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose Page Selector--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[2]/div/div/div/div/div/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[2]/div/div/div/div/div/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Search and Select Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Search and Select Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//tr[2]/td[5]/div/img</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//tr[2]/td[5]/div/img</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Copy node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Test_SNF_PRL_46</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Test_SNF_PRL_46</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_46']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_46']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Copy Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Copy Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- paste node to new place--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[2]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[2]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Organization']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Organization']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='NavigationNodePopupMenu']/div/div[2]/div/div/div[7]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='NavigationNodePopupMenu']/div/div[2]/div/div/div[7]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Cut node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[3]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[3]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_46']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_46']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[5]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[5]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- paste node to new place--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[2]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[2]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[2]/div[2]/div[1]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[2]/div[2]/div[1]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='New Staff']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='New Staff']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//html/body/div/div[2]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div/div/div/div/div[4]/div/div/div/div/div/div/div/div/div/div/div/div[4]/div/div[2]/div/div/div/div/div/div/div[2]/div[3]/div/div/div/div/div/div/div/div[2]/div/div/div[7]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//html/body/div/div[2]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div/div/div/div/div[4]/div/div/div/div/div/div/div/div/div/div/div/div[4]/div/div[2]/div/div/div/div/div/div/div[2]/div[3]/div/div/div/div/div/div/div/div[2]/div/div/div[7]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Clone node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Test_SNF_PRL_46</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Test_SNF_PRL_46</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_46']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_46']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Clone Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Clone Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[1]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[1]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@class='HomeNode']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//div[@class='HomeNode']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Paste Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Paste Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Move node up</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[3]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[3]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Test_SNF_PRL_46</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_46']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//div[@id='UINavigationNodeSelector']//div[@id='NavigationNodePopupMenu']//a[@class='ItemIcon MoveUp16x16Icon']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//div[@id='UINavigationNodeSelector']//div[@id='NavigationNodePopupMenu']//a[@class='ItemIcon MoveUp16x16Icon']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Move node down</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_46']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//div[@id='UINavigationNodeSelector']//div[@id='NavigationNodePopupMenu']//a[@class='ItemIcon MoveDown16x16Icon']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//div[@id='UINavigationNodeSelector']//div[@id='NavigationNodePopupMenu']//a[@class='ItemIcon MoveDown16x16Icon']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete node is cloned --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Test_SNF_PRL_46</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Test_SNF_PRL_46</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_46']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_46']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Are you sure you want to delete this node?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete node is copied--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[2]/div[2]/div[1]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[2]/div[2]/div[1]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[2]/div/div/div[2]/div[2]/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[2]/div/div/div[2]/div[2]/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_46']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_46']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Are you sure you want to delete this node?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete node clone-</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[1]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[1]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Test_SNF_PRL_46</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Test_SNF_PRL_46</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_46']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_46']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Are you sure you want to delete this node?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
Added: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_47_EditNodePagePropertiesForGroup.html.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_47_EditNodePagePropertiesForGroup.html.html (rev 0)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_47_EditNodePagePropertiesForGroup.html.html 2010-08-09 10:58:19 UTC (rev 3776)
@@ -0,0 +1,532 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="http://localhost:8080/portal" />
+<title>Test_SNF_PRL_47_EditNodePagePropertiesForGroup.html</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Test_SNF_PRL_47_EditNodePagePropertiesForGroup.html</td></tr>
+</thead><tbody>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Edit Node page's properties in group navigation--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>windowMaximize</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Add new node for group --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Group</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Add Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Add Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>name</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>name</td>
+ <td>Test_SNF_PRL_47</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>label</td>
+ <td>Test_SNF_PRL_47</td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Page Selector--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[2]/div/div/div/div/div/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[2]/div/div/div/div/div/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Search and Select Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Search and Select Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//img[@title='Select Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//img[@title='Select Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Save to finish create new node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- View new node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[4]/div[2]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[4]/div[2]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>Test_SNF_PRL_47</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>Test_SNF_PRL_47</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Edit node's page by check show max windown--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Group</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Group</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[2]/div/div/div[3]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[2]/div/div/div[3]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_47']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_47']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>pause</td>
+ <td>1000</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Node's Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Node's Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- View page properties--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>pause</td>
+ <td>1000</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=View Page properties</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=View Page properties</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//input[@class='checkbox']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>check</td>
+ <td>xpath=//input[@class='checkbox']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Click Finish edit node's page--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//a[@class='EdittedSaveButton']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//a[@class='EdittedSaveButton']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Test_SNF_PRL_47</td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertLocation</td>
+ <td>http://localhost:8080/portal/private/classic/Test_SNF_PRL_47</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Edit node's page by un-check show max windown--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Group</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[3]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[3]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_47']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_47']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>pause</td>
+ <td>1000</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Node's Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Node's Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- View page properties--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=View Page properties</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=View Page properties</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>showMaxWindow</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>showMaxWindow</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Click Finish edit node's page--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//a[@class='EdittedSaveButton']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//a[@class='EdittedSaveButton']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Test_SNF_PRL_47</td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertLocation</td>
+ <td>http://localhost:8080/portal/private/classic/Test_SNF_PRL_47</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete this node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Group</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[3]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[3]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>pause</td>
+ <td>1000</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_47']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_47']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Are you sure you want to delete this node?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementNotPresent</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_47']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
13 years, 11 months
gatein SVN: r3775 - components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer.
by do-not-reply@jboss.org
Author: chris.laprun(a)jboss.com
Date: 2010-08-09 05:35:02 -0400 (Mon, 09 Aug 2010)
New Revision: 3775
Modified:
components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer/PortletManagementHandler.java
Log:
- Minor: no need to create a logger per class instance.
Modified: components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer/PortletManagementHandler.java
===================================================================
--- components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer/PortletManagementHandler.java 2010-08-09 07:01:37 UTC (rev 3774)
+++ components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer/PortletManagementHandler.java 2010-08-09 09:35:02 UTC (rev 3775)
@@ -25,7 +25,6 @@
import com.google.common.collect.HashMultimap;
import com.google.common.collect.Multimap;
-
import org.gatein.common.NotYetImplemented;
import org.gatein.common.i18n.LocalizedString;
import org.gatein.common.logging.Logger;
@@ -66,13 +65,13 @@
import org.oasis.wsrp.v2.GetPortletDescription;
import org.oasis.wsrp.v2.GetPortletProperties;
import org.oasis.wsrp.v2.GetPortletPropertyDescription;
+import org.oasis.wsrp.v2.GetPortletsLifetime;
+import org.oasis.wsrp.v2.GetPortletsLifetimeResponse;
import org.oasis.wsrp.v2.ImportPortlet;
import org.oasis.wsrp.v2.ImportPortlets;
import org.oasis.wsrp.v2.ImportPortletsFailed;
import org.oasis.wsrp.v2.ImportPortletsResponse;
import org.oasis.wsrp.v2.ImportedPortlet;
-import org.oasis.wsrp.v2.GetPortletsLifetime;
-import org.oasis.wsrp.v2.GetPortletsLifetimeResponse;
import org.oasis.wsrp.v2.InconsistentParameters;
import org.oasis.wsrp.v2.InvalidHandle;
import org.oasis.wsrp.v2.InvalidRegistration;
@@ -120,13 +119,12 @@
private static final String GET_PORTLET_PROPERTIES = "GetPortletProperties";
private static final String PORTLET_CONTEXT = "PortletContext";
private static final String GET_PORTLET_DESCRIPTION = "GetPortletDescription";
-
- private final Logger log;
+ private static final Logger log = LoggerFactory.getLogger(PortletManagementHandler.class);
+
PortletManagementHandler(WSRPProducerImpl producer)
{
super(producer);
- log = LoggerFactory.getLogger(PortletManagementHandler.class);
}
public PortletDescriptionResponse getPortletDescription(GetPortletDescription getPortletDescription)
@@ -268,7 +266,7 @@
failedPortlets = new ArrayList<FailedPortlets>(reasonToHandles.size());
for (String reason : reasonToHandles.keys())
{
- failedPortlets.add(WSRPTypeFactory.createFailedPortlets(reasonToHandles.get(reason),ErrorCodes.Codes.OPERATIONFAILED, reason));
+ failedPortlets.add(WSRPTypeFactory.createFailedPortlets(reasonToHandles.get(reason), ErrorCodes.Codes.OPERATIONFAILED, reason));
}
}
else
@@ -469,22 +467,22 @@
}
public ExportPortletsResponse exportPortlets(ExportPortlets exportPortlets) throws AccessDenied,
- ExportByValueNotSupported, InconsistentParameters, InvalidHandle, InvalidRegistration, InvalidUserCategory,
- MissingParameters, ModifyRegistrationRequired, OperationFailed, OperationNotSupported, ResourceSuspended
+ ExportByValueNotSupported, InconsistentParameters, InvalidHandle, InvalidRegistration, InvalidUserCategory,
+ MissingParameters, ModifyRegistrationRequired, OperationFailed, OperationNotSupported, ResourceSuspended
{
WSRP2ExceptionFactory.throwMissingParametersIfValueIsMissing(exportPortlets, "ExportPortlets", "ExportPortlets");
-
+
List<PortletContext> portletContexts = exportPortlets.getPortletContext();
if (portletContexts == null || portletContexts.isEmpty())
{
throw WSRP2ExceptionFactory.createWSException(MissingParameters.class, "Missing required portletContext in ExportPortlets.", null);
- }
-
+ }
+
Registration registration = producer.getRegistrationOrFailIfInvalid(exportPortlets.getRegistrationContext());
-
+
UserContext userContext = exportPortlets.getUserContext();
checkUserAuthorization(userContext);
-
+
boolean exportByValueRequired;
if (exportPortlets.isExportByValueRequired() != null)
{
@@ -494,35 +492,35 @@
{
exportByValueRequired = false;
}
-
-
+
+
//check that the export manager can handle export by value
if (exportByValueRequired && !producer.getExportManager().supportExportByValue())
{
//TODO: instead of passing a string here, we should pass a resource so that its localized
WSRP2ExceptionFactory.throwWSException(ExportByValueNotSupported.class, "The consumer is requesting portlets to be exported by value, but this consumer only supports export by reference.", null);
}
-
-
+
+
List<ExportedPortlet> exportedPortlets = new ArrayList<ExportedPortlet>();
Map<String, FailedPortlets> failedPortletsMap = new HashMap<String, FailedPortlets>();
-
+
try
{
RegistrationLocal.setRegistration(registration);
-
+
//TODO: try catch here?
ExportContext exportContext = producer.getExportManager().createExportContext(exportByValueRequired, exportPortlets.getLifetime());
-
+
for (PortletContext portletContext : exportPortlets.getPortletContext())
{
try
{
byte[] exportData;
-
+
String portletHandle = portletContext.getPortletHandle();
byte[] portletState = portletContext.getPortletState();
-
+
if (portletHandle != null)
{
org.gatein.pc.api.PortletContext portalPC = WSRPUtils.convertToPortalPortletContext(portletContext);
@@ -535,22 +533,22 @@
{
WSRP2ExceptionFactory.throwWSException(InvalidHandle.class, "A portlet handle cannot be null.", null);
}
-
+
//get the exportPortletData
ExportPortletData exportPortletData = producer.getExportManager().createExportPortletData(exportContext, portletHandle, portletState);
-
+
//Create the exportedPortlet
ExportedPortlet exportedPortlet = WSRPTypeFactory.createExportedPortlet(portletHandle, exportPortletData.encodeAsBytes());
exportedPortlets.add(exportedPortlet);
}
-
+
catch (Exception e)
{
if (log.isWarnEnabled())
{
log.warn("Error occured while trying to export a portlet.", e);
}
-
+
ErrorCodes.Codes errorCode;
String reason;
if (e instanceof NoSuchPortletException || e instanceof InvalidHandle)
@@ -563,12 +561,12 @@
errorCode = ErrorCodes.Codes.OPERATIONFAILED;
reason = "Error preparing portlet for export";
}
-
- if(!failedPortletsMap.containsKey(errorCode.name()))
+
+ if (!failedPortletsMap.containsKey(errorCode.name()))
{
List<String> portletHandles = new ArrayList<String>();
portletHandles.add(portletContext.getPortletHandle());
-
+
FailedPortlets failedPortlets = WSRPTypeFactory.createFailedPortlets(portletHandles, errorCode, reason);
failedPortletsMap.put(errorCode.name(), failedPortlets);
}
@@ -579,10 +577,10 @@
}
}
}
-
+
//TODO: handle resourceLists better (should be using for things like errors)
ResourceList resourceList = null;
-
+
return WSRPTypeFactory.createExportPortletsResponse(exportContext.encodeAsBytes(), exportedPortlets, new ArrayList<FailedPortlets>(failedPortletsMap.values()), exportContext.getLifeTime(), resourceList);
}
catch (Exception e)//TODO ADD PROPER EXCEPTION HANDLING
@@ -599,27 +597,27 @@
public ImportPortletsResponse importPortlets(ImportPortlets importPortlets) throws OperationFailed, InvalidRegistration, MissingParameters
{
WSRP2ExceptionFactory.throwOperationFailedIfValueIsMissing(importPortlets, "ImportPortlets");
-
+
List<ImportPortlet> importPortletList = importPortlets.getImportPortlet();
WSRP2ExceptionFactory.throwMissingParametersIfValueIsMissing(importPortletList, "ImportPortlet", "ImportPortlets");
-
+
Registration registration = producer.getRegistrationOrFailIfInvalid(importPortlets.getRegistrationContext());
-
+
// check if we have a valid userContext or not
UserContext userContext = importPortlets.getUserContext();
checkUserAuthorization(userContext);
-
+
try
{
RegistrationLocal.setRegistration(registration);
-
+
byte[] importContext = importPortlets.getImportContext();
-
+
Lifetime lifeTime = importPortlets.getLifetime();
-
+
List<ImportedPortlet> importedPortlets = new ArrayList<ImportedPortlet>();
Map<String, ImportPortletsFailed> failedPortletsMap = new HashMap<String, ImportPortletsFailed>();
-
+
ExportContext exportContext;
try
{
@@ -629,7 +627,7 @@
{
throw WSRPExceptionFactory.createWSException(OperationFailed.class, "Invalid ImportContext.", e);
}
-
+
for (ImportPortlet importPortlet : importPortletList)
{
try
@@ -657,7 +655,7 @@
{
log.warn("Error occured while trying to import a portlet.", e);
}
-
+
ErrorCodes.Codes errorCode;
String reason;
if (e instanceof NoSuchPortletException || e instanceof InvalidHandle)
@@ -680,12 +678,12 @@
errorCode = ErrorCodes.Codes.OPERATIONFAILED;
reason = "Error preparing portlet for export";
}
-
- if(!failedPortletsMap.containsKey(errorCode.name()))
+
+ if (!failedPortletsMap.containsKey(errorCode.name()))
{
List<String> portleIDs = new ArrayList<String>();
portleIDs.add(importPortlet.getImportID());
-
+
ImportPortletsFailed failedPortlets = WSRPTypeFactory.createImportPortletsFailed(portleIDs, errorCode, reason);
failedPortletsMap.put(errorCode.name(), failedPortlets);
}
@@ -696,9 +694,9 @@
}
}
}
-
+
ResourceList resourceList = null; //TODO: figure out what exactly should be stored in the resource list here
-
+
return WSRPTypeFactory.createImportPortletsResponse(importedPortlets, new ArrayList<ImportPortletsFailed>(failedPortletsMap.values()), resourceList);
}
finally
@@ -724,7 +722,7 @@
log.warn("Error occured while trying to perform a ReleaseExport", e);
}
}
-
+
//this method shouldn't return anything
return new ReturnAny().getExtensions();
}
@@ -732,28 +730,28 @@
public Lifetime setExportLifetime(SetExportLifetime setExportLifetime) throws OperationFailed, InvalidRegistration
{
WSRP2ExceptionFactory.throwOperationFailedIfValueIsMissing(setExportLifetime, "setExportLifetimePortlets");
-
+
byte[] exportContextBytes = setExportLifetime.getExportContext();
//NOTE: we can't throw a MissingParameterException since its not allowed as part of the spec
if (exportContextBytes == null)
{
WSRPExceptionFactory.throwWSException(OperationFailed.class, "Cannot call setExportLifetime with an empty ExportContext.", null);
}
-
+
Registration registration = producer.getRegistrationOrFailIfInvalid(setExportLifetime.getRegistrationContext());
-
+
// check if we have a valid userContext or not
UserContext userContext = setExportLifetime.getUserContext();
checkUserAuthorization(userContext);
-
+
try
{
RegistrationLocal.setRegistration(registration);
-
+
ExportContext exportContext = producer.getExportManager().createExportContext(exportContextBytes);
-
- return producer.getExportManager().setExportLifetime(exportContext,setExportLifetime.getLifetime());
-
+
+ return producer.getExportManager().setExportLifetime(exportContext, setExportLifetime.getLifetime());
+
}
catch (Exception e)
{
13 years, 11 months
gatein SVN: r3774 - in epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US: extras/Advanced_Development_JCR_cluster-config and 6 other directories.
by do-not-reply@jboss.org
Author: smumford
Date: 2010-08-09 03:01:37 -0400 (Mon, 09 Aug 2010)
New Revision: 3774
Added:
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_jbosscache-configuration-templates/default29.xml
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_jbosscache-configuration-templates/default30.xml
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_jbosscache-configuration-templates/default31.xml
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_search-configuration/default70.xml
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_search-configuration/default72.xml
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_search-configuration/default73.xml
Removed:
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_search-configuration/default72.java
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_search-configuration/default73.java
Modified:
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/Book_Info.xml
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/Revision_History.xml
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_cluster-config/default14.xml
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_cluster-config/default16.xml
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_cluster-config/default17.xml
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_cluster-config/default18.xml
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_cluster-config/default19.xml
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_jbosscache-configuration-templates/default35.xml
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/PortalDevelopment_DefaultPortalNavigationConfiguration/default144.xml
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/PortalDevelopment_Skinning/default187.xml
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/PortalDevelopment_Skinning/default188.xml
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/Foundations.xml
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/cluster-config.xml
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/configuration-persister.xml
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/configuration.xml
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/external-value-storages.xml
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/jbosscache-configuration-templates.xml
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/jdbc-data-container-config.xml
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/multilanguage-support.xml
epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/search-configuration.xml
Log:
JBEPP-370: Further clean-up of programlisting rendering
Modified: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/Book_Info.xml
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/Book_Info.xml 2010-08-09 03:37:32 UTC (rev 3773)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/Book_Info.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -9,7 +9,7 @@
<productname>JBoss Enterprise Portal Platform</productname>
<productnumber>5.0</productnumber>
<edition>1</edition>
- <pubsnumber>1.5</pubsnumber>
+ <pubsnumber>1.7</pubsnumber>
<abstract>
<para>
This Reference Guide is a high-level usage document. It deals with more advanced topics than the Installation and User Guides, adding new content or taking concepts discussed in the earlier documents further. It aims to provide supporting documentation for advanced users of the &PRODUCT; product. Its primary focus is on advanced use of the product and it assumes an intermediate or advanced knowledge of the technology and terms.
Modified: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/Revision_History.xml
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/Revision_History.xml 2010-08-09 03:37:32 UTC (rev 3773)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/Revision_History.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -8,6 +8,34 @@
<simpara>
<revhistory>
<revision>
+ <revnumber>1.7</revnumber>
+ <date>Mon Aug 9 2010</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Further clean-up of programlisting rendering.</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+ <revision>
+ <revnumber>1.6</revnumber>
+ <date>Thu Aug 5 2010</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Extracted code snippets.</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+ <revision>
<revnumber>1.5</revnumber>
<date>Thu Jul 29 2010</date>
<author>
Modified: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_cluster-config/default14.xml
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_cluster-config/default14.xml 2010-08-09 03:37:32 UTC (rev 3773)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_cluster-config/default14.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -16,7 +16,6 @@
<property name="swap-directory" value="../temp/swap/production" />
</properties>
<value-storages>
-
</value-storages>
</container>
<initializer class="org.exoplatform.services.jcr.impl.core.ScratchWorkspaceInitializer">
@@ -25,13 +24,10 @@
</properties>
</initializer>
<cache enabled="true" class="org.exoplatform.services.jcr.impl.dataflow.persistent.jbosscache.JBossCacheWorkspaceStorageCache">
-
</cache>
<query-handler class="org.exoplatform.services.jcr.impl.core.query.lucene.SearchIndex">
-
</query-handler>
<lock-manager class="org.exoplatform.services.jcr.impl.core.lock.jbosscache.CacheableLockManagerImpl">
-
</lock-manager>
</workspace>
<workspace name="ws2">
Modified: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_cluster-config/default16.xml
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_cluster-config/default16.xml 2010-08-09 03:37:32 UTC (rev 3773)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_cluster-config/default16.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -1,7 +1,8 @@
<value-storages>
<value-storage id="system" class="org.exoplatform.services.jcr.impl.storage.value.fs.TreeFileValueStorage">
<properties>
- <property name="path" value="/mnt/tornado/temp/values/production" /> <!--path within NFS where ValueStorage will hold it's data-->
+ <property name="path" value="/mnt/tornado/temp/values/production" />
+ <!--path within NFS where ValueStorage will hold it's data-->
</properties>
<filters>
<filter property-type="Binary" />
Modified: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_cluster-config/default17.xml
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_cluster-config/default17.xml 2010-08-09 03:37:32 UTC (rev 3773)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_cluster-config/default17.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -1,9 +1,12 @@
-<cache enabled="true" class="org.exoplatform.services.jcr.impl.dataflow.persistent.jbosscache.
-JBossCacheWorkspaceStorageCache">
+<cache enabled="true" class="org.exoplatform.services.jcr.impl.dataflow.persistent.jbosscache.JBossCacheWorkspaceStorageCache">
<properties>
- <property name="jbosscache-configuration" value="jar:/conf/portal/test-jbosscache-data.xml" />
- <property name="jgroups-configuration" value="jar:/conf/portal/udp-mux.xml" />
- <property name="jbosscache-cluster-name" value="JCR_Cluster_cache_production" />
- <property name="jgroups-multiplexer-stack" value="true" />
+ <property name="jbosscache-configuration"
+ value="jar:/conf/portal/test-jbosscache-data.xml"/>
+ <property name="jgroups-configuration"
+ value="jar:/conf/portal/udp-mux.xml"/>
+ <property name="jbosscache-cluster-name"
+ value="JCR_Cluster_cache_production"/>
+ <property name="jgroups-multiplexer-stack"
+ value="true" />
</properties>
</cache>
Modified: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_cluster-config/default18.xml
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_cluster-config/default18.xml 2010-08-09 03:37:32 UTC (rev 3773)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_cluster-config/default18.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -1,10 +1,14 @@
<query-handler class="org.exoplatform.services.jcr.impl.core.query.lucene.SearchIndex">
<properties>
<property name="changesfilter-class" value="org.exoplatform.services.jcr.impl.core.query.jbosscache.JBossCacheIndexChangesFilter" />
- <property name="index-dir" value="/mnt/tornado/temp/jcrlucenedb/production" /> <!-- path within NFS where ValueStorage will hold it's data -->
- <property name="jbosscache-configuration" value="jar:/conf/portal/test-jbosscache-indexer.xml" /> <!-- path to JBoss Cache configuration for indexer -->
- <property name="jgroups-configuration" value="jar:/conf/portal/udp-mux.xml" /> <!-- path to JGroups configuration -->
- <property name="jbosscache-cluster-name" value="JCR_Cluster_indexer_production" /> <!-- JBoss Cache indexer cluster name -->
+ <property name="index-dir" value="/mnt/tornado/temp/jcrlucenedb/production" />
+ <!-- path within NFS where ValueStorage will hold it's data -->
+ <property name="jbosscache-configuration" value="jar:/conf/portal/test-jbosscache-indexer.xml" />
+ <!-- path to JBoss Cache configuration for indexer -->
+ <property name="jgroups-configuration" value="jar:/conf/portal/udp-mux.xml" />
+ <!-- path to JGroups configuration -->
+ <property name="jbosscache-cluster-name" value="JCR_Cluster_indexer_production" />
+ <!-- JBoss Cache indexer cluster name -->
<property name="jgroups-multiplexer-stack" value="true" />
</properties>
</query-handler>
Modified: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_cluster-config/default19.xml
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_cluster-config/default19.xml 2010-08-09 03:37:32 UTC (rev 3773)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_cluster-config/default19.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -1,12 +1,15 @@
<lock-manager class="org.exoplatform.services.jcr.impl.core.lock.jbosscache.CacheableLockManagerImpl">
<properties>
<property name="time-out" value="15m" />
- <property name="jbosscache-configuration" value="jar:/conf/portal/test-jbosscache-lock.xml" /> <!-- path to JBoss Cache configuration for lock manager -->
- <property name="jgroups-configuration" value="jar:/conf/portal/udp-mux.xml" /> <!-- path to JGroups configuration -->
+ <property name="jbosscache-configuration" value="jar:/conf/portal/test-jbosscache-lock.xml" />
+ <!-- path to JBoss Cache configuration for lock manager -->
+ <property name="jgroups-configuration" value="jar:/conf/portal/udp-mux.xml" />
+ <!-- path to JGroups configuration -->
<property name="jgroups-multiplexer-stack" value="true" />
- <property name="jbosscache-cluster-name" value="JCR_Cluster_lock_production" /> <!-- JBoss Cache locks cluster name -->
-
- <property name="jbosscache-cl-cache.jdbc.table.name" value="jcrlocks_production"/> <!-- the name of the DB table where lock's data will be stored -->
+ <property name="jbosscache-cluster-name" value="JCR_Cluster_lock_production" />
+ <!-- JBoss Cache locks cluster name -->
+ <property name="jbosscache-cl-cache.jdbc.table.name" value="jcrlocks_production"/>
+ <!-- the name of the DB table where lock's data will be stored -->
<property name="jbosscache-cl-cache.jdbc.table.create" value="true"/>
<property name="jbosscache-cl-cache.jdbc.table.drop" value="false"/>
<property name="jbosscache-cl-cache.jdbc.table.primarykey" value="jcrlocks_production_pk"/>
Added: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_jbosscache-configuration-templates/default29.xml
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_jbosscache-configuration-templates/default29.xml (rev 0)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_jbosscache-configuration-templates/default29.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -0,0 +1 @@
+<property name="jbosscache-configuration" value="conf/standalone/test-jbosscache-lock-db1-ws1.xml" />
Added: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_jbosscache-configuration-templates/default30.xml
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_jbosscache-configuration-templates/default30.xml (rev 0)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_jbosscache-configuration-templates/default30.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -0,0 +1,4 @@
+...
+<clustering mode="replication" clusterName="${jbosscache-cluster-name}">
+ <stateRetrieval timeout="20000" fetchInMemoryState="false" />
+...
Added: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_jbosscache-configuration-templates/default31.xml
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_jbosscache-configuration-templates/default31.xml (rev 0)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_jbosscache-configuration-templates/default31.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -0,0 +1,4 @@
+...
+<property name="jbosscache-configuration" value="jar:/conf/portal/jbosscache-lock.xml" />
+<property name="jbosscache-cluster-name" value="JCR-cluster-locks-db1-ws" />
+...
Modified: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_jbosscache-configuration-templates/default35.xml
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_jbosscache-configuration-templates/default35.xml 2010-08-09 03:37:32 UTC (rev 3773)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_jbosscache-configuration-templates/default35.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -1,9 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<jbosscache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:jboss:jbosscache-core:config:3.1">
- <locking useLockStriping="false" concurrencyLevel="50000" lockParentForChildInsertRemove="false"
- lockAcquisitionTimeout="20000" />
- <clustering mode="replication" clusterName="${jbosscache-cluster-name}">
+ <locking useLockStriping="false" concurrencyLevel="50000" lockParentForChildInsertRemove="false" lockAcquisitionTimeout="20000"/>
+ <clustering mode="replication" clusterName="${jbosscache-cluster-name}">
<stateRetrieval timeout="20000" fetchInMemoryState="false" />
<jgroupsConfig multiplexerStack="jcr.stack" />
<sync />
@@ -12,8 +11,7 @@
<preload>
<node fqn="/" />
</preload>
- <loader class="org.jboss.cache.loader.JDBCCacheLoader" async="false" fetchPersistentState="false"
- ignoreModifications="false" purgeOnStartup="false">
+ <loader class="org.jboss.cache.loader.JDBCCacheLoader" async="false" fetchPersistentState="false" ignoreModifications="false" purgeOnStartup="false">
<properties>
cache.jdbc.table.name=${jbosscache-cl-cache.jdbc.table.name}
cache.jdbc.table.create=${jbosscache-cl-cache.jdbc.table.create}
Added: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_search-configuration/default70.xml
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_search-configuration/default70.xml (rev 0)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_search-configuration/default70.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -0,0 +1 @@
+<param name="indexing-configuration-path" value="/indexing_configuration.xml"/>
Deleted: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_search-configuration/default72.java
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_search-configuration/default72.java 2010-08-09 03:37:32 UTC (rev 3773)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_search-configuration/default72.java 2010-08-09 07:01:37 UTC (rev 3774)
@@ -1,8 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE configuration SYSTEM "http://www.exoplatform.org/dtd/indexing-configuration-1.0.dtd">
-<configuration xmlns:nt="http://www.jcp.org/jcr/nt/1.0">
- <index-rule nodeType="nt:unstructured"
- boost="2.0">
- <property>Text</property>
- </index-rule>
-</configuration>
Copied: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_search-configuration/default72.xml (from rev 3746, epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_search-configuration/default72.java)
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_search-configuration/default72.xml (rev 0)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_search-configuration/default72.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -0,0 +1,8 @@
+<?xml version="1.0"?>
+<!DOCTYPE configuration SYSTEM "http://www.exoplatform.org/dtd/indexing-configuration-1.0.dtd">
+<configuration xmlns:nt="http://www.jcp.org/jcr/nt/1.0">
+ <index-rule nodeType="nt:unstructured"
+ boost="2.0">
+ <property>Text</property>
+ </index-rule>
+</configuration>
Deleted: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_search-configuration/default73.java
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_search-configuration/default73.java 2010-08-09 03:37:32 UTC (rev 3773)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_search-configuration/default73.java 2010-08-09 07:01:37 UTC (rev 3774)
@@ -1,8 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE configuration SYSTEM "http://www.exoplatform.org/dtd/indexing-configuration-1.0.dtd">
-<configuration xmlns:nt="http://www.jcp.org/jcr/nt/1.0">
- <index-rule nodeType="nt:unstructured">
- <property boost="3.0">Title</property>
- <property boost="1.5">Text</property>
- </index-rule>
-</configuration>
Copied: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_search-configuration/default73.xml (from rev 3746, epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_search-configuration/default73.java)
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_search-configuration/default73.xml (rev 0)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/Advanced_Development_JCR_search-configuration/default73.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -0,0 +1,8 @@
+<?xml version="1.0"?>
+<!DOCTYPE configuration SYSTEM "http://www.exoplatform.org/dtd/indexing-configuration-1.0.dtd">
+<configuration xmlns:nt="http://www.jcp.org/jcr/nt/1.0">
+ <index-rule nodeType="nt:unstructured">
+ <property boost="3.0">Title</property>
+ <property boost="1.5">Text</property>
+ </index-rule>
+</configuration>
Modified: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/PortalDevelopment_DefaultPortalNavigationConfiguration/default144.xml
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/PortalDevelopment_DefaultPortalNavigationConfiguration/default144.xml 2010-08-09 03:37:32 UTC (rev 3773)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/PortalDevelopment_DefaultPortalNavigationConfiguration/default144.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -6,26 +6,22 @@
<name>new.portal.config.user.listener</name>
<set-method>initListener</set-method>
<type>org.exoplatform.portal.config.NewPortalConfigListener</type>
- <description>this listener init the portal configuration</descript
-ion>
+ <description>this listener init the portal configuration</description>
<init-params>
<value-param>
<name>default.portal</name>
- <description>The default portal for checking db is empty or no
-t</description>
+ <description>The default portal for checking db is empty or not</description>
<value>classic</value>
</value-param>
<value-param>
<name>page.templates.location</name>
- <description>the path to the location that contains Page templ
-ates</description>
+ <description>the path to the location that contains Page templates</description>
<value>war:/conf/portal/template/pages</value>
</value-param>
<object-param>
<name>site.templates.location</name>
<description>description</description>
- <object type="org.exoplatform.portal.config.SiteConfigTemplate
-">
+ <object type="org.exoplatform.portal.config.SiteConfigTemplate">
<field name="location">
<string>war:/conf/portal</string>
</field>
Modified: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/PortalDevelopment_Skinning/default187.xml
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/PortalDevelopment_Skinning/default187.xml 2010-08-09 03:37:32 UTC (rev 3773)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/PortalDevelopment_Skinning/default187.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -1 +1 @@
-.UIChangeSkinForm .UIItemSelector .TemplateContainer .<emphasis role="bold">MySkinImage</emphasis>
+.UIChangeSkinForm .UIItemSelector .TemplateContainer .MySkinImage
Modified: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/PortalDevelopment_Skinning/default188.xml
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/PortalDevelopment_Skinning/default188.xml 2010-08-09 03:37:32 UTC (rev 3773)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/extras/PortalDevelopment_Skinning/default188.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -1,4 +1,4 @@
-.UIChangeSkinForm .UIItemSelector .TemplateContainer .<emphasis role="bold">MySkinImage</emphasis> {
+.UIChangeSkinForm .UIItemSelector .TemplateContainer .MySkinImage
margin: auto;
width: 329px; height:204px;
background: url('background/MySkin.jpg') no-repeat top;
Modified: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/Foundations.xml
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/Foundations.xml 2010-08-09 03:37:32 UTC (rev 3773)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/Foundations.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -162,7 +162,6 @@
<areaspec>
<area coords="6" id="area-Reference_Guide-Configuration_syntax-Includes_and_special_URLs-url_schema" />
</areaspec>
-<!-- TODO highlight once Publican 1.6.3 installed (XML)-->
<programlisting language="XML" role="XML"><xi:include parse="text" href="../../extras/Advanced_Development_Foundations/default2.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
Modified: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/cluster-config.xml
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/cluster-config.xml 2010-08-09 03:37:32 UTC (rev 3773)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/cluster-config.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -98,10 +98,10 @@
<programlistingco>
<areaspec>
- <area coords="19" id="Reference_Guide-Configuring_JBoss_AS_with_eXo_JCR_in_cluster-value-storages"/>
- <area coords="28" id="Reference_Guide-Configuring_JBoss_AS_with_eXo_JCR_in_cluster-cache"/>
- <area coords="31" id="Reference_Guide-Configuring_JBoss_AS_with_eXo_JCR_in_cluster-indexer"/>
- <area coords="34" id="Reference_Guide-Configuring_JBoss_AS_with_eXo_JCR_in_cluster-lock-manager"/>
+ <area coords="18 60" id="Reference_Guide-Configuring_JBoss_AS_with_eXo_JCR_in_cluster-value-storages"/>
+ <area coords="27 60" id="Reference_Guide-Configuring_JBoss_AS_with_eXo_JCR_in_cluster-cache"/>
+ <area coords="29 60" id="Reference_Guide-Configuring_JBoss_AS_with_eXo_JCR_in_cluster-indexer"/>
+ <area coords="31 60" id="Reference_Guide-Configuring_JBoss_AS_with_eXo_JCR_in_cluster-lock-manager"/>
</areaspec>
<programlisting language="XML" role="XML"><xi:include parse="text" href="../../../extras/Advanced_Development_JCR_cluster-config/default14.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
@@ -246,9 +246,9 @@
</para>
<programlistingco>
<areaspec>
- <area coords="3" id="Reference_Guide-Requirements-Environment_requirements-jboss_cache_config"/>
- <area coords="4" id="Reference_Guide-Requirements-Environment_requirements-jgroups_config"/>
- <area coords="5" id="Reference_Guide-Requirements-Environment_requirements-cluster_name"/>
+ <area coords="3 60" id="Reference_Guide-Requirements-Environment_requirements-jboss_cache_config"/>
+ <area coords="5 60" id="Reference_Guide-Requirements-Environment_requirements-jgroups_config"/>
+ <area coords="7 60" id="Reference_Guide-Requirements-Environment_requirements-cluster_name"/>
</areaspec>
<programlisting language="XML" role="XML"><xi:include parse="text" href="../../../extras/Advanced_Development_JCR_cluster-config/default17.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
Modified: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/configuration-persister.xml
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/configuration-persister.xml 2010-08-09 03:37:32 UTC (rev 3773)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/configuration-persister.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -44,9 +44,9 @@
</para>
<programlistingco>
<areaspec>
- <area coords="13" id="Reference_Guide-The_The_JCR_Configuration_persister-source-name"/>
- <area coords="14" id="Reference_Guide-The_The_JCR_Configuration_persister-dialect"/>
- <area coords="15" id="Reference_Guide-The_The_JCR_Configuration_persister-persister-class-name"/>
+ <area coords="13 80" id="Reference_Guide-The_The_JCR_Configuration_persister-source-name"/>
+ <area coords="14 80" id="Reference_Guide-The_The_JCR_Configuration_persister-dialect"/>
+ <area coords="15 80" id="Reference_Guide-The_The_JCR_Configuration_persister-persister-class-name"/>
</areaspec>
<programlisting language="XML" role="XML"><xi:include parse="text" href="../../../extras/Advanced_Development_JCR_configuration-persister/default21.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
Modified: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/configuration.xml
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/configuration.xml 2010-08-09 03:37:32 UTC (rev 3773)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/configuration.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -168,9 +168,9 @@
</para>
<programlistingco>
<areaspec>
- <area coords="10" id="area-Reference_Guide-eXo_JCR_configuration-Portal_and_Standalone_configuration-JCR_Service_Configuration-conf-path" />
- <area coords="15" id="area-Reference_Guide-eXo_JCR_configuration-Portal_and_Standalone_configuration-JCR_Service_Configuration-working-conf" />
- </areaspec>
+ <area coords="10 40" id="area-Reference_Guide-eXo_JCR_configuration-Portal_and_Standalone_configuration-JCR_Service_Configuration-conf-path" />
+ <area coords="15 40" id="area-Reference_Guide-eXo_JCR_configuration-Portal_and_Standalone_configuration-JCR_Service_Configuration-working-conf" />
+ </areaspec>
<!-- DOC TODO: There is no exo-configuration.xml file in the jar or in the svn trunk/. Does this file exist? -->
<programlisting language="XML" role="XML"><xi:include parse="text" href="../../../extras/Advanced_Development_JCR_Configuration/default23.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
@@ -197,11 +197,11 @@
</properties-param>
</init-params>
</component>]]></programlisting>-->
- <calloutlist>
+ <calloutlist>
<callout arearefs="area-Reference_Guide-eXo_JCR_configuration-Portal_and_Standalone_configuration-JCR_Service_Configuration-conf-path">
<para>
<literal><conf-path></literal> is a path to a <literal>RepositoryService</literal> JCR Configuration. The .xml file in the example is not in the released jar file.
-<!-- Added last sentence as per advice from Villiam Rockai that file does not exist in jar file -->
+ Added last sentence as per advice from Villiam Rockai that file does not exist in jar file
</para>
</callout>
<callout arearefs="area-Reference_Guide-eXo_JCR_configuration-Portal_and_Standalone_configuration-JCR_Service_Configuration-working-conf">
Modified: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/external-value-storages.xml
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/external-value-storages.xml 2010-08-09 03:37:32 UTC (rev 3773)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/external-value-storages.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -105,7 +105,7 @@
<value-storages>]]></programlisting>-->
</section>
- <section id="sect-Reference_Guide-External_Value_Storages-Simple_File_Value_Storage">
+ <!--<section id="sect-Reference_Guide-External_Value_Storages-Simple_File_Value_Storage">
<title>Simple File Value Storage</title>
<note>
<para>
@@ -121,15 +121,15 @@
<programlisting language="Java" role="Java"><xi:include parse="text" href="../../../extras/Advanced_Development_JCR_external-value-storages/default27.java" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
-<!--<programlisting><value-storage id="Storage #1" class="org.exoplatform.services.jcr.impl.storage.value.fs.SimpleFileValueStorage">
+<programlisting><value-storage id="Storage #1" class="org.exoplatform.services.jcr.impl.storage.value.fs.SimpleFileValueStorage">
<properties>
<property name="path" value="data/values"/>
</properties>
<filters>
<filter property-type="Binary" min-value-size="1M"/>
</filters>
-</programlisting>-->
- </section>
+</programlisting>
+ </section>-->
<section id="sect-Reference_Guide-External_Value_Storages-Content_Addressable_Value_storage_CAS_support">
<title>Content Addressable Value storage (CAS) support</title>
Modified: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/jbosscache-configuration-templates.xml
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/jbosscache-configuration-templates.xml 2010-08-09 03:37:32 UTC (rev 3773)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/jbosscache-configuration-templates.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -17,7 +17,7 @@
For example:
</para>
-<programlisting language="Java" role="Java"><xi:include parse="text" href="../../../extras/Advanced_Development_JCR_jbosscache-configuration-templates/default29.java" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
+<programlisting language="XML" role="XML"><xi:include parse="text" href="../../../extras/Advanced_Development_JCR_jbosscache-configuration-templates/default29.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
<!--<programlisting><property name="jbosscache-configuration" value="conf/standalone/test-jbosscache-lock-db1-ws1.xml" />
</programlisting>-->
@@ -34,7 +34,7 @@
The xml-template:
</para>
-<programlisting language="Java" role="Java"><xi:include parse="text" href="../../../extras/Advanced_Development_JCR_jbosscache-configuration-templates/default30.java" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
+<programlisting language="XML" role="XML"><xi:include parse="text" href="../../../extras/Advanced_Development_JCR_jbosscache-configuration-templates/default30.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
<!--<programlisting language="XML" role="XML"><![CDATA[...
<clustering mode="replication" clusterName="${jbosscache-cluster-name}">
@@ -43,7 +43,7 @@
<para>
The JCR configuration file:
</para>
-<programlisting language="Java" role="Java"><xi:include parse="text" href="../../../extras/Advanced_Development_JCR_jbosscache-configuration-templates/default31.java" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
+<programlisting language="XML" role="XML"><xi:include parse="text" href="../../../extras/Advanced_Development_JCR_jbosscache-configuration-templates/default31.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
<!--<programlisting language="XML" role="XML"><![CDATA[...
<property name="jbosscache-configuration" value="jar:/conf/portal/jbosscache-lock.xml" />
@@ -95,7 +95,7 @@
</para>
<programlistingco>
<areaspec>
- <area coords="7" id="Reference_Guide-JBoss_Cache_configuration-Templates-jbosscache-cluster-name"/>
+ <area coords="6 60" id="Reference_Guide-JBoss_Cache_configuration-Templates-jbosscache-cluster-name"/>
</areaspec>
<programlisting language="XML" role="XML"><xi:include parse="text" href="../../../extras/Advanced_Development_JCR_jbosscache-configuration-templates/default34.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
@@ -143,17 +143,17 @@
</para>
<programlistingco>
<areaspec>
- <area coords="6" id="Reference_Guide-JBoss_Cache_configuration-Templates-jbosscache-cluster-name1"/>
- <area coords="18" id="Reference_Guide-JBoss_Cache_configuration-Templates-jbosscache-cl-cache.jdbc.table.name"/>
- <area coords="19" id="Reference_Guide-JBoss_Cache_configuration-Templates-jbosscache-cl-cache.jdbc.table.create"/>
- <area coords="20" id="Reference_Guide-JBoss_Cache_configuration-Templates-jbosscache-cl-cache.jdbc.table.drop"/>
- <area coords="21" id="Reference_Guide-JBoss_Cache_configuration-Templates-jbosscache-cl-cache.jdbc.table.primarykey"/>
- <area coords="22" id="Reference_Guide-JBoss_Cache_configuration-Templates-jbosscache-cl-cache.jdbc.fqn.column"/>
- <area coords="23" id="Reference_Guide-JBoss_Cache_configuration-Templates-jbosscache-cl-cache.jdbc.fqn.type"/>
- <area coords="24" id="Reference_Guide-JBoss_Cache_configuration-Templates-jbosscache-cl-cache.jdbc.node.column"/>
- <area coords="25" id="Reference_Guide-JBoss_Cache_configuration-Templates-jbosscache-cl-cache.jdbc.node.type"/>
- <area coords="26" id="Reference_Guide-JBoss_Cache_configuration-Templates-jbosscache-cl-cache.jdbc.parent.column"/>
- <area coords="27" id="Reference_Guide-JBoss_Cache_configuration-Templates-jbosscache-cl-cache.jdbc.datasource"/>
+ <area coords="5 90" id="Reference_Guide-JBoss_Cache_configuration-Templates-jbosscache-cluster-name1"/>
+ <area coords="16 90" id="Reference_Guide-JBoss_Cache_configuration-Templates-jbosscache-cl-cache.jdbc.table.name"/>
+ <area coords="17 90" id="Reference_Guide-JBoss_Cache_configuration-Templates-jbosscache-cl-cache.jdbc.table.create"/>
+ <area coords="18 90" id="Reference_Guide-JBoss_Cache_configuration-Templates-jbosscache-cl-cache.jdbc.table.drop"/>
+ <area coords="19 90" id="Reference_Guide-JBoss_Cache_configuration-Templates-jbosscache-cl-cache.jdbc.table.primarykey"/>
+ <area coords="20 90" id="Reference_Guide-JBoss_Cache_configuration-Templates-jbosscache-cl-cache.jdbc.fqn.column"/>
+ <area coords="21 90" id="Reference_Guide-JBoss_Cache_configuration-Templates-jbosscache-cl-cache.jdbc.fqn.type"/>
+ <area coords="22 90" id="Reference_Guide-JBoss_Cache_configuration-Templates-jbosscache-cl-cache.jdbc.node.column"/>
+ <area coords="23 90" id="Reference_Guide-JBoss_Cache_configuration-Templates-jbosscache-cl-cache.jdbc.node.type"/>
+ <area coords="24 90" id="Reference_Guide-JBoss_Cache_configuration-Templates-jbosscache-cl-cache.jdbc.parent.column"/>
+ <area coords="25 90" id="Reference_Guide-JBoss_Cache_configuration-Templates-jbosscache-cl-cache.jdbc.datasource"/>
</areaspec>
Modified: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/jdbc-data-container-config.xml
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/jdbc-data-container-config.xml 2010-08-09 03:37:32 UTC (rev 3773)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/jdbc-data-container-config.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -254,8 +254,10 @@
<para>
The following example is in standalone mode with two data containers <parameter>jdbcjcr</parameter> (a local HSQLDB) and <parameter>jdbcjcr1</parameter> (a remote MySQL container):
</para>
+
+<programlisting language="XML" role="XML"><xi:include parse="text" href="../../../extras/Advanced_Development_JCR_jdbc-data-container-config/default38.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
-<programlisting language="XML" role="XML"><![CDATA[<component>
+<!--<programlisting language="XML" role="XML"><![CDATA[<component>
<key>org.exoplatform.services.naming.InitialContextInitializer</key>
<type>org.exoplatform.services.naming.InitialContextInitializer</type>
<component-plugins>
@@ -324,6 +326,7 @@
</value-param>
</init-params>
</component>]]></programlisting>
+-->
</step>
<step>
<para>
@@ -408,8 +411,10 @@
<para>
The following example contains two workspaces <parameter>ws</parameter> (<literal>jdbcjcr</literal>) and <parameter>ws1</parameter> (<literal>jdbcjcr1</literal>):
</para>
+
+<programlisting language="XML" role="XML"><xi:include parse="text" href="../../../extras/Advanced_Development_JCR_jdbc-data-container-config/default39.java" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
-<programlisting><workspaces>
+<!--<programlisting><workspaces>
<workspace name="ws" auto-init-root-nodetype="nt:unstructured">
<container class="org.exoplatform.services.jcr.impl.storage.jdbc.JDBCWorkspaceDataContainer">
<properties>
@@ -422,8 +427,8 @@
</container>
<cache enabled="true">
<properties>
- <property name="max-size" value="10K"/><!-- 10KBytes -->
- <property name="live-time" value="30m"/><!-- 30 min -->
+ <property name="max-size" value="10K"/><!- 10KBytes ->
+ <property name="live-time" value="30m"/><!- 30 min ->
</properties>
</cache>
<query-handler class="org.exoplatform.services.jcr.impl.core.query.lucene.SearchIndex">
@@ -432,7 +437,7 @@
</properties>
</query-handler>
<lock-manager>
- <time-out>15m</time-out><!-- 15 min -->
+ <time-out>15m</time-out><!- 15 min ->
<persister class="org.exoplatform.services.jcr.impl.core.lock.FileSystemLockPersister">
<properties>
<property name="path" value="target/temp/lock/ws"/>
@@ -462,7 +467,7 @@
</properties>
</query-handler>
<lock-manager>
- <time-out>15m</time-out><!-- 15 min -->
+ <time-out>15m</time-out><!- 15 min ->
<persister class="org.exoplatform.services.jcr.impl.core.lock.FileSystemLockPersister">
<properties>
<property name="path" value="target/temp/lock/ws1"/>
@@ -471,7 +476,7 @@
</lock-manager>
</workspace>
</workspaces>
-</programlisting>
+</programlisting>-->
<variablelist>
<varlistentry>
@@ -596,7 +601,9 @@
The following example shows the settings for embedded mode for the <parameter>jdbcjcr</parameter> data container:
</para>
-<programlisting language="XML" role="XML"><![CDATA[<external-component-plugins>
+<programlisting language="XML" role="XML"><xi:include parse="text" href="../../../extras/Advanced_Development_JCR_jdbc-data-container-config/default40.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
+
+<!--<programlisting language="XML" role="XML"><![CDATA[<external-component-plugins>
<target-component>org.exoplatform.services.naming.InitialContextInitializer</target-component>
<component-plugin>
<name>bind.datasource</name>
@@ -629,14 +636,17 @@
</init-params>
</component-plugin>
</external-component-plugins>]]></programlisting>
- <para>
+-->
+ <para>
To configure multiple repository workspaces with a single database the "multi-db" parameter must be switched off (set the value to "false").
</para>
<para>
The following example shows configuration for two workspaces <parameter>ws</parameter> (jdbcjcr) and <parameter>ws1</parameter> (jdbcjcr) which will be persisted in one <application>PostgreSQL</application> database:
</para>
-<programlisting language="XML" role="XML"><![CDATA[<workspaces>
+<programlisting language="XML" role="XML"><xi:include parse="text" href="../../../extras/Advanced_Development_JCR_jdbc-data-container-config/default41.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
+
+<!--<programlisting language="XML" role="XML"><![CDATA[<workspaces>
<workspace name="ws" auto-init-root-nodetype="nt:unstructured">
<container class="org.exoplatform.services.jcr.impl.storage.jdbc.JDBCWorkspaceDataContainer">
<properties>
@@ -693,7 +703,7 @@
</lock-manager>
</workspace>
</workspaces>]]></programlisting>
-
+-->
<section id="sect-Reference_Guide-Single_database_configuration-Configuration_without_DataSource">
<title>Configuration without DataSource</title>
<para>
@@ -712,7 +722,9 @@
</step>
</procedure>
-<programlisting language="XML" role="XML"><![CDATA[<workspace name="ws" auto-init-root-nodetype="nt:unstructured">
+<programlisting language="XML" role="XML"><xi:include parse="text" href="../../../extras/Advanced_Development_JCR_jdbc-data-container-config/default42.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
+
+<!--<programlisting language="XML" role="XML"><![CDATA[<workspace name="ws" auto-init-root-nodetype="nt:unstructured">
<container class="org.exoplatform.services.jcr.impl.storage.jdbc.JDBCWorkspaceDataContainer">
<properties>
<property name="dialect" value="hsqldb"/>
@@ -720,7 +732,7 @@
<property name="url" value="jdbc:hsqldb:file:target/temp/data/portal"/>
<property name="username" value="su"/>
<property name="password" value=""/>
- ......]]></programlisting>
+ ......]]></programlisting>-->
<note>
<para>
Ensure the JDBC driver provides connection pooling. Connection pooling is required for use with JCR to prevent a database overload.
@@ -836,7 +848,7 @@
</note>
</section>
-<!--Traiged <section id="sect-Reference_Guide-JDBC_Data_Container_Config-Notes_for_Microsoft_Windows_users">
+ <section id="sect-Reference_Guide-JDBC_Data_Container_Config-Notes_for_Microsoft_Windows_users">
<title>Notes for Microsoft Windows users</title>
<para>
The current configuration of eXo JCR uses Apache DBCP connection pool (<classname>org.apache.commons.dbcp.BasicDataSourceFactory</classname>). It's possible to set a big value for maxActive parameter in <filename>configuration.xml</filename>. That means usage of lots of TCP/IP ports from a client machine inside the pool (i.e. JDBC driver). As a result the data container can throw exceptions like "Address already in use". To solve this problem you have to configure the client's machine networking software for the usage of shorter timeouts for opened TCP/IP ports.
@@ -865,8 +877,8 @@
"TcpTimedWaitDelay"=dword:0000001e
</programlisting>
</para>
- </section> -->
</section>
+ </section>
</section>
Modified: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/multilanguage-support.xml
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/multilanguage-support.xml 2010-08-09 03:37:32 UTC (rev 3773)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/multilanguage-support.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -118,7 +118,7 @@
<para>
Below is an example of creating a UTF-8 database using the <parameter>db2</parameter> dialect for a workspace container with DB2 version 9 and higher:
</para>
-
+<!--DOC TODO: Find out what programming language this is written in for syntax highlighting-->
<programlisting>DB2 CREATE DATABASE dbname USING CODESET UTF-8 TERRITORY US
</programlisting>
Modified: epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/search-configuration.xml
===================================================================
--- epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/search-configuration.xml 2010-08-09 03:37:32 UTC (rev 3773)
+++ epp/docs/branches/EPP_5_0_Branch/Reference_Guide/en-US/modules/Advanced/JCR/search-configuration.xml 2010-08-09 07:01:37 UTC (rev 3774)
@@ -706,15 +706,15 @@
To configure an application to use a new <literal>SearchIndex</literal>, replace the following code:
</para>
-<programlisting><query-handler class="org.exoplatform.services.jcr.impl.core.query.lucene.SearchIndex">
-</programlisting>
+<programlisting language="XML" role="XML"><![CDATA[<query-handler class="org.exoplatform.services.jcr.impl.core.query.lucene.SearchIndex">
+]]></programlisting>
<para>
...in <filename>portal/WEB-INF/conf/jcr/repository-configuration.xml</filename> with the new class
</para>
-<programlisting><query-handler class="<replaceable>mypackage.indexation.MySearchIndex</replaceable>">
-</programlisting>
+<programlisting language="XML" role="XML"><![CDATA[<query-handler class="mypackage.indexation.MySearchIndex>
+]]></programlisting>
<para>
To configure an application to use a new analyzer, add the "<parameter>analyzer</parameter>" parameter to each query-handler configuration in <filename>portal/WEB-INF/conf/jcr/repository-configuration.xml</filename>:
@@ -748,7 +748,7 @@
To configure the indexing behavior add a parameter to the query-handler element in your configuration file.
</para>
-<programlisting><param name="indexing-configuration-path" value="/indexing_configuration.xml"/>
+<programlisting language="XML" role="XML"><![CDATA[<param name="indexing-configuration-path" value="/indexing_configuration.xml"/>]]>
</programlisting>
@@ -770,7 +770,7 @@
<index-rule nodeType="nt:unstructured">
<property>Text</property>
</index-rule>
-</configuration>]]></programlisting>-->
+</configuration>]]></programlisting> -->
<note>
<title>Namespace Prefixes</title>
<para>
@@ -782,7 +782,7 @@
It is also possible to configure a <phrase>boost value</phrase> for the nodes that match the index rule. The default boost value is 1.0. Higher boost values (a reasonable range is 1.0 - 5.0) will yield a higher score value and appear as more relevant.
</para>
-<programlisting language="Java" role="Java"><xi:include parse="text" href="../../../extras/Advanced_Development_JCR_search-configuration/default72.java" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
+<programlisting language="XML" role="XML"><xi:include parse="text" href="../../../extras/Advanced_Development_JCR_search-configuration/default72.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
<!--<programlisting><?xml version="1.0"?>
<!DOCTYPE configuration SYSTEM "http://www.exoplatform.org/dtd/indexing-configuration-1.0.dtd">
@@ -797,7 +797,7 @@
If you do not wish to boost the complete node, but only certain properties, you can also provide a boost value for the listed properties:
</para>
-<programlisting language="Java" role="Java"><xi:include parse="text" href="../../../extras/Advanced_Development_JCR_search-configuration/default73.java" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
+<programlisting language="XML" role="XML"><xi:include parse="text" href="../../../extras/Advanced_Development_JCR_search-configuration/default73.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
<!--<programlisting><?xml version="1.0"?>
<!DOCTYPE configuration SYSTEM "http://www.exoplatform.org/dtd/indexing-configuration-1.0.dtd">
@@ -1018,7 +1018,7 @@
<para>
If the query is:
</para>
-<programlisting>xpath = "//*[jcr:contains(mytext,'analyzer')]"
+<programlisting language="Java" role="JAVA">xpath = "//*[jcr:contains(mytext,'analyzer')]"
</programlisting>
<para>
@@ -1027,7 +1027,7 @@
<para>
Also, if a search is done on the node scope as follows:
</para>
-<programlisting>xpath = "//*[jcr:contains(.,'analyzer')]"
+<programlisting language="Java" role="JAVA">xpath = "//*[jcr:contains(.,'analyzer')]"
</programlisting>
<para>
No result will be returned.
@@ -1038,22 +1038,22 @@
<para>
If the analyzer used to index the "mytext" property above is changed to:
</para>
-<programlisting><analyzer class="org.apache.lucene.analysis.Analyzer.GermanAnalyzer">
- <property>mytext</property>
-</analyzer>
-</programlisting>
+<programlisting language="XML" role="XML"><![CDATA[<analyzer class="org.apache.lucene.analysis.Analyzer.GermanAnalyzer">
+ <property>mytext</property>
+</analyzer>
+]]></programlisting>
<para>
The search below would return a result because of the word stemming (analyzers - analyzer).
</para>
-<programlisting>xpath = "//*[jcr:contains(mytext,'analyzer')]"
+<programlisting language="Java" role="JAVA">xpath = "//*[jcr:contains(mytext,'analyzer')]"
</programlisting>
<para>
The second search in the example:
</para>
-<programlisting>xpath = "//*[jcr:contains(.,'analyzer')]"
+<programlisting language="Java" role="JAVA">xpath = "//*[jcr:contains(.,'analyzer')]"
</programlisting>
<para>
Would still not give a result, since the node scope is indexed with the global analyzer, which in this case does not take into account any word stemming.
13 years, 11 months
gatein SVN: r3773 - portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest.
by do-not-reply@jboss.org
Author: hangnguyen
Date: 2010-08-08 23:37:32 -0400 (Sun, 08 Aug 2010)
New Revision: 3773
Modified:
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_33_EditNodePageProperties.html
Log:
TestVN-356:Clean and Improve existing Selenium for GateIn
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_33_EditNodePageProperties.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_33_EditNodePageProperties.html 2010-08-09 02:46:21 UTC (rev 3772)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_33_EditNodePageProperties.html 2010-08-09 03:37:32 UTC (rev 3773)
@@ -162,6 +162,11 @@
<td></td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='PortalNavigationTopContainer']/div[3]/div/div/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
<td>clickAndWait</td>
<td>//div[@id='PortalNavigationTopContainer']/div[3]/div/div/div/div/div/div/a</td>
<td></td>
@@ -298,7 +303,7 @@
</tr>
<tr>
<td>assertLocation</td>
- <td>http://localhost:8080/portal/private/classic/Test_SNF_PRL_32</td>
+ <td>http://localhost:8080/portal/private/classic/Test_SNF_PRL_33</td>
<td></td>
</tr>
<tr>
@@ -423,7 +428,7 @@
</tr>
<tr>
<td>assertLocation</td>
- <td>http://localhost:8080/portal/private/classic/Test_SNF_PRL_32</td>
+ <td>http://localhost:8080/portal/private/classic/Test_SNF_PRL_33</td>
<td></td>
</tr>
<tr>
@@ -432,7 +437,22 @@
<td></td>
</tr>
<tr>
+ <td>clickAndWait</td>
+ <td>link=Site</td>
+ <td></td>
+</tr>
+<tr>
<td>waitForElementPresent</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
<td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[8]/div/a</td>
<td></td>
</tr>
13 years, 11 months
gatein SVN: r3772 - portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest.
by do-not-reply@jboss.org
Author: hangnguyen
Date: 2010-08-08 22:46:21 -0400 (Sun, 08 Aug 2010)
New Revision: 3772
Modified:
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_33_EditNodePageProperties.html
Log:
TestVN-356:Clean and Improve existing Selenium for GateIn
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_33_EditNodePageProperties.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_33_EditNodePageProperties.html 2010-08-09 02:46:04 UTC (rev 3771)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_33_EditNodePageProperties.html 2010-08-09 02:46:21 UTC (rev 3772)
@@ -89,21 +89,21 @@
<tr>
<td>type</td>
<td>name</td>
- <td>Test_SNF_PRL_32</td>
+ <td>Test_SNF_PRL_33</td>
</tr>
<tr>
<td>type</td>
<td>label</td>
- <td>Test_SNF_PRL_32</td>
+ <td>Test_SNF_PRL_33</td>
</tr>
<tr>
- <td>echo</td>
- <td>-- Page Selector--</td>
+ <td>waitForElementPresent</td>
+ <td>//div[2]/div/div/div/div/div/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
<td></td>
</tr>
<tr>
- <td>waitForElementPresent</td>
- <td>//div[2]/div/div/div/div/div/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td>echo</td>
+ <td>-- Page Selector--</td>
<td></td>
</tr>
<tr>
@@ -168,12 +168,12 @@
</tr>
<tr>
<td>waitForTextPresent</td>
- <td>Test_SNF_PRL_32</td>
+ <td>Test_SNF_PRL_33</td>
<td></td>
</tr>
<tr>
<td>verifyTextPresent</td>
- <td>Test_SNF_PRL_32</td>
+ <td>Test_SNF_PRL_33</td>
<td></td>
</tr>
<tr>
@@ -208,12 +208,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>xpath=//a[@title='Test_SNF_PRL_32']</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_33']</td>
<td></td>
</tr>
<tr>
<td>mouseDownRight</td>
- <td>xpath=//a[@title='Test_SNF_PRL_32']</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_33']</td>
<td></td>
</tr>
<tr>
@@ -333,12 +333,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>xpath=//a[@title='Test_SNF_PRL_32']</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_33']</td>
<td></td>
</tr>
<tr>
<td>mouseDownRight</td>
- <td>xpath=//a[@title='Test_SNF_PRL_32']</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_33']</td>
<td></td>
</tr>
<tr>
@@ -428,86 +428,6 @@
</tr>
<tr>
<td>echo</td>
- <td>--Move node up</td>
- <td></td>
-</tr>
-<tr>
- <td>clickAndWait</td>
- <td>link=Site</td>
- <td></td>
-</tr>
-<tr>
- <td>waitForElementPresent</td>
- <td>link=Edit Navigation</td>
- <td></td>
-</tr>
-<tr>
- <td>click</td>
- <td>link=Edit Navigation</td>
- <td></td>
-</tr>
-<tr>
- <td>verifyElementPresent</td>
- <td>xpath=//a[@title='Test_SNF_PRL_32']</td>
- <td></td>
-</tr>
-<tr>
- <td>storeXpathCount</td>
- <td>//div[@class='TreeContainer JSContainer']/div/div</td>
- <td>nodeLvl</td>
-</tr>
-<tr>
- <td>waitForElementPresent</td>
- <td>link=Test_SNF_PRL_32</td>
- <td></td>
-</tr>
-<tr>
- <td>mouseDownRight</td>
- <td>xpath=//a[@title='Test_SNF_PRL_32']</td>
- <td></td>
-</tr>
-<tr>
- <td>waitForElementPresent</td>
- <td>xpath=//div[@id='UINavigationNodeSelector']//div[@id='NavigationNodePopupMenu']//a[@class='ItemIcon MoveUp16x16Icon']</td>
- <td></td>
-</tr>
-<tr>
- <td>click</td>
- <td>xpath=//div[@id='UINavigationNodeSelector']//div[@id='NavigationNodePopupMenu']//a[@class='ItemIcon MoveUp16x16Icon']</td>
- <td></td>
-</tr>
-<tr>
- <td>waitForElementNotPresent</td>
- <td>xpath=//div[@class='TreeContainer JSContainer']/div/div[${nodeLvl}]/div/a[@title='Test_SNF_PRL_32']</td>
- <td></td>
-</tr>
-<tr>
- <td>verifyElementNotPresent</td>
- <td>xpath=//div[@class='TreeContainer JSContainer']/div/div[${nodeLvl}]/div/a[@title='Test_SNF_PRL_32']</td>
- <td></td>
-</tr>
-<tr>
- <td>echo</td>
- <td>--Move node down</td>
- <td></td>
-</tr>
-<tr>
- <td>mouseDownRight</td>
- <td>xpath=//a[@title='Test_SNF_PRL_32']</td>
- <td></td>
-</tr>
-<tr>
- <td>waitForElementPresent</td>
- <td>xpath=//div[@id='UINavigationNodeSelector']//div[@id='NavigationNodePopupMenu']//a[@class='ItemIcon MoveDown16x16Icon']</td>
- <td></td>
-</tr>
-<tr>
- <td>click</td>
- <td>xpath=//div[@id='UINavigationNodeSelector']//div[@id='NavigationNodePopupMenu']//a[@class='ItemIcon MoveDown16x16Icon']</td>
- <td></td>
-</tr>
-<tr>
- <td>echo</td>
<td>-- Delete this node--</td>
<td></td>
</tr>
@@ -528,12 +448,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>xpath=//a[@title='Test_SNF_PRL_32']</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_33']</td>
<td></td>
</tr>
<tr>
<td>mouseDownRight</td>
- <td>xpath=//a[@title='Test_SNF_PRL_32']</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_33']</td>
<td></td>
</tr>
<tr>
@@ -558,7 +478,7 @@
</tr>
<tr>
<td>waitForElementNotPresent</td>
- <td>xpath=//a[@title='Test_SNF_PRL_32']</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_33']</td>
<td></td>
</tr>
<tr>
13 years, 11 months
gatein SVN: r3771 - portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest.
by do-not-reply@jboss.org
Author: hangnguyen
Date: 2010-08-08 22:46:04 -0400 (Sun, 08 Aug 2010)
New Revision: 3771
Added:
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_32_MoreActionOnNodeInEditNavigationOfPortal.html.html
Log:
TESTVN-1006: Create new GateIn Selenium scripts
Added: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_32_MoreActionOnNodeInEditNavigationOfPortal.html.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_32_MoreActionOnNodeInEditNavigationOfPortal.html.html (rev 0)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_32_MoreActionOnNodeInEditNavigationOfPortal.html.html 2010-08-09 02:46:04 UTC (rev 3771)
@@ -0,0 +1,582 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>Test_SNF_PRL_32_MoreActionOnNodeInEditNavigationOfPortal.html</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Test_SNF_PRL_32_MoreActionOnNodeInEditNavigationOfPortal.html</td></tr>
+</thead><tbody>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- More action on node in edit navigation of portal --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>windowMaximize</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Site</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Add new node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Add Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Add Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>name</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>name</td>
+ <td>Test_SNF_PRL_32</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>label</td>
+ <td>Test_SNF_PRL_32</td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose Page Selector--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[2]/div/div/div/div/div/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[2]/div/div/div/div/div/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Search and Select Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Search and Select Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//tr[2]/td[5]/div/img</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//tr[2]/td[5]/div/img</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Copy node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Test_SNF_PRL_32</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Test_SNF_PRL_32</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_32']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_32']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Copy Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Copy Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- paste node to new place--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[2]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[2]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Home']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Home']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='NavigationNodePopupMenu']/div/div[2]/div/div/div[7]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='NavigationNodePopupMenu']/div/div[2]/div/div/div[7]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Cut node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[8]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseOver</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[8]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[8]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[5]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[5]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- paste node to new place--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[3]/div[1]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[3]/div[1]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//html/body/div/div[2]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div/div/div/div/div[4]/div/div/div/div/div/div/div/div/div/div/div/div[3]/div/div[2]/div/div/div/div/div/div/div[2]/div[3]/div/div/div/div/div/div[2]/div/div/div[3]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//html/body/div/div[2]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div/div/div/div/div[4]/div/div/div/div/div/div/div/div/div/div/div/div[3]/div/div[2]/div/div/div/div/div/div/div[2]/div[3]/div/div/div/div/div/div[2]/div/div/div[3]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//html/body/div/div[2]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div/div/div/div/div[4]/div/div/div/div/div/div/div/div/div/div/div/div[3]/div/div[2]/div/div/div/div/div/div/div[2]/div[3]/div/div/div/div/div/div/div/div[2]/div/div/div[7]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//html/body/div/div[2]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div/div/div/div/div[4]/div/div/div/div/div/div/div/div/div/div/div/div[3]/div/div[2]/div/div/div/div/div/div/div[2]/div[3]/div/div/div/div/div/div/div/div[2]/div/div/div[7]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Clone node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[2]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[2]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//html/body/div/div[2]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div/div/div/div/div[4]/div/div/div/div/div/div/div/div/div/div/div/div[3]/div/div[2]/div/div/div/div/div/div/div[2]/div[3]/div/div/div/div/div/div[2]/div/div/div[2]/div[2]/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//html/body/div/div[2]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div/div/div/div/div[4]/div/div/div/div/div/div/div/div/div/div/div/div[3]/div/div[2]/div/div/div/div/div/div/div[2]/div[3]/div/div/div/div/div/div[2]/div/div/div[2]/div[2]/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_32']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_32']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Clone Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Clone Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[1]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[1]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@class='HomeNode']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//div[@class='HomeNode']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Paste Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Paste Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Move node up</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[8]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[8]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Test_SNF_PRL_32</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_32']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//div[@id='UINavigationNodeSelector']//div[@id='NavigationNodePopupMenu']//a[@class='ItemIcon MoveUp16x16Icon']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//div[@id='UINavigationNodeSelector']//div[@id='NavigationNodePopupMenu']//a[@class='ItemIcon MoveUp16x16Icon']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Move node down</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>xpath=//a[@title='Test_SNF_PRL_32']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//div[@id='UINavigationNodeSelector']//div[@id='NavigationNodePopupMenu']//a[@class='ItemIcon MoveDown16x16Icon']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//div[@id='UINavigationNodeSelector']//div[@id='NavigationNodePopupMenu']//a[@class='ItemIcon MoveDown16x16Icon']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete node is cloned --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[8]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[8]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_32']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_32']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Are you sure you want to delete this node?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete node is copied--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[2]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[2]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//html/body/div/div[2]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div/div/div/div/div[4]/div/div/div/div/div/div/div/div/div/div/div/div[3]/div/div[2]/div/div/div/div/div/div/div[2]/div[3]/div/div/div/div/div/div[2]/div/div/div[2]/div[2]/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//html/body/div/div[2]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div/div/div/div/div[4]/div/div/div/div/div/div/div/div/div/div/div/div[3]/div/div[2]/div/div/div/div/div/div/div[2]/div[3]/div/div/div/div/div/div[2]/div/div/div[2]/div[2]/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_32']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_32']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Are you sure you want to delete this node?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete node clone-</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[3]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[3]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//html/body/div/div[2]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div/div/div/div/div[4]/div/div/div/div/div/div/div/div/div/div/div/div[3]/div/div[2]/div/div/div/div/div/div/div[2]/div[3]/div/div/div/div/div/div[2]/div/div/div[3]/div[2]/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//html/body/div/div[2]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div/div/div/div/div[4]/div/div/div/div/div/div/div/div/div/div/div/div[3]/div/div[2]/div/div/div/div/div/div/div[2]/div[3]/div/div/div/div/div/div[2]/div/div/div[3]/div[2]/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_32']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_32']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Are you sure you want to delete this node?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
13 years, 11 months
gatein SVN: r3770 - components/pc/trunk/portlet/src/main/java/org/gatein/pc/portlet/impl/jsr168/api.
by do-not-reply@jboss.org
Author: chris.laprun(a)jboss.com
Date: 2010-08-06 19:11:50 -0400 (Fri, 06 Aug 2010)
New Revision: 3770
Modified:
components/pc/trunk/portlet/src/main/java/org/gatein/pc/portlet/impl/jsr168/api/ResourceResponseImpl.java
Log:
- GTNPC-23: use CacheLevel.PAGE if no cache is provided by the invocation.
Modified: components/pc/trunk/portlet/src/main/java/org/gatein/pc/portlet/impl/jsr168/api/ResourceResponseImpl.java
===================================================================
--- components/pc/trunk/portlet/src/main/java/org/gatein/pc/portlet/impl/jsr168/api/ResourceResponseImpl.java 2010-08-06 23:08:57 UTC (rev 3769)
+++ components/pc/trunk/portlet/src/main/java/org/gatein/pc/portlet/impl/jsr168/api/ResourceResponseImpl.java 2010-08-06 23:11:50 UTC (rev 3770)
@@ -54,7 +54,12 @@
super(invocation, preq);
//
- this.cacheability = invocation.getCacheLevel();
+ CacheLevel cacheLevel = invocation.getCacheLevel();
+ if (cacheLevel == null)
+ {
+ cacheLevel = CacheLevel.PAGE;
+ }
+ this.cacheability = cacheLevel;
}
public void setLocale(Locale locale)
13 years, 11 months
gatein SVN: r3769 - components/pc/trunk/samples/src/main/java/org/gatein/pc/samples/remotecontroller.
by do-not-reply@jboss.org
Author: chris.laprun(a)jboss.com
Date: 2010-08-06 19:08:57 -0400 (Fri, 06 Aug 2010)
New Revision: 3769
Modified:
components/pc/trunk/samples/src/main/java/org/gatein/pc/samples/remotecontroller/RemoteControllerPortlet.java
Log:
- Re-generate URL so that we don't mix concerns.
Modified: components/pc/trunk/samples/src/main/java/org/gatein/pc/samples/remotecontroller/RemoteControllerPortlet.java
===================================================================
--- components/pc/trunk/samples/src/main/java/org/gatein/pc/samples/remotecontroller/RemoteControllerPortlet.java 2010-08-06 21:36:43 UTC (rev 3768)
+++ components/pc/trunk/samples/src/main/java/org/gatein/pc/samples/remotecontroller/RemoteControllerPortlet.java 2010-08-06 23:08:57 UTC (rev 3769)
@@ -98,6 +98,7 @@
writer.print("<li><a href='#' onclick=\"" + createParentURL(url) + "\"><img\n" +
" src=\"" + resourceRequest.getContextPath() + "/images/icon-normal.gif\" alt=\"\"/> make parent portlet normal</a></li></ul>");
writer.print("<br/><ul><li>");
+ url = resourceResponse.createRenderURL();
writer.print("Set value of <b>'zipcode'</b> public render parameter to:</li>");
url.setParameter(ZIPCODE, "80201");
writer.print("<li><a href='#' onclick=\"" + createParentURL(url) + "\">Denver, CO</a>");
13 years, 11 months
gatein SVN: r3768 - in components/wsrp/trunk: producer/src/main/java/org/gatein/exports and 5 other directories.
by do-not-reply@jboss.org
Author: mwringe
Date: 2010-08-06 17:36:43 -0400 (Fri, 06 Aug 2010)
New Revision: 3768
Modified:
components/wsrp/trunk/common/src/main/java/org/gatein/wsrp/WSRPTypeFactory.java
components/wsrp/trunk/producer/src/main/java/org/gatein/exports/ExportManager.java
components/wsrp/trunk/producer/src/main/java/org/gatein/exports/data/ExportData.java
components/wsrp/trunk/producer/src/main/java/org/gatein/exports/impl/ExportManagerImpl.java
components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer/PortletManagementHandler.java
components/wsrp/trunk/wsrp-producer-war/pom.xml
components/wsrp/trunk/wsrp-producer-war/src/test/java/org/gatein/wsrp/protocol/v2/PortletManagementTestCase.java
Log:
GTNWSRP-55: Import/Export bug fixes and updated tests.
Modified: components/wsrp/trunk/common/src/main/java/org/gatein/wsrp/WSRPTypeFactory.java
===================================================================
--- components/wsrp/trunk/common/src/main/java/org/gatein/wsrp/WSRPTypeFactory.java 2010-08-06 19:39:29 UTC (rev 3767)
+++ components/wsrp/trunk/common/src/main/java/org/gatein/wsrp/WSRPTypeFactory.java 2010-08-06 21:36:43 UTC (rev 3768)
@@ -1433,7 +1433,7 @@
return importPortlets;
}
- public static ImportPortlet createImportPorlet(String importID, byte[] exportData)
+ public static ImportPortlet createImportPortlet(String importID, byte[] exportData)
{
ParameterValidation.throwIllegalArgExceptionIfNull(importID, "ImportID");
ParameterValidation.throwIllegalArgExceptionIfNull(exportData, "ExportData");
Modified: components/wsrp/trunk/producer/src/main/java/org/gatein/exports/ExportManager.java
===================================================================
--- components/wsrp/trunk/producer/src/main/java/org/gatein/exports/ExportManager.java 2010-08-06 19:39:29 UTC (rev 3767)
+++ components/wsrp/trunk/producer/src/main/java/org/gatein/exports/ExportManager.java 2010-08-06 21:36:43 UTC (rev 3768)
@@ -44,11 +44,11 @@
ExportContext createExportContext(boolean exportByValueRequired, Lifetime lifetime) throws UnsupportedEncodingException;
- ExportContext createExportContext(byte[] bytes);
+ ExportContext createExportContext(byte[] bytes) throws OperationFailed;
ExportPortletData createExportPortletData(ExportContext exportContextData, String portletHandle, byte[] portletState) throws UnsupportedEncodingException;
- ExportPortletData createExportPortletData(ExportContext exportContext, Lifetime lifetime, byte[] bytes);
+ ExportPortletData createExportPortletData(ExportContext exportContext, Lifetime lifetime, byte[] bytes) throws OperationFailed;
byte[] encodeExportPortletData(ExportContext exportContextData, ExportPortletData exportPortletData) throws UnsupportedEncodingException;
Modified: components/wsrp/trunk/producer/src/main/java/org/gatein/exports/data/ExportData.java
===================================================================
--- components/wsrp/trunk/producer/src/main/java/org/gatein/exports/data/ExportData.java 2010-08-06 19:39:29 UTC (rev 3767)
+++ components/wsrp/trunk/producer/src/main/java/org/gatein/exports/data/ExportData.java 2010-08-06 21:36:43 UTC (rev 3768)
@@ -56,46 +56,70 @@
public static double getVersion(byte[] bytes) throws UnsupportedEncodingException
{
- String dataString = new String(bytes, ENCODING);
- String[] split = dataString.split(SEPARATOR, 3);
-
- if (split.length >= 2)
+ if (bytes != null && bytes.length > 0)
{
- double version = Double.parseDouble(split[1]);
- return version;
+ String dataString = new String(bytes, ENCODING);
+ String[] split = dataString.split(SEPARATOR, 3);
+
+ if (split.length >= 2)
+ {
+ double version = Double.parseDouble(split[1]);
+ return version;
+ }
+ else
+ {
+ //if a version could not be found, return -1
+ return -1;
+ }
}
-
- //if a version could not be found, return -1
- return -1;
+ else
+ {
+ return -1;
+ }
}
public static String getType(byte[] bytes) throws UnsupportedEncodingException
{
- String dataString = new String(bytes, ENCODING);
- String[] split = dataString.split(SEPARATOR, 2);
-
- if (split.length >= 2)
+ if (bytes != null && bytes.length > 0)
{
- return split[0];
+ String dataString = new String(bytes, ENCODING);
+ String[] split = dataString.split(SEPARATOR, 2);
+
+ if (split.length >= 2)
+ {
+ return split[0];
+ }
+ else
+ {
+ return null;
+ }
}
-
- //if we could not find a type, then return null
- return null;
+ else
+ {
+ return null;
+ }
}
public static byte[] getInternalBytes(byte[] bytes) throws UnsupportedEncodingException
{
- String dataString = new String(bytes, ENCODING);
- String[] split = dataString.split(SEPARATOR, 3);
-
- if (split.length >= 3)
+ if (bytes != null && bytes.length > 0)
{
- String internalString = split[2];
- return internalString.getBytes(ENCODING);
+ String dataString = new String(bytes, ENCODING);
+ String[] split = dataString.split(SEPARATOR, 3);
+
+ if (split.length >= 3)
+ {
+ String internalString = split[2];
+ return internalString.getBytes(ENCODING);
+ }
+ else
+ {
+ //if we could not find the internal bytes, return null
+ return null;
+ }
}
else
{
- //if we could not find the internal bytes, return null
return null;
}
}
Modified: components/wsrp/trunk/producer/src/main/java/org/gatein/exports/impl/ExportManagerImpl.java
===================================================================
--- components/wsrp/trunk/producer/src/main/java/org/gatein/exports/impl/ExportManagerImpl.java 2010-08-06 19:39:29 UTC (rev 3767)
+++ components/wsrp/trunk/producer/src/main/java/org/gatein/exports/impl/ExportManagerImpl.java 2010-08-06 21:36:43 UTC (rev 3768)
@@ -77,28 +77,26 @@
return supportExportByValue;
}
- public ExportContext createExportContext(byte[] bytes)
+ public ExportContext createExportContext(byte[] bytes) throws OperationFailed
{
try
{
- String type = ExportData.getType(bytes);
- double version = ExportData.getVersion(bytes);
- if (ExportContext.TYPE.equals(type) && ExportContext.VERSION==version)
- {
- byte[] internalBytes = ExportData.getInternalBytes(bytes);
- return ExportContext.create(internalBytes);
- }
- else
- {
- //TODO: throw an error here about not being a recognized type
- throw new IllegalArgumentException("byte[] format unreconized.");
- }
+ String type = ExportData.getType(bytes);
+ double version = ExportData.getVersion(bytes);
+ if (ExportContext.TYPE.equals(type) && ExportContext.VERSION==version)
+ {
+ byte[] internalBytes = ExportData.getInternalBytes(bytes);
+ return ExportContext.create(internalBytes);
}
- catch (Exception e)
+ else
{
- e.printStackTrace();
- throw new NotYetImplemented();
+ throw WSRPExceptionFactory.createWSException(OperationFailed.class, "Byte array format not compatible.", null);
}
+ }
+ catch (UnsupportedEncodingException e)
+ {
+ throw WSRPExceptionFactory.createWSException(OperationFailed.class, "Could not decode the byte array.", e);
+ }
}
public ExportPortletData createExportPortletData(ExportContext exportContextData, String portletHandle,
@@ -107,7 +105,7 @@
return new ExportPortletData(portletHandle, portletState);
}
- public ExportPortletData createExportPortletData(ExportContext exportContextData, Lifetime lifetime, byte[] bytes)
+ public ExportPortletData createExportPortletData(ExportContext exportContextData, Lifetime lifetime, byte[] bytes) throws OperationFailed
{
try
{
@@ -120,14 +118,12 @@
}
else
{
- //TODO: throw an error here about not being a recognized type
- throw new IllegalArgumentException("byte[] format unreconized.");
+ throw WSRPExceptionFactory.createWSException(OperationFailed.class, "Bytes array format not compatible", null);
}
}
- catch (Exception e)
+ catch (UnsupportedEncodingException e)
{
- e.printStackTrace();
- throw new NotYetImplemented();
+ throw WSRPExceptionFactory.createWSException(OperationFailed.class, "Could not decode the byte array.", e);
}
}
Modified: components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer/PortletManagementHandler.java
===================================================================
--- components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer/PortletManagementHandler.java 2010-08-06 19:39:29 UTC (rev 3767)
+++ components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer/PortletManagementHandler.java 2010-08-06 21:36:43 UTC (rev 3768)
@@ -28,6 +28,8 @@
import org.gatein.common.NotYetImplemented;
import org.gatein.common.i18n.LocalizedString;
+import org.gatein.common.logging.Logger;
+import org.gatein.common.logging.LoggerFactory;
import org.gatein.exports.data.ExportContext;
import org.gatein.exports.data.ExportPortletData;
import org.gatein.pc.api.InvalidPortletIdException;
@@ -59,7 +61,6 @@
import org.oasis.wsrp.v2.ExportPortlets;
import org.oasis.wsrp.v2.ExportPortletsResponse;
import org.oasis.wsrp.v2.ExportedPortlet;
-import org.oasis.wsrp.v2.ExportNoLongerValid;
import org.oasis.wsrp.v2.Extension;
import org.oasis.wsrp.v2.FailedPortlets;
import org.oasis.wsrp.v2.GetPortletDescription;
@@ -100,7 +101,6 @@
import org.oasis.wsrp.v2.SetPortletsLifetimeResponse;
import org.oasis.wsrp.v2.UserContext;
-import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
@@ -120,10 +120,13 @@
private static final String GET_PORTLET_PROPERTIES = "GetPortletProperties";
private static final String PORTLET_CONTEXT = "PortletContext";
private static final String GET_PORTLET_DESCRIPTION = "GetPortletDescription";
+
+ private final Logger log;
PortletManagementHandler(WSRPProducerImpl producer)
{
super(producer);
+ log = LoggerFactory.getLogger(PortletManagementHandler.class);
}
public PortletDescriptionResponse getPortletDescription(GetPortletDescription getPortletDescription)
@@ -469,19 +472,30 @@
ExportByValueNotSupported, InconsistentParameters, InvalidHandle, InvalidRegistration, InvalidUserCategory,
MissingParameters, ModifyRegistrationRequired, OperationFailed, OperationNotSupported, ResourceSuspended
{
- WSRP2ExceptionFactory.throwOperationFailedIfValueIsMissing(exportPortlets, "ExportPortlets");
+ WSRP2ExceptionFactory.throwMissingParametersIfValueIsMissing(exportPortlets, "ExportPortlets", "ExportPortlets");
List<PortletContext> portletContexts = exportPortlets.getPortletContext();
- WSRP2ExceptionFactory.throwMissingParametersIfValueIsMissing(portletContexts, "PortletContext", "ExportPortlets");
-
+ if (portletContexts == null || portletContexts.isEmpty())
+ {
+ throw WSRP2ExceptionFactory.createWSException(MissingParameters.class, "Missing required portletContext in ExportPortlets.", null);
+ }
Registration registration = producer.getRegistrationOrFailIfInvalid(exportPortlets.getRegistrationContext());
UserContext userContext = exportPortlets.getUserContext();
checkUserAuthorization(userContext);
- boolean exportByValueRequired = exportPortlets.isExportByValueRequired();
+ boolean exportByValueRequired;
+ if (exportPortlets.isExportByValueRequired() != null)
+ {
+ exportByValueRequired = exportPortlets.isExportByValueRequired();
+ }
+ else
+ {
+ exportByValueRequired = false;
+ }
+
//check that the export manager can handle export by value
if (exportByValueRequired && !producer.getExportManager().supportExportByValue())
{
@@ -498,7 +512,7 @@
RegistrationLocal.setRegistration(registration);
//TODO: try catch here?
- ExportContext exportContext = producer.getExportManager().createExportContext(exportPortlets.isExportByValueRequired(), exportPortlets.getLifetime());
+ ExportContext exportContext = producer.getExportManager().createExportContext(exportByValueRequired, exportPortlets.getLifetime());
for (PortletContext portletContext : exportPortlets.getPortletContext())
{
@@ -530,76 +544,42 @@
exportedPortlets.add(exportedPortlet);
}
- //TODO: this is very messy, make this better
- catch (UnsupportedEncodingException e)
+ catch (Exception e)
{
- if(!failedPortletsMap.containsKey(e.getClass().toString()))
+ if (log.isWarnEnabled())
{
- List<String> portletHandles = new ArrayList<String>();
- portletHandles.add(portletContext.getPortletHandle());
-
- FailedPortlets failedPortlets = WSRPTypeFactory.createFailedPortlets(portletHandles, ErrorCodes.Codes.OPERATIONFAILED, "Error encoding the portlet for export.");
- failedPortletsMap.put(e.getClass().toString(), failedPortlets);
+ log.warn("Error occured while trying to export a portlet.", e);
}
- else
+
+ ErrorCodes.Codes errorCode;
+ String reason;
+ if (e instanceof NoSuchPortletException || e instanceof InvalidHandle)
{
- FailedPortlets failedPortlets = failedPortletsMap.get(e.getClass().toString());
- failedPortlets.getPortletHandles().add(portletContext.getPortletHandle());
+ errorCode = ErrorCodes.Codes.INVALIDHANDLE;
+ reason = "The specified portlet handle is invalid";
}
- }
- catch (NoSuchPortletException e)
- {
- if(!failedPortletsMap.containsKey(e.getClass().toString()))
+ else // default error message.
{
- List<String> portletHandles = new ArrayList<String>();
- portletHandles.add(portletContext.getPortletHandle());
-
- FailedPortlets failedPortlets = WSRPTypeFactory.createFailedPortlets(portletHandles, ErrorCodes.Codes.INVALIDHANDLE, "The specified porlet handle is invalid.");
- failedPortletsMap.put(e.getClass().toString(), failedPortlets);
+ errorCode = ErrorCodes.Codes.OPERATIONFAILED;
+ reason = "Error preparing portlet for export";
}
- else
+
+ if(!failedPortletsMap.containsKey(errorCode.name()))
{
- FailedPortlets failedPortlets = failedPortletsMap.get(e.getClass().toString());
- failedPortlets.getPortletHandles().add(portletContext.getPortletHandle());
- }
- }
- catch (InvalidHandle e)
- {
- if(!failedPortletsMap.containsKey(e.getClass().toString()))
- {
List<String> portletHandles = new ArrayList<String>();
portletHandles.add(portletContext.getPortletHandle());
- FailedPortlets failedPortlets = WSRPTypeFactory.createFailedPortlets(portletHandles, ErrorCodes.Codes.INVALIDHANDLE, "The specified portlet handle is invalid.");
- failedPortletsMap.put(e.getClass().toString(), failedPortlets);
+ FailedPortlets failedPortlets = WSRPTypeFactory.createFailedPortlets(portletHandles, errorCode, reason);
+ failedPortletsMap.put(errorCode.name(), failedPortlets);
}
else
{
- FailedPortlets failedPortlets = failedPortletsMap.get(e.getClass().toString());
+ FailedPortlets failedPortlets = failedPortletsMap.get(errorCode.name());
failedPortlets.getPortletHandles().add(portletContext.getPortletHandle());
}
}
- catch (Exception e)
- {
- if(!failedPortletsMap.containsKey(e.getClass().toString()))
- {
- List<String> portletHandles = new ArrayList<String>();
- portletHandles.add(portletContext.getPortletHandle());
-
- FailedPortlets failedPortlets = WSRPTypeFactory.createFailedPortlets(portletHandles, ErrorCodes.Codes.OPERATIONFAILED, "An exception occured when trying to export this portlet for export.");
- e.printStackTrace();
- failedPortletsMap.put(e.getClass().toString(), failedPortlets);
- }
- else
- {
- FailedPortlets failedPortlets = failedPortletsMap.get(e.getClass().toString());
- failedPortlets.getPortletHandles().add(portletContext.getPortletHandle());
- }
- }
}
-
-
//TODO: handle resourceLists better (should be using for things like errors)
ResourceList resourceList = null;
@@ -640,7 +620,15 @@
List<ImportedPortlet> importedPortlets = new ArrayList<ImportedPortlet>();
Map<String, ImportPortletsFailed> failedPortletsMap = new HashMap<String, ImportPortletsFailed>();
- ExportContext exportContext = producer.getExportManager().createExportContext(importContext);
+ ExportContext exportContext;
+ try
+ {
+ exportContext = producer.getExportManager().createExportContext(importContext);
+ }
+ catch (Exception e)
+ {
+ throw WSRPExceptionFactory.createWSException(OperationFailed.class, "Invalid ImportContext.", e);
+ }
for (ImportPortlet importPortlet : importPortletList)
{
@@ -665,19 +653,45 @@
}
catch (Exception e)
{
- e.printStackTrace();
- if(!failedPortletsMap.containsKey(e.getClass().toString()))
+ if (log.isWarnEnabled())
{
- List<String> importIds = new ArrayList<String>();
- importIds.add(importPortlet.getImportID());
+ log.warn("Error occured while trying to import a portlet.", e);
+ }
+
+ ErrorCodes.Codes errorCode;
+ String reason;
+ if (e instanceof NoSuchPortletException || e instanceof InvalidHandle)
+ {
+ errorCode = ErrorCodes.Codes.INVALIDHANDLE;
+ reason = "The specified portlet handle is invalid";
+ }
+ else if (e instanceof OperationFailed)
+ {
+ errorCode = ErrorCodes.Codes.OPERATIONFAILED;
+ reason = e.getMessage();
+ }
+ else if (e instanceof PortletInvokerException || e instanceof UnsupportedOperationException || e instanceof IllegalArgumentException)
+ {
+ errorCode = ErrorCodes.Codes.OPERATIONFAILED;
+ reason = "Error trying to create imported portlet.";
+ }
+ else // default error message.
+ {
+ errorCode = ErrorCodes.Codes.OPERATIONFAILED;
+ reason = "Error preparing portlet for export";
+ }
+
+ if(!failedPortletsMap.containsKey(errorCode.name()))
+ {
+ List<String> portleIDs = new ArrayList<String>();
+ portleIDs.add(importPortlet.getImportID());
- ImportPortletsFailed failedPortlets = WSRPTypeFactory.createImportPortletsFailed(importIds, ErrorCodes.Codes.OPERATIONFAILED, "The import portlet operation failed");
-
- failedPortletsMap.put(e.getClass().toString(), failedPortlets);
+ ImportPortletsFailed failedPortlets = WSRPTypeFactory.createImportPortletsFailed(portleIDs, errorCode, reason);
+ failedPortletsMap.put(errorCode.name(), failedPortlets);
}
else
{
- ImportPortletsFailed failedPortlets = failedPortletsMap.get(e.getClass().toString());
+ ImportPortletsFailed failedPortlets = failedPortletsMap.get(errorCode.name());
failedPortlets.getImportID().add(importPortlet.getImportID());
}
}
@@ -687,12 +701,6 @@
return WSRPTypeFactory.createImportPortletsResponse(importedPortlets, new ArrayList<ImportPortletsFailed>(failedPortletsMap.values()), resourceList);
}
- catch (Exception e)
- {
- //TODO: put proper error messages here
- e.printStackTrace();
- throw new NotYetImplemented();
- }
finally
{
RegistrationLocal.setRegistration(null);
@@ -711,8 +719,10 @@
}
catch (Exception e)
{
- //TODO: this method doesn't return anything, should we do more than just output the stacktrace?
- e.printStackTrace();
+ if (log.isWarnEnabled())
+ {
+ log.warn("Error occured while trying to perform a ReleaseExport", e);
+ }
}
//this method shouldn't return anything
Modified: components/wsrp/trunk/wsrp-producer-war/pom.xml
===================================================================
--- components/wsrp/trunk/wsrp-producer-war/pom.xml 2010-08-06 19:39:29 UTC (rev 3767)
+++ components/wsrp/trunk/wsrp-producer-war/pom.xml 2010-08-06 21:36:43 UTC (rev 3768)
@@ -417,11 +417,12 @@
<configuration>
<skip>${maven.test.skip}</skip>
<includes>
- <include>org/gatein/wsrp/protocol/v1/MarkupTestCase.class</include>
+ <include>org/gatein/wsrp/protocol/v1/MarkupTestCase.class</include>
<include>org/gatein/wsrp/protocol/v1/PortletManagementTestCase.class</include>
<include>org/gatein/wsrp/protocol/v1/ReleaseSessionTestCase.class</include>
<include>org/gatein/wsrp/protocol/v1/ServiceDescriptionTestCase.class</include>
<include>org/gatein/wsrp/protocol/v1/RegistrationTestCase.class</include>
+ <include>org/gatein/wsrp/protocol/v2/MarkupTestCase.class</include>
<!-- <include>org/gatein/wsrp/protocol/v2/ResourceTestCase.class</include> -->
<include>org/gatein/wsrp/protocol/v2/ServiceDescriptionTestCase.class</include>
<include>org/gatein/wsrp/protocol/v2/PortletManagementTestCase.class</include>
Modified: components/wsrp/trunk/wsrp-producer-war/src/test/java/org/gatein/wsrp/protocol/v2/PortletManagementTestCase.java
===================================================================
--- components/wsrp/trunk/wsrp-producer-war/src/test/java/org/gatein/wsrp/protocol/v2/PortletManagementTestCase.java 2010-08-06 19:39:29 UTC (rev 3767)
+++ components/wsrp/trunk/wsrp-producer-war/src/test/java/org/gatein/wsrp/protocol/v2/PortletManagementTestCase.java 2010-08-06 21:36:43 UTC (rev 3768)
@@ -22,11 +22,14 @@
******************************************************************************/
package org.gatein.wsrp.protocol.v2;
+import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.List;
+import org.gatein.exports.ExportManager;
import org.gatein.exports.data.ExportContext;
import org.gatein.exports.data.ExportPortletData;
+import org.gatein.exports.impl.ExportManagerImpl;
import org.gatein.wsrp.WSRPTypeFactory;
import org.gatein.wsrp.producer.WSRPProducerBaseTest;
import org.gatein.wsrp.servlet.ServletAccess;
@@ -45,12 +48,19 @@
import org.oasis.wsrp.v2.ExportPortletsResponse;
import org.oasis.wsrp.v2.ExportedPortlet;
import org.oasis.wsrp.v2.FailedPortlets;
+import org.oasis.wsrp.v2.GetMarkup;
import org.oasis.wsrp.v2.ImportPortlet;
import org.oasis.wsrp.v2.ImportPortlets;
import org.oasis.wsrp.v2.ImportPortletsResponse;
+import org.oasis.wsrp.v2.ImportedPortlet;
+import org.oasis.wsrp.v2.InvalidRegistration;
import org.oasis.wsrp.v2.Lifetime;
+import org.oasis.wsrp.v2.MarkupResponse;
+import org.oasis.wsrp.v2.MissingParameters;
+import org.oasis.wsrp.v2.OperationFailed;
import org.oasis.wsrp.v2.PortletContext;
import org.oasis.wsrp.v2.RegistrationContext;
+import org.oasis.wsrp.v2.RegistrationData;
import org.oasis.wsrp.v2.UserContext;
/**
@@ -60,7 +70,7 @@
@RunWith(Arquillian.class)
public class PortletManagementTestCase extends NeedPortletHandleTest
{
- private static final String TEST_BASIC_PORTLET_WAR = "test-basic-portlet.war";
+ private static final String TEST_BASIC_PORTLET_WAR = "test-markup-portlet.war";
public PortletManagementTestCase() throws Exception
@@ -99,37 +109,18 @@
}
}
- /*TO TEST
- * - export
- * - import
- * - releaseExport
- * - test a valid setup that the producer is no longer holding any data
- * - test an invalid setup that we get back the proper errors
- * - test with invalid portlet handles
- * - setExportLifeTime
- * - test a valid setup that the export lifetime has been updated
- * - test an invalid setup that we get an error back
- * - use an invalid export context
- * - use an export context that is set to export by value
- * - invalid registration, usercontext, etc..
+ /*TODO:
+ * - tests usercontexts (not sure exactly what needs to be tested for this)
+ * - test portlet states
*/
@Test
public void testExport() throws Exception
- {
- boolean exportByValue = true;
- Lifetime lifetime = null;
- UserContext userContext = null;
- RegistrationContext registrationContext = null;
-
+ {
String handle = getDefaultHandle();
- PortletContext defaultContext = WSRPTypeFactory.createPortletContext(handle);
+ List<PortletContext> portletContexts = createPortletContextList(handle);
- List<PortletContext> portletContexts = new ArrayList<PortletContext>();
- portletContexts.add(defaultContext);
-
- ExportPortlets exportPortlets = WSRPTypeFactory.createExportPortlets(registrationContext, portletContexts, userContext, lifetime, exportByValue);
-
+ ExportPortlets exportPortlets = createSimpleExportPortlets(portletContexts);
ExportPortletsResponse response = producer.exportPortlets(exportPortlets);
assertNotNull(response.getExportContext());
@@ -164,14 +155,13 @@
assertTrue(failedPortlet.getPortletHandles().contains(nonExistantHandle));
assertEquals("InvalidHandle",failedPortlet.getErrorCode().getLocalPart());
- assertTrue(failedPortlet.getPortletHandles().contains(nonExistantHandle));
}
@Test
public void testExportNullHandle() throws Exception
{
- String nonExistantHandle = null;
- List<PortletContext> portletContexts = createPortletContextList(nonExistantHandle);
+ String nullHandle = null;
+ List<PortletContext> portletContexts = createPortletContextList(nullHandle);
ExportPortlets exportPortlets = createSimpleExportPortlets(portletContexts);
@@ -184,11 +174,122 @@
assertEquals(1, response.getFailedPortlets().size());
FailedPortlets failedPortlet = response.getFailedPortlets().get(0);
- assertTrue(failedPortlet.getPortletHandles().contains(nonExistantHandle));
+ assertTrue(failedPortlet.getPortletHandles().contains(nullHandle));
assertEquals("InvalidHandle",failedPortlet.getErrorCode().getLocalPart());
- assertTrue(failedPortlet.getPortletHandles().contains(nonExistantHandle));
}
+ @Test
+ public void testExportNullExportContext() throws Exception
+ {
+ ExportPortlets exportPortlets = new ExportPortlets();
+ try
+ {
+ ExportPortletsResponse response = producer.exportPortlets(exportPortlets);
+ ExtendedAssert.fail("Should have thrown a MissingParameters fault if no portlets passed for export.");
+ }
+ catch (MissingParameters e)
+ {
+ //expected
+ }
+ }
+
+ @Test
+ public void testExportNullExportPortlets() throws Exception
+ {
+ try
+ {
+ ExportPortletsResponse response = producer.exportPortlets(null);
+ ExtendedAssert.fail("Should have failed if sending a null exportPortlet object");
+ }
+ catch (MissingParameters e)
+ {
+ //expected
+ }
+ }
+
+ @Test
+ public void testExportNoRegistrationWhenRequired() throws Exception
+ {
+ producer.getConfigurationService().getConfiguration().getRegistrationRequirements().setRegistrationRequired(true);
+
+ String handle = getDefaultHandle();
+ List<PortletContext> portletContexts = createPortletContextList(handle);
+
+ ExportPortlets exportPortlets = createSimpleExportPortlets(portletContexts);
+
+ try
+ {
+ ExportPortletsResponse response = producer.exportPortlets(exportPortlets);
+ ExtendedAssert.fail("ImportPortlets should fail if registration is required and non is provided");
+ }
+ catch (InvalidRegistration e)
+ {
+ //expected
+ }
+ }
+
+ @Test
+ public void testExportRegistrationRequired() throws Exception
+ {
+ producer.getConfigurationService().getConfiguration().getRegistrationRequirements().setRegistrationRequired(true);
+
+ RegistrationData registrationData = WSRPTypeFactory.createRegistrationData("CONSUMER", true);
+ RegistrationContext registrationContext = producer.register(registrationData);
+
+
+ List<PortletContext> portletContexts = createPortletContextList(getDefaultHandle());
+
+ boolean exportByValueRequired = true;
+ Lifetime lifetime = null;
+ UserContext userContext = null;
+
+ ExportPortlets exportPortlets = WSRPTypeFactory.createExportPortlets(registrationContext, portletContexts, userContext, lifetime, exportByValueRequired);
+
+ ExportPortletsResponse response = producer.exportPortlets(exportPortlets);
+
+ assertNotNull(response.getExportContext());
+ assertNull(response.getLifetime());
+ assertTrue(response.getFailedPortlets().isEmpty());
+
+ assertEquals(1, response.getExportedPortlet().size());
+
+ ExportedPortlet exportPortlet = response.getExportedPortlet().get(0);
+
+ assertEquals(getDefaultHandle(), exportPortlet.getPortletHandle());
+ }
+
+ @Test
+ public void testExports() throws Exception
+ {
+ String nullHandle = null;
+ String nonExistantHandle = "123FakeHandle";
+ String handle = getDefaultHandle();
+ List<PortletContext> portletContexts = createPortletContextList(nullHandle, nonExistantHandle, handle);
+
+ ExportPortlets exportPortlets = createSimpleExportPortlets(portletContexts);
+
+ ExportPortletsResponse response = producer.exportPortlets(exportPortlets);
+
+ assertNotNull(response.getExportContext());
+ assertNull(response.getLifetime());
+ assertFalse(response.getExportedPortlet().isEmpty());
+ assertFalse(response.getFailedPortlets().isEmpty());
+
+ assertEquals(1, response.getExportedPortlet().size());
+
+ //Should provide the same error code and so should only produce on set of FailedPortlets
+ assertEquals(1, response.getFailedPortlets().size());
+
+ ExportedPortlet exportPortlet = response.getExportedPortlet().get(0);
+ assertEquals(handle, exportPortlet.getPortletHandle());
+
+ FailedPortlets failedPortlets = response.getFailedPortlets().get(0);
+ assertEquals("InvalidHandle",failedPortlets.getErrorCode().getLocalPart());
+ assertEquals(2, failedPortlets.getPortletHandles().size());
+ assertTrue(failedPortlets.getPortletHandles().contains(nullHandle));
+ assertTrue(failedPortlets.getPortletHandles().contains(nonExistantHandle));
+ }
+
protected List<PortletContext> createPortletContextList(String... portletHandles)
{
List<PortletContext> portletContexts = new ArrayList<PortletContext>();
@@ -212,15 +313,243 @@
return WSRPTypeFactory.createExportPortlets(registrationContext, portletContexts, userContext, lifetime, exportByValueRequired);
}
-
@Test
public void testImport() throws Exception
{
String importID = "foo";
+
+ List<String> portletList = new ArrayList<String>();
+ portletList.add(getDefaultHandle());
+ byte[] importContext = new ExportContext().encodeAsBytes();
- ExportPortletData exportPortletData = new ExportPortletData(getDefaultHandle(), null);
+ ImportPortlet importPortlet = createSimpleImportPortlet(importID, getDefaultHandle());
+
+ List<ImportPortlet> importPortletsList = createImportPortletList(importPortlet);
+
+ ImportPortlets importPortlets = createSimpleImportPortlets(importContext, importPortletsList);
+ ImportPortletsResponse response = producer.importPortlets(importPortlets);
+
+ assertEquals(1,response.getImportedPortlets().size());
+ ImportedPortlet portlet = response.getImportedPortlets().get(0);
+
+ assertEquals(importID, portlet.getImportID());
+
+ PortletContext portletContext = portlet.getNewPortletContext();
+ //check that we are getting a new portlet handle back and not the original one
+ ExtendedAssert.assertNotSame(getDefaultHandle(), portletContext.getPortletHandle());
+
+ //check that the new portlet handle is valid and we can access the portlet
+ GetMarkup markup = createMarkupRequest(portletContext.getPortletHandle());
+ MarkupResponse markupResponse = producer.getMarkup(markup);
+ assertNotNull(markupResponse.getMarkupContext());
+ assertEquals("<p>symbol unset stock value: value unset</p>", new String(markupResponse.getMarkupContext().getItemString()));
+ }
+
+ @Test
+ public void testImportNoRegistrationWhenRequired() throws Exception
+ {
+ producer.getConfigurationService().getConfiguration().getRegistrationRequirements().setRegistrationRequired(true);
+
+ String importID = "foo";
+
+ List<String> portletList = new ArrayList<String>();
+ portletList.add(getDefaultHandle());
+ byte[] importContext = new ExportContext().encodeAsBytes();
+
+ ImportPortlet importPortlet = createSimpleImportPortlet(importID, getDefaultHandle());
+ List<ImportPortlet> importPortletsList = createImportPortletList(importPortlet);
+ ImportPortlets importPortlets = createSimpleImportPortlets(importContext, importPortletsList);
+
+ try
+ {
+ ImportPortletsResponse response = producer.importPortlets(importPortlets);
+ ExtendedAssert.fail("ImportPortlets should fail if registration is required and non is provided");
+ }
+ catch (InvalidRegistration e)
+ {
+ //expected
+ }
+ }
+
+ @Test
+ public void testImportRegistrationRequired() throws Exception
+ {
+ producer.getConfigurationService().getConfiguration().getRegistrationRequirements().setRegistrationRequired(true);
+ RegistrationData registrationData = WSRPTypeFactory.createRegistrationData("CONSUMER", true);
+ RegistrationContext registrationContext = producer.register(registrationData);
+
+ String importID = "foo";
+
+ Lifetime lifetime = null;
+ UserContext userContext = null;
+
+ List<String> portletList = new ArrayList<String>();
+ portletList.add(getDefaultHandle());
+ ExportContext exportContextData = new ExportContext();
+ byte[] importContext = exportContextData.encodeAsBytes();
+
+ ImportPortlet importPortlet = createSimpleImportPortlet(importID, getDefaultHandle());
+ List<ImportPortlet> importPortletsList = createImportPortletList(importPortlet);
+
+ ImportPortlets importPortlets = WSRPTypeFactory.createImportPortlets(registrationContext, importContext, importPortletsList, userContext, lifetime);
+ ImportPortletsResponse response = producer.importPortlets(importPortlets);
+
+ assertEquals(1,response.getImportedPortlets().size());
+ ImportedPortlet portlet = response.getImportedPortlets().get(0);
+
+ assertEquals(importID, portlet.getImportID());
+
+ PortletContext portletContext = portlet.getNewPortletContext();
+ //check that we are getting a new portlet handle back and not the original one
+ ExtendedAssert.assertNotSame(getDefaultHandle(), portletContext.getPortletHandle());
+
+ //check that the new portlet handle is valid and we can access the portlet
+ GetMarkup markup = createMarkupRequest(portletContext.getPortletHandle());
+ markup.setRegistrationContext(registrationContext);
+
+ MarkupResponse markupResponse = producer.getMarkup(markup);
+ assertNotNull(markupResponse.getMarkupContext());
+ assertEquals("<p>symbol unset stock value: value unset</p>", new String(markupResponse.getMarkupContext().getItemString()));
+ }
+
+ @Test
+ public void testImportNullImportContext() throws Exception
+ {
+ String importId = "importInvalidPortletContext";
+
+ ImportPortlet importPortlet = createSimpleImportPortlet(importId, getDefaultHandle());
+
+ byte[] importContext = null;
+ List<ImportPortlet> importPortletsList = createImportPortletList(importPortlet);
+
+ ImportPortlets importPortlets = createSimpleImportPortlets(importContext, importPortletsList);
+
+ try
+ {
+ ImportPortletsResponse response = producer.importPortlets(importPortlets);
+ ExtendedAssert.fail("Should have thrown an OperationFailedFault");
+ }
+ catch (OperationFailed e)
+ {
+ //expected
+ }
+ }
+
+ @Test
+ public void testImportInvalidImportContext() throws Exception
+ {
+ String importId = "importInvalidPortletContext";
+
+ ImportPortlet importPortlet = createSimpleImportPortlet(importId, getDefaultHandle());
+
+ byte[] importContext = new byte[]{1,2,3,'f','a','k','e'};
+ List<ImportPortlet> importPortletsList = createImportPortletList(importPortlet);
+
+ ImportPortlets importPortlets = createSimpleImportPortlets(importContext, importPortletsList);
+
+ try
+ {
+ ImportPortletsResponse response = producer.importPortlets(importPortlets);
+ ExtendedAssert.fail("Should have thrown an OperationFailedFault");
+ }
+ catch (OperationFailed e)
+ {
+ //expected
+ }
+ }
+
+ @Test
+ public void testImportNullExportData() throws Exception
+ {
+ String importId = "nullExportData";
+
+ ImportPortlet importPortlet = new ImportPortlet();
+ importPortlet.setExportData(null);
+ importPortlet.setImportID(importId);
+
+ List<ImportPortlet> importPortletsList = createImportPortletList(importPortlet);
+
+ byte[] importContext = new ExportContext().encodeAsBytes();
+
+ ImportPortlets importPortlets = createSimpleImportPortlets(importContext, importPortletsList);
+
+ ImportPortletsResponse response = producer.importPortlets(importPortlets);
+
+ assertNotNull(response.getImportFailed());
+ assertEquals(1, response.getImportFailed().size());
+
+ assertEquals(importId, response.getImportFailed().get(0).getImportID().get(0));
+ assertEquals("OperationFailed", response.getImportFailed().get(0).getErrorCode().getLocalPart());
+ }
+
+ @Test
+ public void testImportInvalidExportData() throws Exception
+ {
+ String importId = "invalidExportData";
+
+ ImportPortlet importPortlet = new ImportPortlet();
+ importPortlet.setExportData("fake_export_data_123".getBytes());
+ importPortlet.setImportID(importId);
+
+ List<ImportPortlet> importPortletsList = createImportPortletList(importPortlet);
+
+ ExportContext exportContextData = new ExportContext();
+ byte[] importContext = exportContextData.encodeAsBytes();
+
+ ImportPortlets importPortlets = createSimpleImportPortlets(importContext, importPortletsList);
+
+ ImportPortletsResponse response = producer.importPortlets(importPortlets);
+
+ assertNotNull(response.getImportFailed());
+ assertEquals(1, response.getImportFailed().size());
+
+ assertEquals(importId, response.getImportFailed().get(0).getImportID().get(0));
+ assertEquals("OperationFailed", response.getImportFailed().get(0).getErrorCode().getLocalPart());
+ }
+
+ @Test
+ public void testImportNonExistantPortletData() throws Exception
+ {
+ String importId = "invalidExportData";
+
+ ExportManager exportManager = new ExportManagerImpl();
+ ExportPortletData exportPortletData = exportManager.createExportPortletData(null, "non_existant_portlet_handle", null);
byte[] exportData = exportPortletData.encodeAsBytes();
+ ImportPortlet importPortlet = WSRPTypeFactory.createImportPortlet(importId, exportData);
+
+ List<ImportPortlet> importPortletsList = createImportPortletList(importPortlet);
+
+ ExportContext exportContextData = new ExportContext();
+ byte[] importContext = exportContextData.encodeAsBytes();
+
+ ImportPortlets importPortlets = createSimpleImportPortlets(importContext, importPortletsList);
+
+ ImportPortletsResponse response = producer.importPortlets(importPortlets);
+
+ assertNotNull(response.getImportFailed());
+ assertEquals(1, response.getImportFailed().size());
+
+ assertEquals(importId, response.getImportFailed().get(0).getImportID().get(0));
+ assertEquals("InvalidHandle", response.getImportFailed().get(0).getErrorCode().getLocalPart());
+ }
+
+ @Test
+ public void testImports() throws Exception
+ {
+ String importID = "foo";
+ String nullImportID = "null";
+ String invalidImportID = "invalid";
+
+ ExportManager exportManager = new ExportManagerImpl();
+ ExportPortletData exportPortletData = exportManager.createExportPortletData(null, getDefaultHandle(), null);
+ byte[] exportData = exportPortletData.encodeAsBytes();
+
+ byte[] nullExportData = null;
+
+ ExportPortletData invalidExportPortletData = exportManager.createExportPortletData(null, "InvalidHandle", null);
+ byte[] invalidExportData = invalidExportPortletData.encodeAsBytes();
+
Lifetime lifetime = null;
UserContext userContext = null;
RegistrationContext registrationContext = null;
@@ -230,17 +559,64 @@
ExportContext exportContextData = new ExportContext();
byte[] importContext = exportContextData.encodeAsBytes();
- ImportPortlet importPortlet = WSRPTypeFactory.createImportPorlet(importID, exportData);
+ ImportPortlet nullPortlet = new ImportPortlet();
+ nullPortlet.setImportID(nullImportID);
+ nullPortlet.setExportData(nullExportData);
+ ImportPortlet importPortlet = WSRPTypeFactory.createImportPortlet(importID, exportData);
+ ImportPortlet invalidPortlet = WSRPTypeFactory.createImportPortlet(invalidImportID, invalidExportData);
List<ImportPortlet> importPortletsList = new ArrayList<ImportPortlet>();
+ importPortletsList.add(invalidPortlet);
importPortletsList.add(importPortlet);
+ importPortletsList.add(nullPortlet);
ImportPortlets importPortlets = WSRPTypeFactory.createImportPortlets(registrationContext, importContext, importPortletsList, userContext, lifetime);
ImportPortletsResponse response = producer.importPortlets(importPortlets);
+
+ assertEquals(2, response.getImportFailed().size());
+
+ assertEquals(1,response.getImportedPortlets().size());
+
+ ImportedPortlet portlet = response.getImportedPortlets().get(0);
+ assertEquals(importID, portlet.getImportID());
+
+ PortletContext portletContext = portlet.getNewPortletContext();
+ //check that we are getting a new portlet handle back and not the original one
+ ExtendedAssert.assertNotSame(getDefaultHandle(), portletContext.getPortletHandle());
+
+ //check that the new portlet handle is valid and we can access the portlet
+ GetMarkup markup = createMarkupRequest(portletContext.getPortletHandle());
+ MarkupResponse markupResponse = producer.getMarkup(markup);
+ assertNotNull(markupResponse.getMarkupContext());
+ assertEquals("<p>symbol unset stock value: value unset</p>", new String(markupResponse.getMarkupContext().getItemString()));
}
+ protected ImportPortlet createSimpleImportPortlet(String importId, String handle) throws UnsupportedEncodingException
+ {
+ ExportPortletData exportPortletData = new ExportPortletData(handle, null);
+ byte[] exportData = exportPortletData.encodeAsBytes();
+ return WSRPTypeFactory.createImportPortlet(importId, exportData);
+ }
+ protected List<ImportPortlet> createImportPortletList(ImportPortlet... importPortlets)
+ {
+ List<ImportPortlet> importPortletList = new ArrayList<ImportPortlet>();
+
+ for (ImportPortlet importPortlet : importPortlets)
+ {
+ importPortletList.add(importPortlet);
+ }
+ return importPortletList;
+ }
+ protected ImportPortlets createSimpleImportPortlets(byte[] importContext, List<ImportPortlet> importPortletsList)
+ {
+ Lifetime lifetime = null;
+ UserContext userContext = null;
+ RegistrationContext registrationContext = null;
+
+ return WSRPTypeFactory.createImportPortlets(registrationContext, importContext, importPortletsList, userContext, lifetime);
+ }
@Override
protected String getMostUsedPortletWARFileName()
13 years, 11 months