1

我有一个从 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,在相同的战争档案中。我唯一改变的是 swf, url 还将包含导致问题的 swf 的路径

localhost:8080/someurl/path/to/swf/someAction.do

有谁知道这可能是什么原因造成的?

4

1 回答 1

1

rootURL 属性的文档表明这是 Flex 4 的预期行为:

...,相对 URL 是根据运行此应用程序的 SWF 的位置自动计算的。...

一个可能的解决方案是使用该rootURL属性,尽管这还需要使用可能引入其他问题的 Flex 服务器代理。

于 2012-04-23T18:27:51.867 回答