WS_Serialization
================

Amb RMI l'únic que havíem de fer per poder enviar objectes de tipus complexes era dir que la classe "implements java.io.Serializable".

Això no serà tan fàcil amb els WebServices [1].

És per això que aquí us proposo una solució:
1. Utilitzar el ObjectOutputStream.writeObject(Object) amb conjunció amb el ByteArrayOutputStream.toByteArray() per convertir el 'Object' a 'byte[]'.
2. Enviar 'byte[]' per WebServices no és cap problema.
3. Utilitzar el ObjectInputStream.readObject() amb conjunció amb el ByteArrayInputStream() per recuperar el 'Object' a partir del 'byte[]'.

Aquí teniu uns fitxers java d'exemple que són modificacions d'exemples que he trobat googlejant [2,3].

- Data.java:	Classe simple a serialitzar ('transient' indica que un atribut no es serialitza)
- Write.java i Read.java:	Programes que guarden en un fitxer un objecte de tipus data i desprès el recuperen.
- Serializing.java:	Programa que enlloc d'utilitzar un fitxer guarda l'objecte en un 'byte[]'.

Així us estalviareu de fer vosaltres els vostre mètodes casolans per pseudo-serialitzar objectes a Strings.

--------------------------------------------------
[1] What Axis can not send via SOAP:
http://ws.apache.org/axis/java/user-guide.html#WhatAxisCanNotSendViaSOAP

[2] Object Persistence Made Easy:
http://www.javacoffeebreak.com/articles/serialization/index.html

[3] Discover the secrets of the Java Serialization API:
http://java.sun.com/developer/technicalArticles/Programming/serialization/

