最近做的项目用的框架是spring+jersey+jetty,这个框架原来只用于接口项目,但本次做的项目需要加入静态资源,由于我是第一次使用jetty,还是在spring中内置,不知道该如何解决,后来在网上查了一下资料,也只找到了jetty相关的配置文件,于是我就改了一下放入了spring的配置文件中,结果还是比较理想的,所有记录一下,嘿嘿!
<!-- jetty server 配置 -->
<bean id="Server" class="org.eclipse.jetty.server.Server" init-method="start" destroy-method="stop">
<constructor-arg>
<bean id="threadPool" class="org.eclipse.jetty.util.thread.QueuedThreadPool">
<property name="minThreads" value="${jetty.server.threads.min}"/>
<property name="maxThreads" value="${jetty.server.threads.max}"/>
</bean>
</constructor-arg>
<property name="connectors">
<list>
<bean id="Connector" class="org.eclipse.jetty.server.nio.NetworkTrafficSelectChannelConnector">
<constructor-arg ref="Server" />
<property name="port" value="${jetty.server.port}" />
</bean>
</list>
</property>
<property name="handler">
<bean id="handlers" class="org.eclipse.jetty.server.handler.HandlerList">
<property name="handlers">
<list>
<!-- 静态资源配置,需要在ContextHandler里,配置ResouceHandler -->
<bean class="org.eclipse.jetty.server.handler.ContextHandler">
<property name="contextPath" value="/"/>
<property name="handler">
<bean class="org.eclipse.jetty.server.handler.ResourceHandler">
<property name="directoriesListed" value="true"></property>
<!-- 静态资源路径 -->
<property name="resourceBase" value="src/main/webapp/"></property>
</bean>
</property>
</bean>
<bean class="org.eclipse.jetty.server.handler.ContextHandlerCollection">
<property name="handlers">
<list>
<bean class="org.eclipse.jetty.webapp.WebAppContext">
<!-- throwUnavailableOnStartupException defult false -->
<property name="throwUnavailableOnStartupException" value="true" />
<property name="contextPath" value="/" />
<property name="configurationDiscovered" value="true" />
<!--property name="descriptor" value="web.xml" /-->
<property name="defaultsDescriptor" value="web.xml"/>
<property name="resourceBase" value="config" />
</bean>
</list>
</property>
</bean>
<bean class="org.eclipse.jetty.server.handler.DefaultHandler" />
</list>
</property>
</bean>
</property>
</bean>