Ich habe ein Problem mit dem Aufruf von Web-Service von flex. Ich habe einen Dienst mit dem Namen UserService mit einer Methodenkette GetData (int i). Ich möchte diese Methode von flex nennen und Daten erhalten. Mein Code ist hier:So rufen Sie Web-Service von flex
protected function application1_creationCompleteHandler(event:FlexEvent):void
{
uService = new UserService();
uService.addEventListener("hello", echoResultHandler);
uService.GetData(1);
}
public function echoResultHandler(event:ResultEvent):void {
var retStr:String = event.result as String;
var retInt:int = event.result.echoInt;
Alert.show('want to play', retStr);
}
Könnte meine Frage ist nicht schwer, aber ich kann nicht verstehen, warum es funktioniert does .. Kann mir jemand helfen?
Service-Code, von flex generiert, wenn ich Verweis auf servese hinzugefügt.
internal class _Super_UserService extends com.adobe.fiber.services.wrapper.WebServiceWrapper
{
public function _Super_UserService()
{
_serviceControl = new mx.rpc.soap.mxml.WebService();
var operations:Object = new Object();
var operation:mx.rpc.soap.mxml.Operation;
operation = new mx.rpc.soap.mxml.Operation(null, "GetData");
operation.resultType = String;
operations["GetData"] = operation;
_serviceControl.operations = operations;
try
{
_serviceControl.convertResultHandler = com.adobe.serializers.utility.TypeUtility.convertResultHandler;
}
catch (e: Error)
{ }
preInitializeService();
model_internal::initialize();
}
protected function preInitializeService():void
{
_serviceControl.service = "UserService";
_serviceControl.port = "BasicHttpBinding_IUserService";
wsdl = "http://localhost:3905/UserService.svc?wsdl";
model_internal::loadWSDLIfNecessary();
}
public function GetData(value:int) : mx.rpc.AsyncToken
{
model_internal::loadWSDLIfNecessary();
var _internal_operation:mx.rpc.AbstractOperation = _serviceControl.getOperation("GetData");
var _internal_token:mx.rpc.AsyncToken = _internal_operation.send(value) ;
return _internal_token;
}
}
geerbt Klasse:
public class UserService extends _Super_UserService
{
protected override function preInitializeService():void
{
super.preInitializeService();
// Initialization customization goes here
}
}
Ohne den Code zu sehen, die tatsächlich den Dienst ruft, ist es schwer zu wissen, was los ist. Zeig uns den Code für den UserService! – JeffryHouser
Ich bin mir nicht sicher, ob ich das verstehe. .net Code oder Code, der von flex generiert wurde? – Radislav
Ich habe meine Frage aktualisiert. – Radislav