X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Finternal%2Fhttp%2FLinkServlet.java;h=574b09a8f867d24873a6a96457d41b5d28537876;hb=d169026cb1939009fd90ac46a11f480cb3d803c0;hp=3c290e17ae57f8a09484f82622152150849055b4;hpb=02a6354c17ddb160513580e9e3c7826d9475b177;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms/src/org/argeo/cms/internal/http/LinkServlet.java b/org.argeo.cms/src/org/argeo/cms/internal/http/LinkServlet.java index 3c290e17a..574b09a8f 100644 --- a/org.argeo.cms/src/org/argeo/cms/internal/http/LinkServlet.java +++ b/org.argeo.cms/src/org/argeo/cms/internal/http/LinkServlet.java @@ -3,7 +3,6 @@ package org.argeo.cms.internal.http; import static javax.jcr.Property.JCR_DESCRIPTION; import static javax.jcr.Property.JCR_LAST_MODIFIED; import static javax.jcr.Property.JCR_TITLE; -import static org.argeo.cms.CmsTypes.CMS_IMAGE; import java.io.IOException; import java.io.PrintWriter; @@ -26,15 +25,15 @@ import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import org.argeo.api.NodeConstants; +import org.argeo.api.NodeUtils; import org.argeo.cms.CmsException; import org.argeo.jcr.JcrUtils; -import org.argeo.node.NodeConstants; -import org.argeo.node.NodeUtils; import org.osgi.framework.BundleContext; import org.osgi.framework.FrameworkUtil; import org.osgi.framework.ServiceReference; -class LinkServlet extends HttpServlet { +public class LinkServlet extends HttpServlet { private final BundleContext bc = FrameworkUtil.getBundle(getClass()).getBundleContext(); private static final long serialVersionUID = 3749990143146845708L; @@ -89,7 +88,7 @@ class LinkServlet extends HttpServlet { @Override public Session run() throws Exception { Collection> srs = bc.getServiceReferences(Repository.class, - "(" + NodeConstants.CN + "=" + NodeConstants.NODE + ")"); + "(" + NodeConstants.CN + "=" + NodeConstants.EGO_REPOSITORY + ")"); Repository repository = bc.getService(srs.iterator().next()); return repository.login(); } @@ -102,14 +101,15 @@ class LinkServlet extends HttpServlet { : null; String url = getCanonicalUrl(node, request); String imgUrl = null; - loop: for (NodeIterator it = node.getNodes(); it.hasNext();) { - // Takes the first found cms:image - Node child = it.nextNode(); - if (child.isNodeType(CMS_IMAGE)) { - imgUrl = getDataUrl(child, request); - break loop; - } - } + // TODO support images +// loop: for (NodeIterator it = node.getNodes(); it.hasNext();) { +// // Takes the first found cms:image +// Node child = it.nextNode(); +// if (child.isNodeType(CMS_IMAGE)) { +// imgUrl = getDataUrl(child, request); +// break loop; +// } +// } StringBuilder buf = new StringBuilder(); buf.append(""); buf.append(""); @@ -196,7 +196,7 @@ class LinkServlet extends HttpServlet { private String getDataUrl(Node node, HttpServletRequest request) throws RepositoryException { try { StringBuilder buf = getServerBaseUrl(request); - buf.append(NodeUtils.getDataPath(NodeConstants.NODE, node)); + buf.append(NodeUtils.getDataPath(NodeConstants.EGO_REPOSITORY, node)); return new URL(buf.toString()).toString(); } catch (MalformedURLException e) { throw new CmsException("Cannot build data URL for " + node, e); @@ -247,7 +247,7 @@ class LinkServlet extends HttpServlet { Subject subject = new Subject(); LoginContext lc; try { - lc = new LoginContext(NodeConstants.LOGIN_CONTEXT_USER, subject); + lc = new LoginContext(NodeConstants.LOGIN_CONTEXT_ANONYMOUS, subject); lc.login(); return subject; } catch (LoginException e) {