2010-11-15 3 views
0

Je construis une application web Flex où il y a une option pour exporter des données d'une table vers un format CSV (théoriquement, jusqu'ici, haha). Puisqu'il s'agit d'une application Web, j'ai supposé que la meilleure façon d'y arriver serait d'envoyer une requête au serveur pour générer le fichier, puis de renvoyer ce fichier (ou un lien vers celui-ci) à l'application Flex, et d'utiliser un FileReference pour télécharger le fichier. Est-ce la bonne façon de procéder?Comment utiliser Flex et Java pour télécharger des fichiers à partir d'un serveur?

Quelqu'un pourrait-il me donner quelques conseils sur la façon de faire cela, cependant? Il y a quelques objets distants exisitng en place qui appellent des fonctions Java sur le serveur, donc j'ai pensé que j'essaierais quelque chose le long de ces lignes? J'ai fait beaucoup de recherches, et j'ai trébuché sur des choses comme HttpResponses et HttpServletResponses en Java, mais je n'ai aucune idée de comment combler le fossé entre le client et le côté serveur pour l'utiliser efficacement. Haha.

Merci!

Répondre

0

Ce que j'ai fait est que Flex ouvre un nouvel onglet/fenêtre et navigue vers une servlet.

navigateToURL(new URLRequest(url),'_blank'); 

Ensuite, utilisez un HttpServletResponse pour écrire le fichier vers le client, qui sera ensuite affiché dans le navigateur. C'était pour un PDF, cependant. Pour utiliser un HttpServletResponse, vous devez écrire un HttpServlet et le configurer dans votre web.xml. Here est un tutoriel de base. Google a beaucoup plus.

+0

Merci, ça a aidé beaucoup! J'ai seulement un problème maintenant, et c'est en train de charger la page, haha. J'ai essayé à l'origine de le faire avec un objet HTTPService et d'appeler sa méthode send, mais cela a entraîné une erreur, à quel point j'ai essayé d'utiliser la méthode navigateToURL, mais cela ouvre une page vide et rien ne se passe. – anomicbomber

+0

Est-ce que la page blanche a la bonne adresse? Si c'est le cas, vous devez vous assurer que votre servlet est correctement configuré et écrit. J'ai besoin de plus d'informations pour vous aider correctement. – Jeremy

+0

La page blanche a l'adresse 'http: // localhost: 8400/ExportToCSV', ce qui est correct, je crois, basé sur ma correspondance dans web.xml. Le code est disponible sur http://pastebin.com/DghDvvTc – anomicbomber

Questions connexes