目前正在研究应该如何配置ActiveMQ(5.4.2)才能让它支持在HTTPS协议上传输的JMS消息,也看了官方的文档http://activemq.apache.org/http-and-https-transports-reference.html和http://docs.codehaus.org/display/JETTY/How%20to%20configure%20SSL,但是后面这个文档应该是针对独立运行的Jetty server的,不知哪位朋友成功地向嵌入在ActiveMQ里的Jetty添加过HTTPS支持,能否分享一下具体的配置方式?非常感谢!
修改conf/jetty.xml
找到Connector并且修改为
java bin/run.jar start
看到错误提示,提示缺少keystore
按照http://activemq.apache.org/how-do-i-use-ssl.html这篇帖子产生keystore就好了,就可以用了。。
我一直以为你的ActiveMQ是运行在jetty这个容器里面。。。
你搜索的方向不对,既然ActiveMQ支持ssl,而且内置了jetty,你可以试试google active mq ssl
比如
http://blog.csdn.net/xiaoming444/archive/2009/03/11/3979521.aspx
此外,jetty本身是不需要配置文件的,可以直接通过代码来支持ssl的,不过我觉得这样会侵入到activemq的代码,所以不推荐
我看到的activemq还支持rest
绝对满足你通过https来发送消息,我在家里不知道为啥不能google,要不然就发url给你了。。
其实jetty的代码就这么短
[code="java"]
Server server = new Server();
SslConnector connector = new SslSelectChannelConnector();
server.setConnectors(new Connector[]{connector});
server.start();
[/code]
但是如何在activemq里面配置,我还真的不清楚,明天帮你问问老外看看
http://activemq.apache.org/how-do-i-use-ssl.html
http://activemq.2283324.n4.nabble.com/Configuring-ActiveMQ-Embedded-Broker-over-HTTPS-td2353151.html
http://activemq.2283324.n4.nabble.com/HTTPS-Configuration-td3006193.html
这样就让我明白了,https支持是需要ssl的,配置好ssl,然后在jetty配置SslSelectChannelConnector就可以了。。
可以配置的,因为有人配置好了,问NPE的问题,因为ssl的keystore没有配置
我试了一下以上方法,java客户端访问https url报peer not authenticated错误,请指教