diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/print/CutyPrint.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/print/CutyPrint.java index 4a61bec82..a74d62552 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/print/CutyPrint.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/print/CutyPrint.java @@ -29,6 +29,8 @@ import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; +import java.net.InetAddress; +import java.net.UnknownHostException; import java.text.SimpleDateFormat; import java.util.Collections; import java.util.Date; @@ -158,9 +160,9 @@ public class CutyPrint { })); // Add capture destination callback URL - captureString += " --url=http://" + request.getLocalName() + ":" + String hostName = resolveLocalHost(request); + captureString += " --url=http://" + hostName + ":" + request.getLocalPort() + url; - if (parameters != null) { captureString += "?"; for (String key : parameters.keySet()) { @@ -237,6 +239,15 @@ public class CutyPrint { } } + private static String resolveLocalHost(HttpServletRequest request) { + try { + InetAddress host = InetAddress.getByName(request.getLocalName()); + return host.getHostName(); + } catch (UnknownHostException e) { + throw new RuntimeException(e); + } + } + private static int calculatePlannerWidthForPrintingScreen(Planner planner, int minWidthForTaskNameColumn) { if (planner != null && planner.getTimeTracker() != null) {