Forma de retornar datos de tipo bytes de un web services
Publicado por REGINA A (2 intervenciones) el 08/05/2014 22:17:52
Buen día
Tengo un web service en java que obtiene datos de tipo bytes de una base de datos, estos bytes son imagenes. Los obtengos satifactoriamente guardandolo en una estructura de bytes donde se guardan el imageFront y el imageBack (nombre de los valores que le di), al momento de retornar esta estructura de bytes del web service, tengo una duda de la forma como le retorna a un cliente que lo consume a través del wsdl. El xml response me responde algo así:
<?xml version="1.0" encoding="UTF-8" ?>
- <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <soapenv:Body>
- <obtenerImagenesResponse xmlns="http://com">
- <obtenerImagenesReturn>
<imageback xmlns="http://bean">--1</imageback>
<imageback xmlns="http://bean">-90</imageback>
<imageback xmlns="http://bean">-45</imageback>
<imageback xmlns="http://bean">-60</imageback>
<imageback xmlns="http://bean">-7</imageback>
<imageback xmlns="http://bean">-1</imageback>
(n etiquetas <imageback )
<imageback xmlns="http://bean">-1</imageback>
<imagefront xmlns="http://bean">-3</imagefront>
<imagefront xmlns="http://bean">-9</imagefront>
<imagefront xmlns="http://bean">--39</imagefront>
<imagefront xmlns="http://bean">-45</imagefront>
<imagefront xmlns="http://bean">-39</imagefront>
(n etiquetas <imagefront )
<imagefront xmlns="http://bean">-39.......</imagefront>
</obtenerImagenesReturn>
</obtenerImagenesResponse>
</soapenv:Body>
</soapenv:Envelope>
No hay una manera que el xml response responda los bytes de imageback e imagefront en una sola etiqueta cada una??? Como por ejemplo:
<?xml version="1.0" encoding="UTF-8" ?>
- <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <soapenv:Body>
- <obtenerImagenesResponse xmlns="http://com">
- <obtenerImagenesReturn>
<imageback xmlns="http://bean">-1.......</imageback>
<imagefront xmlns="http://bean">-39.......</imagefront>
</obtenerImagenesReturn>
</obtenerImagenesResponse>
</soapenv:Body>
</soapenv:Envelope>
Por qué pregunto esto? Porque lo probé de un cliente java y recibe lo bytes y lo transforma a una imagen perfectamente pero en realidad lo va a consumir un cliente power builder y el mismo recorre el xml leyendo nodo por nodo y no interpreta que son los bytes de una imagen. Mi web services está en java.
Espero su respuesta.
Saludos
Tengo un web service en java que obtiene datos de tipo bytes de una base de datos, estos bytes son imagenes. Los obtengos satifactoriamente guardandolo en una estructura de bytes donde se guardan el imageFront y el imageBack (nombre de los valores que le di), al momento de retornar esta estructura de bytes del web service, tengo una duda de la forma como le retorna a un cliente que lo consume a través del wsdl. El xml response me responde algo así:
<?xml version="1.0" encoding="UTF-8" ?>
- <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <soapenv:Body>
- <obtenerImagenesResponse xmlns="http://com">
- <obtenerImagenesReturn>
<imageback xmlns="http://bean">--1</imageback>
<imageback xmlns="http://bean">-90</imageback>
<imageback xmlns="http://bean">-45</imageback>
<imageback xmlns="http://bean">-60</imageback>
<imageback xmlns="http://bean">-7</imageback>
<imageback xmlns="http://bean">-1</imageback>
(n etiquetas <imageback )
<imageback xmlns="http://bean">-1</imageback>
<imagefront xmlns="http://bean">-3</imagefront>
<imagefront xmlns="http://bean">-9</imagefront>
<imagefront xmlns="http://bean">--39</imagefront>
<imagefront xmlns="http://bean">-45</imagefront>
<imagefront xmlns="http://bean">-39</imagefront>
(n etiquetas <imagefront )
<imagefront xmlns="http://bean">-39.......</imagefront>
</obtenerImagenesReturn>
</obtenerImagenesResponse>
</soapenv:Body>
</soapenv:Envelope>
No hay una manera que el xml response responda los bytes de imageback e imagefront en una sola etiqueta cada una??? Como por ejemplo:
<?xml version="1.0" encoding="UTF-8" ?>
- <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <soapenv:Body>
- <obtenerImagenesResponse xmlns="http://com">
- <obtenerImagenesReturn>
<imageback xmlns="http://bean">-1.......</imageback>
<imagefront xmlns="http://bean">-39.......</imagefront>
</obtenerImagenesReturn>
</obtenerImagenesResponse>
</soapenv:Body>
</soapenv:Envelope>
Por qué pregunto esto? Porque lo probé de un cliente java y recibe lo bytes y lo transforma a una imagen perfectamente pero en realidad lo va a consumir un cliente power builder y el mismo recorre el xml leyendo nodo por nodo y no interpreta que son los bytes de una imagen. Mi web services está en java.
Espero su respuesta.
Saludos
Valora esta pregunta


0