O SmartClient HTML utiliza o Apache Tomcat como servidor web, e ele pode usar dois diferentes implementações de SSL:
- As implementações JSSE, fornecidos como parte da JRE (desde a versão 1.4).
- A implementação APR, que utiliza o OpenSSL por padrão.
Os detalhes de configuração dependem da implementação está sendo usada. Como padrão ele vem configurado com o genérico protocol="HTTP/1.1"
fazendo que a implementação usada seja escolhida automaticamente. Se o servidor possuir a biblioteca nativa Tomcat então ele vai usar a implementação APR, caso contrário ele irá usar a implementação Java JSSE.
Como os atributos de configuração para suporte SSL diferem significativamente entre APR vs. implementações JSSE, é recomendável evitar a auto-seleção da implementação. Ele é feito especificando o nome da classe no atributo protocol do conector.
<!-- Define um conector HTTP/1.1 na porta 8443, implementação JSSE BIO --> <Connector protocol="org.apache.coyote.http11.Http11Protocol" port="8443" .../> <!-- Define um conector HTTP/1.1 na porta 8443, implementação JSSE NIO --> <Connector protocol="org.apache.coyote.http11.Http11NioProtocol" port="8443" .../> <!-- Define um conector HTTP/1.1 na porta 8443, implementação JSSE NIO2 --> <Connector protocol="org.apache.coyote.http11.Http11Nio2Protocol" port="8443" .../>
<!-- Define um conector HTTP/1.1 na porta 8443, implementação APR --> <Connector protocol="org.apache.coyote.http11.Http11AprProtocol" port="8443" .../>
Para saber mais sobre a diferença entre os conectores, consulte na documentação oficial o comparativo dos conectores.