Rename packages in order to make future stable documentation clearer.
[lgpl/argeo-commons.git] / org.argeo.cms.ui / src / org / argeo / cms / ui / AbstractCmsEntryPoint.java
index 5c59d601bd4996a00841afe6b4a6b26468448f32..6b61ae3967e9895349091b5745d2bad8e06bb8c6 100644 (file)
@@ -23,6 +23,7 @@ import javax.servlet.http.HttpServletRequest;
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
+import org.argeo.api.NodeConstants;
 import org.argeo.cms.CmsException;
 import org.argeo.cms.auth.CurrentUser;
 import org.argeo.cms.auth.HttpRequestCallback;
@@ -31,7 +32,6 @@ import org.argeo.eclipse.ui.specific.UiContext;
 import org.argeo.jcr.JcrUtils;
 import org.argeo.naming.AuthPassword;
 import org.argeo.naming.SharedSecret;
-import org.argeo.node.NodeConstants;
 import org.eclipse.rap.rwt.RWT;
 import org.eclipse.rap.rwt.application.AbstractEntryPoint;
 import org.eclipse.rap.rwt.client.WebClient;
@@ -302,8 +302,10 @@ public abstract class AbstractCmsEntryPoint extends AbstractEntryPoint implement
                                Node newNode = null;
                                if (session.nodeExists(newNodePath))
                                        newNode = session.getNode(newNodePath);
-                               else
-                                       throw new CmsException("Data " + newNodePath + " does not exist");
+                               else {
+//                                     throw new CmsException("Data " + newNodePath + " does not exist");
+                                       newNode = null;
+                               }
                                setNode(newNode);
                        }
                        String title = publishMetaData(getNode());
@@ -326,7 +328,7 @@ public abstract class AbstractCmsEntryPoint extends AbstractEntryPoint implement
        private String publishMetaData(Node node) throws RepositoryException {
                // Title
                String title;
-               if (node.isNodeType(NodeType.MIX_TITLE) && node.hasProperty(Property.JCR_TITLE))
+               if (node != null && node.isNodeType(NodeType.MIX_TITLE) && node.hasProperty(Property.JCR_TITLE))
                        title = node.getProperty(Property.JCR_TITLE).getString() + " - " + getBaseTitle();
                else
                        title = getBaseTitle();
@@ -336,6 +338,8 @@ public abstract class AbstractCmsEntryPoint extends AbstractEntryPoint implement
                        return null;
 
                StringBuilder js = new StringBuilder();
+               if (title == null)
+                       title = "";
                title = title.replace("'", "\\'");// sanitize
                js.append("document.title = '" + title + "';");
                jsExecutor.execute(js.toString());