Let me try and put it as simple as possible.
 
Every request you make to a "data" server will require the "data" provider to provide explicit permission to access their data. This is done using a crossdomain.xml file that resides in the root of the "data" server.
 
For example, the following is the URL to access the MXNA feed.
 
 
How can you check of you can access the data from this feed?
 
The result would be as below:
<cross-domain-policy>
    <allow-access-from domain="*"/>
</cross-domain-policy>
 
Note that the "allow-access-from-domain" is specified as "*". This means "anybody" can access it.
 
Now, lets look at another example.
The following is the RSS feed for CNN Money Economy
 
Now, if you access http://rss.cnn.com/crossdomain.xml, you will find a list of URLs. ONLY these URLs can access data from that particular feed.
 
I see the result in Chinese(?), but I could see that the no crossdomain.xml policy file exists on the server.
This means you do not have explicit permission to access that webService.
 
So, for 2 reasons you would get the "'Security error accessing url'" error.
 
1. No crossdomain.xml policy file exists on the "data" server.
2. The crossdomain.xml does not permit you to access that data.
 
I hope my understanding is correct and it clears your confusion.
 
Regards
Sree
 
 
 
 
----- Original Message -----
From: flexava
Sent: Thursday, July 20, 2006 3:56 PM
Subject: [flexcoders] Confusion about 'Security error accessing url'

I'm using flex builder to create a small flex project to learn how to
call web service in flex,but I encountered a problem really confusing
me.I created a new file called wstest.mxml and here's its content:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical">
<mx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.rpc.Fault;
import mx.rpc.events.FaultEvent;

private function onFault(event :
FaultEvent) : void
{
var f : Fault = event.fault;
Alert.show
(f.faultString,"Error");
}

private function list() : void
{
adminService.getWeather.send();
}
]]>
</mx:Script>
<mx:WebService id="adminService" service="Weather"
port="WeatherSoap"
wsdl="http://www.wopos.com/webservice/weather.asmx?
wsdl" showBusyCursor="true"
fault="onFault(event)">
<mx:operation name="getWeather">
<mx:request>
<mCity>
ÉϺ£
</mCity>
</mx:request>
</mx:operation>
</mx:WebService>
<mx:Label id="lbl"
text="{adminService.getWeather.lastResult}"/>
<mx:Button label="Call Web Service" click="list()"/>
</mx:Application>
After building finished,I ran the generated wstest.swf in the
directory called bin,the output directory of the flex
project,everything is ok.But when I put the swf file in another
position, say, c:/. Then when I ran the swf file an error message was
returned saying 'Security error accessing url'. I can't understand
why this happened. It seems the swf file can only run under the bin
directory. Any one can help? Thanks!

__._,_.___

--
Flexcoders Mailing List
FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com





SPONSORED LINKS
Web site design development Computer software development Software design and development
Macromedia flex Software development best practice


YAHOO! GROUPS LINKS




__,_._,___

Reply via email to