我有一个应用程序从flex 3迁移到Flex 4。 我没有改变代码的功能。我使用HTTPService调用struts动作:
var service:HTTPService = new HTTPService();
service.url= "someAction.do"
service.send(params);
问题在于,当我使用Flash Builder 3生成的flex 3 swf时,没有问题,操作就像我想要的那样发送到url / someUrl
localhost:8080/someurl/someAction.do
如果我在相同的情况下使用flex 4 swf,则在同一个war存档中。 我唯一改变的是swf ,url还会包含导致问题的swf路径
localhost:8080/someurl/path/to/swf/someAction.do
任何人都知道造成这种情况的原因是什么?
答案 0 :(得分:1)
documentation for the rootURL property表明这是Flex 4的预期行为:
...,根据运行此应用程序的SWF的位置自动计算相对URL。 ...
可能的解决方案是使用rootURL
属性,但这也需要使用可能引入其他问题的Flex服务器代理。