486511 - Server.getURI() returns wrong scheme on SSL/HTTPS
diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/Server.java b/jetty-server/src/main/java/org/eclipse/jetty/server/Server.java
index 1d81e6a..51c145d 100644
--- a/jetty-server/src/main/java/org/eclipse/jetty/server/Server.java
+++ b/jetty-server/src/main/java/org/eclipse/jetty/server/Server.java
@@ -654,7 +654,6 @@
     /**
      * @return The URI of the first {@link NetworkConnector} and first {@link ContextHandler}, or null
      */
-    @SuppressWarnings("resource")
     public URI getURI()
     {
         NetworkConnector connector=null;
@@ -674,7 +673,10 @@
 
         try
         {
-            String scheme=connector.getDefaultConnectionFactory().getProtocol().startsWith("SSL-")?"https":"http";
+            String protocol = connector.getDefaultConnectionFactory().getProtocol();
+            String scheme="http";
+            if (protocol.startsWith("SSL-") || protocol.equals("SSL"))
+                scheme = "https";
 
             String host=connector.getHost();
             if (context!=null && context.getVirtualHosts()!=null && context.getVirtualHosts().length>0)
diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SSLSelectChannelConnectorLoadTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SSLSelectChannelConnectorLoadTest.java
index b5fde36..a6d8aed 100644
--- a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SSLSelectChannelConnectorLoadTest.java
+++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SSLSelectChannelConnectorLoadTest.java
@@ -18,12 +18,16 @@
 
 package org.eclipse.jetty.server.ssl;
 
+import static org.hamcrest.Matchers.is;
+import static org.junit.Assert.assertThat;
+
 import java.io.BufferedReader;
 import java.io.FileInputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.InputStreamReader;
 import java.io.OutputStream;
+import java.net.URI;
 import java.security.KeyStore;
 import java.util.Arrays;
 import java.util.Random;
@@ -91,6 +95,15 @@
         server.stop();
         server.join();
     }
+    
+    @Test
+    public void testGetURI()
+    {
+        URI uri = server.getURI();
+        assertThat("Server.uri.scheme", uri.getScheme(), is("https"));
+        assertThat("Server.uri.port", uri.getPort(), is(connector.getLocalPort()));
+        assertThat("Server.uri.path", uri.getPath(), is("/"));
+    }
 
     @Test
     public void testLongLivedConnections() throws Exception