You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by ff...@apache.org on 2012/05/28 01:49:56 UTC

svn commit: r1343116 - in /cxf/trunk/rt/transports/http-jetty/src: main/java/org/apache/cxf/transport/http_jetty/ main/java/org/apache/cxf/transport/http_jetty/spring/ main/resources/schemas/configuration/ test/java/org/apache/cxf/transport/http_jetty/...

Author: ffang
Date: Sun May 27 23:49:55 2012
New Revision: 1343116

URL: http://svn.apache.org/viewvc?rev=1343116&view=rev
Log:
[CXF-4338]config option to allow suppression of server version display in http response headers

Modified:
    cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/JettyHTTPServerEngine.java
    cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/spring/JettyHTTPServerEngineBeanDefinitionParser.java
    cxf/trunk/rt/transports/http-jetty/src/main/resources/schemas/configuration/http-jetty.xsd
    cxf/trunk/rt/transports/http-jetty/src/test/java/org/apache/cxf/transport/http_jetty/spring/ApplicationContextTest.java
    cxf/trunk/rt/transports/http-jetty/src/test/java/org/apache/cxf/transport/http_jetty/spring/bean.properties
    cxf/trunk/rt/transports/http-jetty/src/test/java/org/apache/cxf/transport/http_jetty/spring/beans-props.xml
    cxf/trunk/rt/transports/http-jetty/src/test/java/org/apache/cxf/transport/http_jetty/spring/beans.xml

Modified: cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/JettyHTTPServerEngine.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/JettyHTTPServerEngine.java?rev=1343116&r1=1343115&r2=1343116&view=diff
==============================================================================
--- cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/JettyHTTPServerEngine.java (original)
+++ cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/JettyHTTPServerEngine.java Sun May 27 23:49:55 2012
@@ -88,6 +88,7 @@ public class JettyHTTPServerEngine
     private Boolean isReuseAddress = true;
     private Boolean continuationsEnabled = true;
     private int maxIdleTime = 200000;
+    private Boolean sendServerVersion = true;
     private int servantCount;
     private Server server;
     private Connector connector;
@@ -283,6 +284,8 @@ public class JettyHTTPServerEngine
             // create a new jetty server instance if there is no server there            
             server = new Server();
             
+            server.setSendServerVersion(getSendServerVersion());
+            
             if (mBeanContainer != null) {
                 server.getContainer().addEventListener(mBeanContainer);
             }
@@ -746,5 +749,13 @@ public class JettyHTTPServerEngine
     public ThreadingParameters getThreadingParameters() {
         return threadingParameters;
     }
+
+    public void setSendServerVersion(Boolean sendServerVersion) {
+        this.sendServerVersion = sendServerVersion;
+    }
+
+    public Boolean getSendServerVersion() {
+        return sendServerVersion;
+    }
     
 }

Modified: cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/spring/JettyHTTPServerEngineBeanDefinitionParser.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/spring/JettyHTTPServerEngineBeanDefinitionParser.java?rev=1343116&r1=1343115&r2=1343116&view=diff
==============================================================================
--- cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/spring/JettyHTTPServerEngineBeanDefinitionParser.java (original)
+++ cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/spring/JettyHTTPServerEngineBeanDefinitionParser.java Sun May 27 23:49:55 2012
@@ -75,6 +75,12 @@ public class JettyHTTPServerEngineBeanDe
         if (maxIdleTimeStr != null && !"".equals(maxIdleTimeStr.trim())) {
             bean.addPropertyValue("maxIdleTime", maxIdleTimeStr);
         }
+        
+        String sendServerVersionStr = element.getAttribute("sendServerVersion");
+        if (sendServerVersionStr != null && sendServerVersionStr.length() > 0) {
+            bean.addPropertyValue("sendServerVersion", sendServerVersionStr);
+        }
+        
         ValueHolder busValue = ctx.getContainingBeanDefinition()
             .getConstructorArgumentValues().getArgumentValue(0, Bus.class);
         bean.addPropertyValue("bus", busValue.getValue());

Modified: cxf/trunk/rt/transports/http-jetty/src/main/resources/schemas/configuration/http-jetty.xsd
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/transports/http-jetty/src/main/resources/schemas/configuration/http-jetty.xsd?rev=1343116&r1=1343115&r2=1343116&view=diff
==============================================================================
--- cxf/trunk/rt/transports/http-jetty/src/main/resources/schemas/configuration/http-jetty.xsd (original)
+++ cxf/trunk/rt/transports/http-jetty/src/main/resources/schemas/configuration/http-jetty.xsd Sun May 27 23:49:55 2012
@@ -152,6 +152,12 @@
                 <xs:documentation>Specifies the maximum idle time for a jetty connection. The timer is reset whenever there are any read or write actions on the underlying stream.</xs:documentation> 
            </xs:annotation>
        </xs:attribute>
+       <xs:attribute name="sendServerVersion" type="ptp:ParameterizedBoolean">
+           <xs:annotation>
+                <xs:documentation>Specifies if Jetty Server prevent the Server: http header being sent. Server: http header will be sent if this attribute is set to true or omitted, won't be sent otherwise.</xs:documentation>
+             </xs:annotation>
+       </xs:attribute>
+
     </xs:complexType>
     
     <xs:complexType name="JettyHTTPServerEngineFactoryConfigType">

Modified: cxf/trunk/rt/transports/http-jetty/src/test/java/org/apache/cxf/transport/http_jetty/spring/ApplicationContextTest.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/transports/http-jetty/src/test/java/org/apache/cxf/transport/http_jetty/spring/ApplicationContextTest.java?rev=1343116&r1=1343115&r2=1343116&view=diff
==============================================================================
--- cxf/trunk/rt/transports/http-jetty/src/test/java/org/apache/cxf/transport/http_jetty/spring/ApplicationContextTest.java (original)
+++ cxf/trunk/rt/transports/http-jetty/src/test/java/org/apache/cxf/transport/http_jetty/spring/ApplicationContextTest.java Sun May 27 23:49:55 2012
@@ -132,6 +132,7 @@ public class ApplicationContextTest exte
         
         engine = (JettyHTTPServerEngine)jd2.getEngine();
         assertEquals(40000, engine.getMaxIdleTime());
+        assertFalse(engine.getSendServerVersion());
         assertEquals(99, engine.getThreadingParameters().getMinThreads());
         assertEquals(777, engine.getThreadingParameters().getMaxThreads());
         assertTrue("The engine should support session manager", engine.isSessionSupport());

Modified: cxf/trunk/rt/transports/http-jetty/src/test/java/org/apache/cxf/transport/http_jetty/spring/bean.properties
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/transports/http-jetty/src/test/java/org/apache/cxf/transport/http_jetty/spring/bean.properties?rev=1343116&r1=1343115&r2=1343116&view=diff
==============================================================================
--- cxf/trunk/rt/transports/http-jetty/src/test/java/org/apache/cxf/transport/http_jetty/spring/bean.properties (original)
+++ cxf/trunk/rt/transports/http-jetty/src/test/java/org/apache/cxf/transport/http_jetty/spring/bean.properties Sun May 27 23:49:55 2012
@@ -26,4 +26,5 @@ engine.port.zero.minThreads=21
 engine.port.zero.maxThreads=389
 engine.port.nine.one.minThreads=99
 engine.port.nine.one.maxThreads=777
-engine.port.nine.one.maxIdle=40000
\ No newline at end of file
+engine.port.nine.one.maxIdle=40000
+engine.port.nine.one.sendServerVersion=false

Modified: cxf/trunk/rt/transports/http-jetty/src/test/java/org/apache/cxf/transport/http_jetty/spring/beans-props.xml
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/transports/http-jetty/src/test/java/org/apache/cxf/transport/http_jetty/spring/beans-props.xml?rev=1343116&r1=1343115&r2=1343116&view=diff
==============================================================================
--- cxf/trunk/rt/transports/http-jetty/src/test/java/org/apache/cxf/transport/http_jetty/spring/beans-props.xml (original)
+++ cxf/trunk/rt/transports/http-jetty/src/test/java/org/apache/cxf/transport/http_jetty/spring/beans-props.xml Sun May 27 23:49:55 2012
@@ -80,7 +80,7 @@
 	      <hj:threadingParameters minThreads="${engine.port.zero.minThreads}" maxThreads="${engine.port.zero.maxThreads}"/>
 	   </hj:engine>
 	   
-	   <hj:engine port="$(engine.port.nine.one)" maxIdleTime="$(engine.port.nine.one.maxIdle)">
+	   <hj:engine port="$(engine.port.nine.one)" maxIdleTime="$(engine.port.nine.one.maxIdle)" sendServerVersion="$(engine.port.nine.one.sendServerVersion)">
 	       <hj:threadingParameters minThreads="${engine.port.nine.one.minThreads}"
 	        maxThreads="${engine.port.nine.one.maxThreads}"/>	      
 	     <hj:connector>

Modified: cxf/trunk/rt/transports/http-jetty/src/test/java/org/apache/cxf/transport/http_jetty/spring/beans.xml
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/transports/http-jetty/src/test/java/org/apache/cxf/transport/http_jetty/spring/beans.xml?rev=1343116&r1=1343115&r2=1343116&view=diff
==============================================================================
--- cxf/trunk/rt/transports/http-jetty/src/test/java/org/apache/cxf/transport/http_jetty/spring/beans.xml (original)
+++ cxf/trunk/rt/transports/http-jetty/src/test/java/org/apache/cxf/transport/http_jetty/spring/beans.xml Sun May 27 23:49:55 2012
@@ -65,7 +65,7 @@
 	      <hj:threadingParameters minThreads="21" maxThreads="389"/>
 	   </hj:engine>
 	   
-	   <hj:engine port="9001" maxIdleTime="40000">
+	   <hj:engine port="9001" maxIdleTime="40000" sendServerVersion="false">
 	       <hj:threadingParameters minThreads="99" maxThreads="777"/>	      
 	     <hj:connector>
            <beans:bean class="org.eclipse.jetty.server.bio.SocketConnector">