Expand my Community achievements bar.

Web service via SOAP / HTTP and MS SQL Server 2005: no data output

Avatar

Level 1
Hello Flex developer.



I have a small problem and hope you can help me.




Background:



I'm developing a website that retrieves information from a
SQL Server 2005 database / tables und visualize them.

Getting access to these data, I provide stored procedures in
the SQL Server. With the help of SQL Server 2005, these procedures
are allocated as web service. The displaying information are the
table entries. I do not want to exchange documents with the SQL
Server.



The SQL Server deliver a WSDL file via a specific URL. the
Web Service itself works, because I tested it with the program "XML
Spy".



Now, my Code in detail, that I modified using the
<mx:WebService> tag. In the following, you see the table
definition, where zhe information should be displayed.




<mx:DataGrid id="sqlServerWebServiceGrid" x="10" y="328"
width="566" height="139">

</mx:DataGrid>




Definition of the Service:




<mx:WebService id="sqlServerWebService" wsdl="
http://<serverName>/Server
Objects/Endpoints/SOAP?WSDL">

<mx:operation name="ReportList"
result="sqlServerResult(event)">

<mx:request>

<startTime>2006-01-01 00:00:00</startTime>

<stopTime>2008-01-01 00:00:00</stopTime>

</mx:request>

</mx:operation>

</mx:WebService>




A Button acting as an activator for my call:




<mx:Button x="10" y="600" label="callWeb Service"
click="callServices()"/>






At the end my script part:




/* the function calls the Web service */

private function callServices():void{



sqlServerWebService.ReportList.send();

}



/* the function transmit the result to the datagrid*/

private function sqlServerResult(event:ResultEvent):void{

sqlServerWebServiceGrid.dataProvider = (event.result as
ArrayCollection);

}



Now my real problem: That is the error message I get before
arriving 'sqlServerResult' in my function:




[RPC Fault faultString="Error #1023: Stapelüberlauf."
faultCode="DecodingError" faultDetail="null"]

at mx.rpc.soap::Operation/
http://www.adobe.com/2006/flex/mx/internal::processResult()[E:\dev\3.0.x\frameworks\projects\rpc\src...

at mx.rpc::AbstractInvoker/
http://www.adobe.com/2006/flex/mx/internal::resultHandler()[E:\dev\3.0.x\frameworks\projects\rpc\src...

at
mx.rpc::Responder/result()[E:\dev\3.0.x\frameworks\projects\rpc\src\mx\rpc\Responder.as:41]

at
mx.rpc::AsyncRequest/acknowledge()[E:\dev\3.0.x\frameworks\projects\rpc\src\mx\rpc\AsyncRequest.as:74]

at
DirectHTTPMessageResponder/completeHandler()[E:\dev\3.0.x\frameworks\projects\rpc\src\mx\messaging\channels\DirectHTTPChannel.as:381]

at flash.events::EventDispatcher/dispatchEventFunction()

at flash.events::EventDispatcher/dispatchEvent()

at flash.net::URLLoader/onComplete()




Advice: 'Stapelüberlauf' stands for stack overflow.



Does anybody have an idea to solve the problem or where the
error is located?
1 Reply

Avatar

Former Community Member


I think it fails on decoding the Web Service response. I
would try to set resultFormat to e4x. In this case, no decoding
takes place and you can get whole soap body in event.result.



- Mykola