X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.app.servlet.odk%2Fsrc%2Forg%2Fargeo%2Fapp%2Fservlet%2Fodk%2FOdkManifestServlet.java;h=2c62ba10cfa647321a6eae52581db4e84a023561;hb=597c7013edda6cd7d846761233bc57e08ef5f99c;hp=f296170778a381e05cfbf61a52751ee8bb12839a;hpb=6c42d7ee01c29a184390a3fd789ebdf5cde84a00;p=gpl%2Fargeo-suite.git
diff --git a/org.argeo.app.servlet.odk/src/org/argeo/app/servlet/odk/OdkManifestServlet.java b/org.argeo.app.servlet.odk/src/org/argeo/app/servlet/odk/OdkManifestServlet.java
index f296170..2c62ba1 100644
--- a/org.argeo.app.servlet.odk/src/org/argeo/app/servlet/odk/OdkManifestServlet.java
+++ b/org.argeo.app.servlet.odk/src/org/argeo/app/servlet/odk/OdkManifestServlet.java
@@ -33,10 +33,11 @@ import org.argeo.app.api.EntityMimeType;
import org.argeo.app.odk.OrxManifestName;
import org.argeo.cms.auth.RemoteAuthUtils;
import org.argeo.cms.servlet.ServletHttpRequest;
+import org.argeo.cms.servlet.ServletUtils;
+import org.argeo.cms.util.CsvWriter;
+import org.argeo.cms.util.DigestUtils;
import org.argeo.jcr.Jcr;
import org.argeo.jcr.JcrException;
-import org.argeo.util.CsvWriter;
-import org.argeo.util.DigestUtils;
/** Describe additional files. */
public class OdkManifestServlet extends HttpServlet {
@@ -53,9 +54,12 @@ public class OdkManifestServlet extends HttpServlet {
if (pathInfo.startsWith("//"))
pathInfo = pathInfo.substring(1);
- String serverName = req.getServerName();
- int serverPort = req.getServerPort();
- String protocol = serverPort == 443 || req.isSecure() ? "https" : "http";
+// String serverName = req.getServerName();
+// int serverPort = req.getServerPort();
+// String protocol = serverPort == 443 || req.isSecure() ? "https" : "http";
+// String baseServer = protocol + "://" + serverName
+// + (serverPort == 80 || serverPort == 443 ? "" : ":" + serverPort);
+ StringBuilder baseServer = ServletUtils.getRequestUrlBase(req);
Session session = RemoteAuthUtils.doAs(() -> Jcr.login(repository, null), new ServletHttpRequest(req));
@@ -98,9 +102,8 @@ public class OdkManifestServlet extends HttpServlet {
writer.append("md5sum:" + DigestUtils.toHexString(out.getMessageDigest().digest()));
writer.append("");
}
- writer.append("" + protocol + "://" + serverName
- + (serverPort == 80 || serverPort == 443 ? "" : ":" + serverPort)
- + "/api/odk/formManifest" + file.getPath() + "");
+ writer.append("" + baseServer + "/api/odk/formManifest" + file.getPath()
+ + "");
}
writer.append("");
}