[RPC Fault faultString="Channel disconnected" faultCode="Client.Error.DeliveryInDoubt" faultDetail="Channel disconnected before an acknowledgement was received]
tengo otra aplicación y si me corre perfectamente y me proyecta los datos de mi clase en php pero esta no se porque no me funciona si utilice el mismo procedimiento y las 2 las hice yo. aquí les dejo el código:
Código Flex :
<?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"> <fx:Script> <![CDATA[ import mx.collections.ArrayCollection; import mx.controls.Alert; import mx.events.FlexEvent; import mx.events.ListEvent; import mx.events.ScrollEvent; import mx.rpc.Fault; import mx.rpc.events.FaultEvent; import mx.rpc.events.ResultEvent; [Blindable] private var objTrab:Object = new Object(); [Bindable] private var TablaDP:ArrayCollection = new ArrayCollection() protected function TablaG_itemClickHandler(event:ListEvent):void { //Alert.show("seleccionado... "+TablaDP.toString()); var obj:Object = TablaG.selectedItem; objTrab = obj; var index:int = 0; for(var i:int=0 ; i<TablaDP.length ; i++) { if(TablaDP[i].id == objTrab.toString()) { index = i; break; } } Alert.show("Ha seleccionado el Archivo: "+ TablaG.selectedItem[DataGridColumn(TablaG.columns[event.columnIndex]).dataField].toString(),"Atención"); } protected function cncel_clickHandler(event:MouseEvent):void { mirem.directorio("C:/xampp/htdocs/flex/visor/panel_nub/bin-debug/contenido"); //=TablaG.selectedItem[DataGridColumn(TablaG.columns[event.columnIndex]).dataField].toString(); } protected function mirem_faultHandler(event:FaultEvent):void { // TODO Auto-generated method stub Alert.show(event.fault.toString()); } /*[Blindate] private var directorio1:ArrayCollection = new ArrayCollection();*/ protected function directorio_Result(event:ResultEvent):void { if(event.result is Array) { TablaDP = new ArrayCollection(event.result as Array); objTrab=TablaDP[0]; } else TablaDP = new ArrayCollection(); } ]]> </fx:Script> <fx:Declarations> <!-- Place non-visual elements (e.g., services, value objects) here --> <s:RemoteObject id="mirem" source="clases.leer_dir" destination="amfphp" fault="mirem_faultHandler(event)" showBusyCursor="true"> <s:method name="directorio" result="directorio_Result(event)"/> </s:RemoteObject> </fx:Declarations> <mx:DataGrid x="22.55" y="81.4" dataProvider="{TablaDP}" id="TablaG" itemClick="TablaG_itemClickHandler(event)" > <mx:columns> <!--mx:DataGridColumn headerText="ID" dataField="idCol" width="30"/--> <mx:DataGridColumn headerText="Nombre del Archivo..." dataField="nombre" width="300" /> </mx:columns> </mx:DataGrid> <s:Button x="515.75" y="43.65" label="Directorio..." id="cncel" click="cncel_clickHandler(event)"/> </s:Application>
Código PHP :
<?php require_once 'nombres.php'; class leer_dir { public function directorio($dir) { //$dir = 'C:/xampp/htdocs/flex/clasesp1/nuevoflex/base_datos/funcion_dir-debug/nueva_carpeta'; // Abrir un directorio conocido, y proceder a leer sus contenidos if (is_dir($dir)) { if ($gd = opendir($dir)) { while ($archivo = readdir($gd)) { echo "<br>$archivo</br>" ; $nomb1 = new nombres; $nomb1->Nombre_archivo=$archivo; } closedir($gd); } } } } ?>