Restlet HTTPS

by Max Rohde,

Problem

In its 2.0 version, it seems that Restlet has no built in support for HTTPS (see internal connectors). If trying to add a new server with the HTTPS protocol

Server server1 = component.getServers().add(Protocol.HTTPS,                           "localhost", 8183);

A warning will be thrown and the server not started.

No available server connector supports the required protocols: 'HTTPS' . Please add the JAR of a matching connector to your classpath.

Solution

Restlet offers connectors, for instance with the Jetty web server (Restlet Wiki Jetty Connector). These in combination with the org.restlet.ext.ssl extension can be used to provide resources via HTTPS. However, it seems that the current version 2.01 does not support to use these connectors (Restlet 2.0 Connectors Wiki Page). Many of these connectors are not part of the downloadable distribution or the maven repository (in version 2.0.1). The apache http client connector, however, is: Restlet Wiki HTTP Client extension.

Resources

Restlet Wiki Configure HTTPS

Create a keystore file Restlet Wiki SSL extension Restlet Wiki Jetty Connector

Restlet Wiki Security Package Blog post how to enable SSL with Restlet (might be a bit outdated)

Configure HTTPs with Jetty

Categories: java