Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Servlet et requete POST

2 réponses
Avatar
Tony
Bonjour,

Voila j'ai une servlet qui communique avec un logiciel, ce logiciel
m'envoi ddiff=E9rent param=E8tres que je traite bien cependant je
n'arrive pas =E0 r=E9cuperer le fichier texte dedans correctement.

je recupere ceci:

----------112406140925851
Content-Disposition: form-data; name=3D"Files";
filename=3D"c:\Farmadwin\temp\BU2707.txt"
Content-Type: text/plain

0999999 1089820 00CERP 00002
10001000102434



----------112406140925851--

alors que la seule chose qui m'interesse est:
0999999 1089820 00CERP 00002
10001000102434



pour recuperer je tappe ceci dans ma classe qui extends HttpServlet:
byte[] rawInput =3D this.getRequestData(
request.getInputStream(),
request.getContentLength());

Je tiens absolument a r=E9cuperer un tablo byte par contre.

Merci

2 réponses

Avatar
TestMan
Bonjour,

Voila j'ai une servlet qui communique avec un logiciel, ce logiciel
m'envoi ddifférent paramètres que je traite bien cependant je
n'arrive pas à récuperer le fichier texte dedans correctement.

je recupere ceci:

----------112406140925851
Content-Disposition: form-data; name="Files";
filename="c:FarmadwintempBU2707.txt"
Content-Type: text/plain

0999999 1089820 00CERP 00002
10001000102434



----------112406140925851--

alors que la seule chose qui m'interesse est:
0999999 1089820 00CERP 00002
10001000102434



pour recuperer je tappe ceci dans ma classe qui extends HttpServlet:
byte[] rawInput = this.getRequestData(
request.getInputStream(),
request.getContentLength());

Je tiens absolument a récuperer un tablo byte par contre.

Merci

Bonjour,


http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/servlet/ServletRequest.html#getInputStream()
puis faire des read (ou readLine) jusqu'à "épuisement" selon tes besoins...

Attention, si tu manipules obligatoirement des charactères mieux vaut
passer par :

http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/servlet/ServletRequest.html#getReader()

A+
TM

Avatar
Tony

Bonjour,

Voila j'ai une servlet qui communique avec un logiciel, ce logiciel
m'envoi ddifférent paramètres que je traite bien cependant je
n'arrive pas à récuperer le fichier texte dedans correctement.

je recupere ceci:

----------112406140925851
Content-Disposition: form-data; name="Files";
filename="c:FarmadwintempBU2707.txt"
Content-Type: text/plain

0999999 1089820 00CERP 00002
10001000102434



----------112406140925851--

alors que la seule chose qui m'interesse est:
0999999 1089820 00CERP 00002
10001000102434



pour recuperer je tappe ceci dans ma classe qui extends HttpServlet:
byte[] rawInput = this.getRequestData(
request.getInputStream(),
request.getContentLength());

Je tiens absolument a récuperer un tablo byte par contre.

Merci

Bonjour,


http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/servlet/ServletReques t.html#getInputStream()
puis faire des read (ou readLine) jusqu'à "épuisement" selon tes beso ins...

Attention, si tu manipules obligatoirement des charactères mieux vaut
passer par :

http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/servlet/ServletReques t.html#getReader()

A+
TM


Merci pour ta reponse,
Le jour ou j'ai ecrit ca j'etais pas en grande forme et j'ai oublié
beaucoup de chose.
La requete html envoye en POST contient un fichier de type
MIME=mutltipart/form-data.
Et je ne sais pas du tout comment récuperer ce genre de type. Sur
internet j'ai trouvé comment upload mais jamais comment download. De
plus on dirait qu'on stocke le fichier dans un répertoire temp, si on
reçoit plusieurs requete à la seconde cela ne risque pas de poser de
problèmes. J'avour que je suis un peu perdu sur ce type d'encodage.

A+