2 <!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd">
4 <Configure id="Server" class="org.eclipse.jetty.server.Server">
7 <Get id="Logger" class="org.eclipse.jetty.util.log.Log" name="log"/>
9 <Set name="debugEnabled">true</Set>
13 <Set class="org.evergreen_ils.hatch.HatchWebSocketHandler" name="trustedDomains">
16 List of origin domains which are allowed to connect to Hatch.
17 If the first item in the list is "*", then all domains are
18 trusted, which is useful for testing.
25 <Set class="org.evergreen_ils.hatch.HatchWebSocketHandler"
26 name="profileDirectory"></Set>
29 <!-- basic HTTP setup -->
30 <New id="httpConfig" class="org.eclipse.jetty.server.HttpConfiguration">
31 <Set name="secureScheme">https</Set>
32 <Set name="securePort"><Property name="jetty.secure.port" default="8443" /></Set>
33 <Set name="outputBufferSize"><Property name="jetty.output.buffer.size" default="32768" /></Set>
34 <Set name="requestHeaderSize"><Property name="jetty.request.header.size" default="8192" /></Set>
35 <Set name="responseHeaderSize"><Property name="jetty.response.header.size" default="8192" /></Set>
36 <Set name="sendServerVersion"><Property name="jetty.send.server.version" default="true" /></Set>
37 <Set name="sendDateHeader"><Property name="jetty.send.date.header" default="false" /></Set>
38 <Set name="headerCacheSize">512</Set>
41 <!-- SSL configuration -->
42 <!-- Using the stock Jetty certificates for now.
43 To set a temporary trust on the cert, navigate to
44 https://<hostname>:8443/ and confirm the cert is trusted -->
45 <New id="sslContextFactory" class="org.eclipse.jetty.util.ssl.SslContextFactory">
46 <!-- TODO: make this better -->
47 <Set name="KeyStorePath"><Property name="jetty.home" default="." />/jetty-distribution-9.1.4.v20140401/etc/keystore</Set>
48 <Set name="KeyStorePassword">OBF:1vny1zlo1x8e1vnw1vn61x8g1zlu1vn4</Set>
49 <Set name="KeyManagerPassword">OBF:1u2u1wml1z7s1z7a1wnl1u2g</Set>
50 <Set name="TrustStorePath"><Property name="jetty.home" default="." />/jetty-distribution-9.1.4.v20140401/etc/keystore</Set>
51 <Set name="TrustStorePassword">OBF:1vny1zlo1x8e1vnw1vn61x8g1zlu1vn4</Set>
54 <New id="sslHttpConfig" class="org.eclipse.jetty.server.HttpConfiguration">
55 <Arg><Ref refid="httpConfig"/></Arg>
56 <Call name="addCustomizer">
57 <Arg><New class="org.eclipse.jetty.server.SecureRequestCustomizer"/></Arg>
61 <!-- SSL HTTP connector -->
62 <Call name="addConnector">
64 <New class="org.eclipse.jetty.server.ServerConnector">
65 <Arg name="server"><Ref refid="Server" /></Arg>
66 <Arg name="factories">
67 <Array type="org.eclipse.jetty.server.ConnectionFactory">
69 <New class="org.eclipse.jetty.server.SslConnectionFactory">
70 <Arg name="next">http/1.1</Arg>
71 <Arg name="sslContextFactory"><Ref refid="sslContextFactory"/></Arg>
75 <New class="org.eclipse.jetty.server.HttpConnectionFactory">
76 <Arg name="config"><Ref refid="sslHttpConfig"/></Arg>
81 <Set name="host"><Property name="jetty.host" /></Set>
82 <Set name="port"><Property name="jetty.secure.port" default="8443" /></Set>
83 <Set name="idleTimeout"><Property name="https.timeout" default="30000"/></Set>
84 <Set name="soLingerTime"><Property name="https.soLingerTime" default="-1"/></Set>
90 <!-- HTTP connector -->
91 <Call name="addConnector">
93 <New class="org.eclipse.jetty.server.ServerConnector">
97 <Arg name="factories">
98 <Array type="org.eclipse.jetty.server.ConnectionFactory">
100 <New class="org.eclipse.jetty.server.HttpConnectionFactory">
101 <Arg name="config"><Ref refid="httpConfig" /></Arg>
106 <Set name="host"><Property name="jetty.host"/></Set>
107 <Set name="port"><Property name="jetty.port" default="8080"/></Set>
108 <Set name="idleTimeout"><Property name="http.timeout" default="30000"/></Set>
109 <Set name="soLingerTime"><Property name="http.soLingerTime" default="-1"/></Set>
114 <!-- websockets handler setup -->
116 <New class="org.eclipse.jetty.server.handler.HandlerList">
117 <Set name="handlers">
118 <Array type="org.eclipse.jetty.server.Handler">
120 <New class="org.eclipse.jetty.servlet.ServletHandler">
121 <Call id="proxyHolder" name="addServletWithMapping">
123 <Property name="jetty.proxy.servletClass"
124 default="org.evergreen_ils.hatch.HatchWebSocketServlet"/>
127 <Property name="jetty.proxy.servletMapping" default="/hatch"/>
129 <Call name="setInitParameter">
130 <Arg>maxThreads</Arg>
132 <Property name="jetty.proxy.maxThreads" default="128"/>
135 <Call name="setInitParameter">
136 <Arg>maxConnections</Arg>
138 <Property name="jetty.proxy.maxConnections" default="256"/>
141 <Call name="setInitParameter">
142 <Arg>idleTimeout</Arg>
144 <Property name="jetty.proxy.idleTimeout" default="60000"/>
147 <Call name="setInitParameter">
150 <Property name="jetty.proxy.timeout" default="60000"/>