Package | mx.rpc.livecycle |
Classe | public class DocumentReference |
Héritage | DocumentReference ![]() |
Version du langage: | ActionScript 3.0 |
Version du produit: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Versions du moteur d’exécution: | Flash Player 9, AIR 1.1 |
Si le document n’est pas encore sur le serveur, utilisez le servlet de chargement à distance LiveCycle pour transférer le document sur le serveur et créer une classe DocumentReference avec l’adresse URL renvoyée par le servlet.
import flash.events.DataEvent; import flash.net.FileReference; private function startUpload():void { fileRef.addEventListener(Event.SELECT, selectHandler); fileRef.addEventListener(DataEvent.UPLOAD_COMPLETE_DATA, completeHandler); try { var success:Boolean = fileRef.browse(); } catch (error:Error) { trace("Unable to browse for files."); } } private function selectHandler(event:Event):void { var request:URLRequest = new URLRequest("http://SERVER:PORT/remoting/lcfileupload") try { fileRef.upload(request); } catch (error:Error) { trace("Unable to upload file."); } } private function completeHandler(event:DataEvent):void { var params:Object = new Object(); var docRef:DocumentReference = new DocumentReference(); docRef.url = event.data as String; docRef.referenceType = DocumentReference.REF_TYPE_URL; }
Vous pouvez également utiliser FileReferenceList pour télécharger plusieurs documents en même temps. Par exemple :
import flash.events.DataEvent; import flash.net.FileReference; import flash.net.FileReferenceList; private function startUpload():void { pendingFiles = new Array(); documents = new Array(); fileRefList.addEventListener(Event.SELECT, selectHandler); try { var success:Boolean = fileRefList.browse(); } catch (error:Error) { trace("Unable to browse for files."); } } private function selectHandler(event:Event):void { var file:FileReference; for (var i:uint = 0; i < fileRefList.fileList.length; i++) { file = FileReference(fileRefList.fileList[i]); try { addPendingFile(file); } catch (error:Error) { Alert.show("Unable to upload file."); } } } private function addPendingFile(file:FileReference):void { trace("addPendingFile: name=" + file.name); var request:URLRequest = new URLRequest("http://10.60.147.127:8080/remoting/lcfileupload"); pendingFiles.push(file); file.addEventListener(DataEvent.UPLOAD_COMPLETE_DATA, completeHandler); file.upload(request); } private function removePendingFile(file:FileReference):void { for (var i:uint; i < pendingFiles.length; i++) { if (pendingFiles[i].name == file.name) { pendingFiles.splice(i, 1); } } } private function completeHandler(event:DataEvent):void { var params:Object = new Object(); var docRef:DocumentReference = new DocumentReference(); docRef.url = event.data as String; docRef.referenceType = DocumentReference.REF_TYPE_URL; documents.push(docRef); var file:FileReference = FileReference(event.target); removePendingFile(file); if (pendingFiles.length == 0) { // invoke a serivce that takes a collection of documents as an argument here // using the "documents" array ...
Si le document est déjà sur le serveur et que son emplacement de fichier est connu, définissez le champ referenceType sur REF_TYPE_FILE et le champ fileRef sur l’emplacement du fichier sur le serveur. Par exemple :
var docRef:DocumentReference = new DocumentReference(); docRef.fileRef = "C:/temp/file1"; docRef.referenceType=DocumentReference.REF_TYPE_FILE;
Si le document est déjà sur le serveur et que son URL est connue, définissez le champ referenceType sur l’URL et le champ url sur REF_TYPE_URL. Par exemple :
var docRef:DocumentReference = new DocumentReference(); docRef.url = "http://localhost:8080/DocumentManager/1168728809000/7855483216115920647"; docRef.referenceType=DocumentReference.REF_TYPE_URL;
Vous pouvez également créer un document à partir d’un fragment de texte sur le client. Sur le serveur, cette chaîne sera d’abord convertie en un tableau d’octets et ensuite dans un document côté serveur. Par défaut, le jeu de caractères par défaut du serveur est utilisé pour la conversion en un tableau d’octets. Si l’utilisation d’un autre jeu de caractères est souhaitée, il peut être spécifié via la propriété de cet objet. Par exemple :
var docRef:DocumentReference = new DocumentReference(); docRef.referenceType = DocumentReference.REF_TYPE_INLINE; docRef.text = "Text for my document"; // to override server's default character set uncomment and set character set name // docRef.charsetName = "<name of your charset>";
Enfin, vous pouvez créer un document à partir de données binaires disponibles sur le client. Ces données binaires seront converties dans un document côté serveur. Ce paramètre peut être utilisé lorsque vous avez de petites quantités de données au lieu de charger le contenu sur le serveur et d’utiliser une URL. Si vous définissez la propriété contentType sur la référence, elle est définie sur le document si le code côté serveur ne figure pas seul. Par exemple :
var image:ByteArray = ... var docRef:DocumentReference = new DocumentReference(); docRef.referenceType = DocumentReference.REF_TYPE_INLINE; docRef.bytes = image; docRef.contentType = "image/jpg";
Les clients Flex reçoivent des objets de type DocumentReference.as pour les opérations LC qui renvoient les documents en tant que paramètres de sortie. Le type referenceType de l’objet DocumentReference client permet au client de savoir si le contenu se trouve dans l’objet DocumentReference lui-même, DocumentReference.xml (c’est le cas des documents XML) ou doit être récupéré via une adresse URL, DocumentReference.url. Le champ DocumentReference.contentType permet au client de connaître le type de document.
Propriété | Défini par | ||
---|---|---|---|
![]() | constructor : Object
Référence à l’objet de classe ou à la fonction constructeur d’une occurrence donnée d’un objet. | Object |
Méthode | Défini par | ||
---|---|---|---|
![]() |
Indique si la propriété spécifiée d’un objet est définie. | Object | |
![]() |
Indique si une occurrence de la classe Object figure dans la chaîne de prototype de l’objet spécifié en tant que paramètre. | Object | |
![]() |
Indique si la propriété spécifiée existe et est énumérable. | Object | |
![]() |
Définit la disponibilité d’une propriété dynamique pour les opérations en boucle. | Object | |
![]() |
Renvoie la représentation de chaîne de cet objet, formatée selon les paramètres régionaux en vigueur. | Object | |
![]() |
Renvoie la représentation sous forme de chaîne de l’objet spécifié. | Object | |
![]() |
Renvoie la valeur primitive de l’objet spécifié. | Object |
Constante | Défini par |
---|
Tue Jun 12 2018, 09:30 AM Z