成都心情

  BlogJava :: 首页 ::  :: 联系 :: 聚合  :: 管理 ::
  98 随笔 :: 2 文章 :: 501 评论 :: 1 Trackbacks
这段时间准备发布产品,预览版已在用户那里部署。昨天接到一电话,说在https环境下,只要点击到和Flex有关的东西就老报错,然后权限消失,得重新登录。
得知这一问题后自己切换到https下观察,果然如此,而且只要是走BalzeDS AMF通道就必然报错且servelt session丢失。直观感觉应该是通道问题,随后开打BlazeDS配置文件,翻到services-config.xml文件时,发现了my-secure-amf通道,那么顺理成章的应该走这个。遂在Flex那里修改了AMFChannel对象的uri属性(要实现通道切换方法很多,这只是一种方式),由于需要统一通道,所以在修改AMFChannel的uri后还是不能解决问题,经过排查这里必须采用SecureAMFChannel对象才行,最后问题解决。那么要支持两种协议,就需要在flex中进行协议判定,通过不同的协议来切换不同的通道了。代码如下:
        /**
         * 处理协议
         
*/
        
private function init(){
            var surl:String 
= ExternalInterface.call("eval""window.location.href");
            var cs:ChannelSet 
= new ChannelSet();
            var c:Channel 
= null;
            
if(URLUtil.getProtocol(surl)=="https"){
                c 
= new SecureAMFChannel();
                c.uri
="/SSS/messagebroker/amfsecure";
            }
else{
                c 
= new AMFChannel();
                c.uri
="/SSS/messagebroker/amf";
            }
            cs.addChannel(c);
            remote.channelSet
=cs;
            .;
        }

请注意!引用、转贴本文应注明原作者:Rosen Jiang 以及出处: http://www.blogjava.net/rosen
posted on 2010-03-24 10:27 Rosen 阅读(4258) 评论(7)  编辑  收藏 所属分类: Java EE 表现层及容器

评论

# re: BlazeDS由http切换https注意事项[未登录] 2010-03-25 17:12 john
nice,谢谢分享。  回复  更多评论
  

# re: BlazeDS由http切换https注意事项 2010-05-02 18:25 Sha Jiang
我也很想学习一下Flex...但...一直俗务缠身(借口罢了) :D  回复  更多评论
  

# re: BlazeDS由http切换https注意事项 2010-05-03 13:22 Rosen
@Sha Jiang
可惜啊,我也不用Flex,换部门就用不到了。  回复  更多评论
  

# re: BlazeDS由http切换https注意事项 2010-05-03 15:24 Sha Jiang
@Rosen
那现在又搞什么东东了  回复  更多评论
  

# re: BlazeDS由http切换https注意事项 2010-05-03 16:28 Rosen
@Sha Jiang
多搞点业务技能吧  回复  更多评论
  

# re: BlazeDS由http切换https注意事项 2010-05-11 21:39 Sha Jiang
@Rosen
关于哪些方面的业务?
说实话,我对业务不太感兴趣。  回复  更多评论
  

# re: BlazeDS由http切换https注意事项 2010-05-12 09:46 Rosen
@Sha Jiang
所谓业务嘛,无非是目前接触的东西了,平时多用心关注下吧。这条路至少我认为符合目前的情况。  回复  更多评论
  


只有注册用户登录后才能发表评论。


网站导航: