style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">

PDF como String en WebService

Hola a todos!!!

Espero me puedan ayudar, tengo un cliente en java que consume un WebService realizado en PHP, que genera una factura electrónica, regresandome el XML y PDF correspondientes en forma de String, pero de ahí no se como convertir ese String para generar los archivos.

Comentarios

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.

Re: PDF como String

 

Si la representación de tales archivos es una cadena, entonces existen dos posibilidades:

  • Los archivos fueron codificados como xsd:base64Binary. Por ejemplo, la siguiente cadena representa un archivo GIF en base64:

    String data = "R0lGODlhEAAQAMQAAAAAAA+P6a08MpmZ/2ZmzOGdd8zM/zMzZv///9dcV"
            + "BCW7hKT6g6c7+SbeQ6i8q1CMeCefAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
            + "AAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEHAAEALAAAAAAQABAAAAVXYCCOQUO"
            + "eqICuAaQW7OgGiRkXaqPGgdDoMJ4OUmMRCINSwhcYEAKHg+iANFgNA2cUKo16"
            + "vwDpdDowIBBY7fTJ/X6hbLIZS5DWR+y6N4+PxvtUeHpuVHEhADs=";
    byte[] array = javax.xml.bind.DatatypeConverter.parseBase64Binary(data);
    JOptionPane.showMessageDialog(null, new ImageIcon(array));
  • Los archivos fueron codificados como xsd:hexBinary. Por ejemplo, la siguiente cadena representa un archivo GIF en hexadecimal:

    String data = "47494638396110001000c400000000000f8fe9ad3c329999ff6666cce"
            + "19d77ccccff333366ffffffd75c541096ee1293ea0e9cefe49b790ea2f2ad"
            + "4231e09e7c000000000000000000000000000000000000000000000000000"
            + "00000000000000000000000000000000000000021f90401070001002c0000"
            + "00001000100000055760208e41439ea880ae01a416ece8068919176aa3c68"
            + "1d0e8309e0e526311088352c2171810028783e88034580d0367142a8d7abf"
            + "00e9743a30201058edf4c9fd7ea16cb2194b90d647ecba378f8fc6fb54787"
            + "a6e547121003b";
    byte[] array = javax.xml.bind.DatatypeConverter.parseHexBinary(data);
    JOptionPane.showMessageDialog(null, new ImageIcon(array));

En ambos ejemplos, el archivo es el mismo, pero codificado, ora en base64, ora en hexadecimal. La clase javax.xml.bind.DatatypeConverter está disponible desde Java SE 6.

¡Por si sirve de algo!

~~~

Muchas gracias!!! funciono a

Muchas gracias!!! funciono a la perfección.

style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">