Bonsoir a tous,
j'ai un problème de sand box violation que je n'arrive pas a résoudre.
j'essaye de lire un mjpeg d'une camera ip.
Coté service il y a pas de problème j'arrive a charger des données ou
des image ou du amf...


Info sur environnement
----------------------------------------------------------------
Os: Ubuntu
Serveur: Apache 2 en local
PHP 5.
Zend pour le (Amf)
Flex3 (Alpha pour Linux)

flash player  debuger version
LNX 10,0,42,34
----------------------------------------------------------------


1/ le crossdomain

crossdomain.xml est sur le root "www"

donc si je fais:
http://10.8.0.54/crossdomain.xml

j'ai le xml:

<cross-domain-policy>
<site-control permitted-cross-domain-policies="master-only"/>
<allow-access-from domain="*" to-ports="8081,80,8080"/>
<allow-http-request-headers-from domain="*" headers="*"/>
</cross-domain-policy>

---------------------------------------------------------------------------------

2/ la camera ip est sur le même ip mais un port différent
donc si je fait :
http://10.8.0.54:8081 je capte directe le flux sur browser (firefox).


Mon problème
j'arrive a capturer le flux en local mais pas sur le serveur
apache.

file:///var/www/bin-debug/teste3.html   <<<<<<< ça marche!

http://10.8.0.54/bin-debug/teste3.html  <<<<<<< ça marche pas :(

les erreurs:
fenêtre de alert du player:
--------------------------------------------------------------------------------------------------------------------
An ActionScript error has occurred:
Error #2044: Unhandled securityError:. text=Error #2048: Security
sandbox violation: http://10.8.0.54/bin-debug/teste3.swf cannot load
data from 10.8.0.54:8081.
        at utils.video.mjpeg::MJPEG()[/home/flavio/workspace_2/teste3/src/
utils/video/mjpeg/MJPEG.as:26]
        at teste3/init()[/home/flavio/workspace_2/teste3/src/teste3.mxml:9]
        at teste3/___teste3_Application1_applicationComplete()[/home/flavio/
workspace_2/teste3/src/teste3.mxml:2]
        at flash.events::EventDispatcher/dispatchEventFunction()
        at flash.events::EventDispatcher/dispatchEvent()
        at mx.core::UIComponent/dispatchEvent()[E:\dev\3.0.x\frameworks
\projects\framework\src\mx\core\UIComponent.as:9051]
        at mx.managers::SystemManager/preloader_preloaderDoneHandler()[E:\dev
\3.0.x\frameworks\projects\framework\src\mx\managers\SystemManager.as:
2251]
        at flash.events::EventDispatcher/dispatchEventFunction()
        at flash.events::EventDispatcher/dispatchEvent()
        at mx.preloaders::Preloader/displayClassCompleteHandler()[E:\dev\3.0.x
\frameworks\projects\framework\src\mx\preloaders\Preloader.as:434]
        at flash.events::EventDispatcher/dispatchEventFunction()
        at flash.events::EventDispatcher/dispatchEvent()
        at mx.preloaders::DownloadProgressBar/timerHandler()[E:\dev\3.0.x
\frameworks\projects\framework\src\mx\preloaders
\DownloadProgressBar.as:1451]
        at mx.preloaders::DownloadProgressBar/initCompleteHandler()[E:\dev
\3.0.x\frameworks\projects\framework\src\mx\preloaders
\DownloadProgressBar.as:1503]
        at flash.events::EventDispatcher/dispatchEventFunction()
        at flash.events::EventDispatcher/dispatchEvent()
        at mx.preloaders::Preloader/dispatchAppEndEvent()[E:\dev\3.0.x
\frameworks\projects\framework\src\mx\preloaders\Preloader.as:291]
        at mx.preloaders::Preloader/appCreationCompleteHandler()[E:\dev\3.0.x
\frameworks\projects\framework\src\mx\preloaders\Preloader.as:442]
        at flash.events::EventDispatcher/dispatchEventFunction()
        at flash.events::EventDispatcher/dispatchEvent()
        at mx.core::UIComponent/dispatchEvent()[E:\dev\3.0.x\frameworks
\projects\framework\src\mx\core\UIComponent.as:9051]
        at mx.core::UIComponent/set initialized()[E:\dev\3.0.x\frameworks
\projects\framework\src\mx\core\UIComponent.as:1167]
        at mx.managers::LayoutManager/doPhasedInstantiation()[E:\dev\3.0.x
\frameworks\projects\framework\src\mx\managers\LayoutManager.as:698]
        at Function/http://adobe.com/AS3/2006/builtin::apply()
        at mx.core::UIComponent/callLaterDispatcher2()[E:\dev\3.0.x\frameworks
\projects\framework\src\mx\core\UIComponent.as:8460]
        at mx.core::UIComponent/callLaterDispatcher()[E:\dev\3.0.x\frameworks
\projects\framework\src\mx\core\UIComponent.as:8403]
--------------------------------------------------------------------------------------------------------------------


output avec flash tracer ça me l'envoi directement sans utiliser
trace();
-------------------------------------------------------------------------------------------------------------------------------
Warning: [strict] Ignoring policy file with incorrect syntax:
xmlsocket://10.8.0.54:8081
Error: SWF from http://10.8.0.54/bin-debug/teste3.swf may not connect
to a socket in its own domain without a policy file. See
http://www.adobe.com/go/strict_policy_files to fix this problem.
*** Security Sandbox Violation ***
Connection to 10.8.0.54:8081 halted - not permitted from
http://10.8.0.54/bin-debug/teste3.swf
-------------------------------------------------------------------------------------------------------------------------------


j'ai lu ça:
http://livedocs.adobe.com/flex/3/html/help.html?content=05B_Security_03.html
et j'ai tenter d'appliquer ça:
http://livedocs.adobe.com/flex/3/html/help.html?content=05B_Security_10.html#145624
mais le résultat et le même...

coté code:
 <?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml";
layout="absolute" applicationComplete="init()">
        <mx:Script>
                <![CDATA[

                        import utils.video.mjpeg.MJPEG;
                        public function init():void{
                                
Security.loadPolicyFile("xmlsocket://10.8.0.54/crossdomain.xml");
                                
trace("xmlsocket:http://10.8.0.54/crossdomain.xml";)
                                var vid:MJPEG = new MJPEG("10.8.0.54", "", 
8081);
                                video.rawChildren.addChild(vid);
                        }
                ]]>
        </mx:Script>
        <mx:VBox id="video"></mx:VBox>
</mx:Application>



Donc si quelqu'un a une petite idées qui pourrait m'aider ça serait
super sympa.
Désoler pour mon français mais ça fait plus de 10 ans que je suis plus
en France :).



-- 
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes FCNG.
Pour envoyer un message à ce groupe, adressez un e-mail à [email protected].
Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse 
[email protected].
Pour plus d'options, consultez la page de ce groupe : 
http://groups.google.com/group/fcng?hl=fr

Répondre à