hessian访问https

来源:互联网 发布:淘宝大麦票务专营店 编辑:程序博客网 时间:2024/06/05 01:17

1、首先生成keystore文件,执行命令

keytool -v -genkey -alias tomcat -keyalg RSA-keystore e:/tomcat.keystore  -validity 36500

-keystore后面是文件存放的位置

-validity 后面指的是有效期 这里设置为100年

2、配置tomcat

在tomcat的server.xml中

 <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
               maxThreads="150" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS"  keystoreFile="E:/keystore" keystorePass="123456" />

打开这一段,并且后面加上keystoreFile="E:/keystore"  keystorePass="123456"   

keystoreFile就是刚才生成文件的位置   keystorePass就是你生成过程中设置的密码

这个时候http也还是可以访问的,如果要禁止的话,就注释掉下面这段

<Connector port="8080" protocol="HTTP/1.1" 
               connectionTimeout="20000" 
               redirectPort="8443" />

3、配置hessian客户端

把刚才生成的keystore文件拷贝一份,重命名为"jssecacerts",放到你所使用的jdk/jre/lib/security目录下

hessian端的java代码如下

 HostnameVerifier hv = new HostnameVerifier() {  
              public boolean verify(String urlHostName, SSLSession session) {  
               return urlHostName.equals(session.getPeerHost());  
              }  
          };  
            HttpsURLConnection.setDefaultHostnameVerifier(hv);  
       
    String url = "https://localhost:8443/
AAAA/hessian/data";  

        HessianProxyFactory factory = new HessianProxyFactory();  
        DataService data = null;   
           data = (DataService)factory.create(DataService.class, url); 

String url上面三句就是配置https访问。

现在运行客户端程序就可以访问https的hessian了。

原创粉丝点击