Bonjour,
je suis nouveau dans les web services, je voudrais savoir comment je peux envoyer un fichier (image ou texte) du serveur vers un client (browser) dans le framework axis2
Bonjour,
je suis nouveau dans les web services, je voudrais savoir comment je peux envoyer un fichier (image ou texte) du serveur vers un client (browser) dans le framework axis2
Le transfert de binaire nécessite un encodage/decodage !
Le type xsd:hexBinary sera traduit côté Java en byte[].
Pour l'encodage/décodage tu trouveras ton bonheur dans les classes
HexBinary d'Apache Axis
&
JavaUtils de la librairie Apache Santuario
MTOM est le protocole de transfert binaire de SOAP.
La solution basique du HexBinary donné plus haut fonctionne très bien. Mais si tes données à transférer sont de taille importante il vaut mieux passer par protocole spécifique pour des raisons de performance et de fiabilité. En gros MTOM te permettra de transférer tes fichiers en attachement.
A contrario: certaine ancienne pile Web ne supporte pas MTOM. Dans tous les cas le service MTOM est à configurer sur ton serveur.
Tu peux aussi expérimenter le Streaming. Jamais testé !
Je viens de trouver un document Oracle sur ces sujets. Bonne lecture !
Note: en dehors de MTOM tu as aussi d'autres solutions qui te permette d'attacher ton fichier en dehors de l'enveloppe SOAP (donc pas très secure). Ces solutions fonctionnent sur le même principe que l'email (voir l'api SAAJ)...
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager