mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-07 17:49:17 +00:00
Merged V2.1 to HEAD
6515: Fix for AWC-1362 (system error page when clicking on space that doesn't exist in navigator) 6516: Fix for AR-1688 - Vista 6518: Fix for AWC-1479, AWC-1199 and AWC-426 (javascript insertion into forum posts security related fixes) limit to subset of safe tags for posting 6519: Fix AR-1690 Web Scripts url.args is missing even though it's documented in WIKI 6520: Fix for AWC-1271 (component generator config ignored for associations) 6521: Fix AWC-1492 Some included javascript files in template/webscripts use the wrong app context path i.e. /alfresco when the app is called /alfzip 6522: Build fix 6523: - Fix rendering of tasks with no description in office portlets 6524: Added thread pool for index merging (AR-1633, AR-1579) 6525: One more fix for rendering of tasks with no description in office portlets 6527: Renamed axis jar to reflect version number. 6528: WebServices query cache refactoring git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@6741 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -30,6 +30,7 @@ import java.util.Iterator;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import javax.faces.application.FacesMessage;
|
||||
import javax.faces.component.UIComponent;
|
||||
import javax.faces.context.FacesContext;
|
||||
import javax.faces.context.ResponseWriter;
|
||||
@@ -37,9 +38,11 @@ import javax.faces.el.ValueBinding;
|
||||
import javax.faces.event.AbortProcessingException;
|
||||
import javax.faces.event.ActionEvent;
|
||||
import javax.faces.event.FacesEvent;
|
||||
import javax.transaction.UserTransaction;
|
||||
|
||||
import org.alfresco.service.cmr.repository.InvalidNodeRefException;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.cmr.repository.NodeService;
|
||||
import org.alfresco.web.app.Application;
|
||||
import org.alfresco.web.app.servlet.FacesHelper;
|
||||
import org.alfresco.web.bean.BrowseBean;
|
||||
@@ -183,17 +186,44 @@ public class UINavigator extends SelfRenderingComponent
|
||||
case NODE_SELECTED:
|
||||
{
|
||||
// a node was clicked in the tree
|
||||
boolean nodeExists = true;
|
||||
NodeRef nodeClicked = new NodeRef(navEvent.getItem());
|
||||
|
||||
// setup the context to make the node the current node
|
||||
BrowseBean bb = (BrowseBean)FacesHelper.getManagedBean(
|
||||
context, BrowseBean.BEAN_NAME);
|
||||
if (bb != null)
|
||||
// make sure the node exists still before navigating to it
|
||||
UserTransaction tx = null;
|
||||
try
|
||||
{
|
||||
if (logger.isDebugEnabled())
|
||||
logger.debug("Selected node: " + nodeClicked);
|
||||
tx = Repository.getUserTransaction(context, true);
|
||||
tx.begin();
|
||||
|
||||
bb.clickSpace(nodeClicked);
|
||||
NodeService nodeSvc = Repository.getServiceRegistry(
|
||||
context).getNodeService();
|
||||
nodeExists = nodeSvc.exists(nodeClicked);
|
||||
|
||||
tx.commit();
|
||||
}
|
||||
catch (Throwable err)
|
||||
{
|
||||
try { if (tx != null) {tx.rollback();} } catch (Exception tex) {}
|
||||
}
|
||||
|
||||
if (nodeExists)
|
||||
{
|
||||
// setup the context to make the node the current node
|
||||
BrowseBean bb = (BrowseBean)FacesHelper.getManagedBean(
|
||||
context, BrowseBean.BEAN_NAME);
|
||||
if (bb != null)
|
||||
{
|
||||
if (logger.isDebugEnabled())
|
||||
logger.debug("Selected node: " + nodeClicked);
|
||||
|
||||
bb.clickSpace(nodeClicked);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
String msg = Application.getMessage(context, "navigator_node_deleted");
|
||||
Utils.addErrorMessage(msg);
|
||||
}
|
||||
|
||||
break;
|
||||
|
@@ -121,8 +121,17 @@ public class UIAssociation extends PropertySheetItem
|
||||
private void generateControl(FacesContext context, UIPropertySheet propSheet,
|
||||
AssociationDefinition assocDef)
|
||||
{
|
||||
// get the custom component generator (if one)
|
||||
String componentGeneratorName = this.getComponentGenerator();
|
||||
|
||||
// use the default component generator if there wasn't an overridden one
|
||||
if (componentGeneratorName == null)
|
||||
{
|
||||
componentGeneratorName = RepoConstants.GENERATOR_ASSOCIATION;
|
||||
}
|
||||
|
||||
UIAssociationEditor control = (UIAssociationEditor)FacesHelper.getComponentGenerator(
|
||||
context, RepoConstants.GENERATOR_ASSOCIATION).generateAndAdd(context, propSheet, this);
|
||||
context, componentGeneratorName).generateAndAdd(context, propSheet, this);
|
||||
|
||||
if (logger.isDebugEnabled())
|
||||
logger.debug("Created control " + control + "(" +
|
||||
|
@@ -121,8 +121,17 @@ public class UIChildAssociation extends PropertySheetItem
|
||||
private void generateControl(FacesContext context, UIPropertySheet propSheet,
|
||||
AssociationDefinition assocDef)
|
||||
{
|
||||
// get the custom component generator (if one)
|
||||
String componentGeneratorName = this.getComponentGenerator();
|
||||
|
||||
// use the default component generator if there wasn't an overridden one
|
||||
if (componentGeneratorName == null)
|
||||
{
|
||||
componentGeneratorName = RepoConstants.GENERATOR_CHILD_ASSOCIATION;
|
||||
}
|
||||
|
||||
UIChildAssociationEditor control = (UIChildAssociationEditor)FacesHelper.getComponentGenerator(
|
||||
context, RepoConstants.GENERATOR_CHILD_ASSOCIATION).generateAndAdd(context, propSheet, this);
|
||||
context, componentGeneratorName).generateAndAdd(context, propSheet, this);
|
||||
|
||||
if (logger.isDebugEnabled())
|
||||
logger.debug("Created control " + control + "(" +
|
||||
|
Reference in New Issue
Block a user