SLING-5126 - Provide information on the Sightly REPL Java tab on how to enable source code generation

* added link to engine configuration

git-svn-id: https://svn.apache.org/repos/asf/sling/trunk@1707473 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/src/main/java/org/apache/sling/scripting/sightly/repl/REPLJavaSourceCodeServlet.java b/src/main/java/org/apache/sling/scripting/sightly/repl/REPLJavaSourceCodeServlet.java
index 35411c3..e8a1939 100644
--- a/src/main/java/org/apache/sling/scripting/sightly/repl/REPLJavaSourceCodeServlet.java
+++ b/src/main/java/org/apache/sling/scripting/sightly/repl/REPLJavaSourceCodeServlet.java
@@ -63,7 +63,18 @@
     @Override
     protected void doGet(SlingHttpServletRequest request, SlingHttpServletResponse response) throws ServletException, IOException {
         response.setContentType("text/plain");
-        response.getWriter().write(getClassSourceCode());
+        String sourceCode = getClassSourceCode();
+        if (sourceCode.length() == 0) {
+            StringBuilder configurationLink = new StringBuilder();
+            configurationLink.append(request.getScheme()).append("://").append(request.getServerName());
+            if (request.getServerPort() != 80) {
+                configurationLink.append(":").append(request.getServerPort());
+            }
+            configurationLink.append(request.getContextPath()).append("/system/console/configMgr/org.apache.sling.scripting.sightly.impl.engine.SightlyEngineConfiguration");
+            response.getWriter().write("/**\n * Please enable development mode at\n * " + configurationLink.toString() + "\n */");
+        } else {
+            response.getWriter().write(getClassSourceCode());
+        }
     }
 
     private String getClassSourceCode() {
@@ -74,7 +85,6 @@
                     return IOUtils.toString(new FileInputStream(classFile), "UTF-8");
                 } catch (IOException e) {
                     LOGGER.error("Unable to read file " + classFile.getAbsolutePath(), e);
-                    return "";
                 }
             }
         }