Flash Builder 4 Web服务对动态wsdl位置的自省

时间:2010-10-26 14:51:10

标签: flex flex3 flex4 introspection

在Flex 3中,内省Web服务导致构造函数允许Web服务的位置在运行时更改。 Web Service内省工具现在似乎只允许在WS向导中指定的单个WSDL URI。这是个案,还是我错过了什么?

Flex 3内省服务将使用以下构造函数签名创建服务类:

private var service:MyWebService;
service= new MyWebService(null, wsdlLocation);  // With parameters

或者您可以使用:

service = new MyWebService(); //with no parameters

在Flex 4中,您似乎只能使用:

service = new MyWebService(); 

因此,如果您在运行时之前不知道Web服务器的位置,我是否需要手动覆盖instrospected / generated _super_MyWebService.as类,以便在运行时恢复指向不同服务器的能力?

任何人都知道为什么会发生这种变化,或者Flash Builder 4 Web服务自省工具用于动态服务器的“新”方式是什么?

1 个答案:

答案 0 :(得分:0)

我在Adobe论坛上找到了这个问题的解决方案。

解决方案是在创建服务后设置wsdl属性:

var service:MyWebService = new MyWebService();
service.wsdl = "location to the wsdl";

应该注意的是,使用Flash Builder 4 Web服务内省工具将自动填充超类中的wsdl位置。根据Adobe论坛上的帖子,有必要删除超类中的wsdl位置,否则该值不会被重置。