Forums de discussion
importation d'un fichier dans une classe java
Jérémy Quentel, modifié il y a 12 années.
importation d'un fichier dans une classe java
New Member Publications: 6 Date d'inscription: 04/08/11 Publications récentes
Bonjour à tous,
Dans le cadre du développement d'un portail Liferay, j'ai besoin d'importer un fichier Excel pour y insérer des données et le mettre à disposition de l'utilisateur.
Mon souci arrive dès l'import :
J'ai testé énormément de possibilités, mais je ne vois pas comment récupérer un fichier.
Actuellement, le fichier .xls est situé à la racine de mon projet.
Si quelqu'un a des idées, je suis preneur !
Merci d'avance !!!
Dans le cadre du développement d'un portail Liferay, j'ai besoin d'importer un fichier Excel pour y insérer des données et le mettre à disposition de l'utilisateur.
Mon souci arrive dès l'import :
public void generateXLS(ActionRequest actionRequest, ActionResponse actionResponse) throws IOException, PortletException {
try {
// Ouverture du fichier xls
FileInputStream fs = new FileInputStream("/modeleLigneCommande.xls");.
[...]
} catch (FileNotFoundException fnf) {
actionResponse.setRenderParameter("url",
"ERREUR : fnf");
}
J'ai testé énormément de possibilités, mais je ne vois pas comment récupérer un fichier.
Actuellement, le fichier .xls est situé à la racine de mon projet.
Si quelqu'un a des idées, je suis preneur !
Merci d'avance !!!
Leo Pratlong, modifié il y a 12 années.
RE: importation d'un fichier dans une classe java
Expert Publications: 363 Date d'inscription: 06/07/10 Publications récentes
Bonjour,
quelle est l'erreur qui survient ?
Essayez de charger le fichier en définissant le path du fichier avec la commande suivante :
Si ça ne fonctionne pas, regardez la valeur que cette instruction renvoie et adaptez le paramètre en fonction.
quelle est l'erreur qui survient ?
Essayez de charger le fichier en définissant le path du fichier avec la commande suivante :
portletConfig.getPortletContext().getRealPath("lefichier.xls");
Si ça ne fonctionne pas, regardez la valeur que cette instruction renvoie et adaptez le paramètre en fonction.
Jérémy Quentel, modifié il y a 12 années.
RE: importation d'un fichier dans une classe java
New Member Publications: 6 Date d'inscription: 04/08/11 Publications récentes
qu'est-ce que portletConfig ?
Leo Pratlong, modifié il y a 12 années.
RE: importation d'un fichier dans une classe java
Expert Publications: 363 Date d'inscription: 06/07/10 Publications récentesJérémy Quentel:
qu'est-ce que portletConfig ?
Une interface contenant des méthodes relatives au contexte du portlet.
Vous développez un portlet, un plugin Ext, autre ?
Si c'est un portlet, avec quel framework ? Un portlet généré avec le SDK de Liferay ou un portlet "handcrafted" ?
Le PortletContext peut se récupérer autrement. Par exemple, en JSF, ce sera :
final FacesContext context = FacesContext.getCurrentInstance();
(PortletContext) context.getExternalContext().getContext();
Donc, tout dépend des technos que vous utilisez dans vos devs.
Jérémy Quentel, modifié il y a 12 années.
RE: importation d'un fichier dans une classe java
New Member Publications: 6 Date d'inscription: 04/08/11 Publications récentes
Je développe un portlet avec le SDK Liferay.
Pourquoi est-ce que la ligne suivante ne fonctionne pas ?? sachant que si j'affiche actionRequest.getContextPath() + "fichier.xls" ça me donne bien le chemin vers mon fichier.xls.
Il y a des choses qui m'échappent...
Pourquoi est-ce que la ligne suivante ne fonctionne pas ?? sachant que si j'affiche actionRequest.getContextPath() + "fichier.xls" ça me donne bien le chemin vers mon fichier.xls.
FileInputStream fs = new FileInputStream(actionRequest.getContextPath() + "fichier.xls");
Il y a des choses qui m'échappent...
Leo Pratlong, modifié il y a 12 années.
RE: importation d'un fichier dans une classe java
Expert Publications: 363 Date d'inscription: 06/07/10 Publications récentes
Le chemin relatif ou absolu ? Le getRealPath renvoie le chemin absolu sur le serveur. En ce sens, il est plus facile à utiliser.
Vous avez quoi comme variable en entrée de votre méthode d'action (processAction, execute, ... ?).
Ne faut-il pas un "/" juste avant "fichier.xls" ?
Vous avez quoi comme variable en entrée de votre méthode d'action (processAction, execute, ... ?).
Ne faut-il pas un "/" juste avant "fichier.xls" ?
Jérémy Quentel, modifié il y a 12 années.
RE: importation d'un fichier dans une classe java
New Member Publications: 6 Date d'inscription: 04/08/11 Publications récentes
j'avais essayé avec le "/", même échec...
voici les deux paramètres de ma méthode.
ActionRequest actionRequest
ActionResponse actionResponse
voici les deux paramètres de ma méthode.
ActionRequest actionRequest
ActionResponse actionResponse
Jérémy Quentel, modifié il y a 12 années.
RE: importation d'un fichier dans une classe java
New Member Publications: 6 Date d'inscription: 04/08/11 Publications récentes
Et pour ce qui est du chemin relatif ou absolu... pour l'instant j'aimerais trouver une technique qui fonctionne, que ce soit relatif ou absolu... =)
Leo Pratlong, modifié il y a 12 années.
RE: importation d'un fichier dans une classe java
Expert Publications: 363 Date d'inscription: 06/07/10 Publications récentes
Pour la récup du path du fichier, ça m'a l'air bon.
Si le chemin est bon, il s'agit peut-être d'un problème de droits du fichier.
Il faut que l'utilisateur qui lance le serveur ait les droits d'accès à ce fichier.
Edit :
Oui oui, j'ai bien compris. Mais je demandais si le chemin que renvoyait actionRequest.getContextPath() était relatif ou absolu ;).
Si le chemin est bon, il s'agit peut-être d'un problème de droits du fichier.
Il faut que l'utilisateur qui lance le serveur ait les droits d'accès à ce fichier.
Edit :
our l'instant j'aimerais trouver une technique qui fonctionne, que ce soit relatif ou absolu... =)
Oui oui, j'ai bien compris. Mais je demandais si le chemin que renvoyait actionRequest.getContextPath() était relatif ou absolu ;).
Jérémy Quentel, modifié il y a 12 années.
RE: importation d'un fichier dans une classe java
New Member Publications: 6 Date d'inscription: 04/08/11 Publications récentes
le chemin renvoyé est absolu : du style
/nom_du_portlet
David H Nebinger, modifié il y a 12 années.
RE: importation d'un fichier dans une classe java
Liferay Legend Publications: 14919 Date d'inscription: 02/09/06 Publications récentesJérémy Quentel:
Bonjour à tous,
Dans le cadre du développement d'un portail Liferay, j'ai besoin d'importer un fichier Excel pour y insérer des données et le mettre à disposition de l'utilisateur.
Mon souci arrive dès l'import :public void generateXLS(ActionRequest actionRequest, ActionResponse actionResponse) throws IOException, PortletException { try { // Ouverture du fichier xls FileInputStream fs = new FileInputStream("/modeleLigneCommande.xls");. [...] } catch (FileNotFoundException fnf) { actionResponse.setRenderParameter("url", "ERREUR : fnf"); }
J'ai testé énormément de possibilités, mais je ne vois pas comment récupérer un fichier.
Actuellement, le fichier .xls est situé à la racine de mon projet.
Si quelqu'un a des idées, je suis preneur !
Merci d'avance !!!
FileInputStream doesn't know anything about your current context.
You should be looking into the getResourceAsStream() method that knows how to return an input stream on the given named resource.