Jetty ProxyServlet:如何添加HTTPS支持?

时间:2014-08-29 18:55:19

标签: java ssl groovy proxy jetty

我使用Jetty ProxyServlet创建了一个简单的代理服务器。它适用于http协议。下面是我的代码(在groovy中):

MyProxyServlet

class MyProxyServlet extends ProxyServlet {
    static final Logger logger = LoggerFactory.getLogger( this )

    @Override
    void init( ServletConfig config ) throws ServletException {
        super.init( config )
        logger.info('>>> init done!')
    }

    @Override
    void service( HttpServletRequest request, HttpServletResponse response ) {
        logger.info('>>> got a request')
        super.service( request, response)
        response.addHeader('foo', 'bar')
    }
}

的web.xml

<servlet>
    <servlet-name>MyProxyServlet</servlet-name>
    <servlet-class>com.foobar.MyProxyServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
    <async-supported>true</async-supported>
</servlet>

<servlet-mapping>
    <servlet-name>MyProxyServlet</servlet-name>
    <url-pattern>/*</url-pattern>
</servlet-mapping>

代码被包装到war,root.war中,并部署到Mac上的Jetty服务器上,端口为8080.然后我在Mac的系统偏好设置中启用了Web Proxy (HTTP)Secure Web Proxy (HTTPS)。如前所述,它适用于http。但是,对于HTTPS,它不起作用。那么,我如何才能使用HTTPS?

BTW,根据这个例子(Jetty ProxyServlet with SSL support),似乎我需要添加ConnectHandler,但我不知道如何在web.xml中实现这一点。

非常感谢。

0 个答案:

没有答案