Hola Ines,

En la nueva versión no hay ningún cambio en la forma que se firman los
PDFs (el único cambio ha sido para añadir firma PDF visible).

Un primer punto que puedes probar es generar la salida de la firma en
Base64 como se hacía en la versión 2.0.5 (ahora siempre se generan los
datos en plano). Para ello añade la siguiente instrucción a tu código
JavaScript:

cryptoapplet.setOutputDataEncoding("BASE64");

Esto provocará que el resultado que se genere en tu campo de
formulario "url_file" esté en base64 y tengas que decodificarlo para
ver el PDF final.

Si esto no te funciona, te recomiendo que utilices siempre la función
"signDataUrlToUrl". Esta función te permite enviar el resultado de la
firma a una URL remota haciendo un POST y pasando el contenido
mediante el parámetro "content".

Si tienes PHP en el servidor, puedes crearte un script que recoja el
resultado de la firma y lo volque a un fichero (se supone que has
establecido el OutputDataEncoding a BASE64):

<?

file_put_contents("signed.pdf", base64_decode($_POST['content']));

?>

Respecto a la documentación de la nueva versión, sólo decir que está
en camino :)

Desgraciadamente, sólo somos dos personas dedicadas al proyecto y
dedicamos el poco tiempo que tenemos libre a ir mejorando y testeando
funcionalidad ... En cualquier caso, somos conscientes de que es un
aspecto importante e intentaremos publicarla lo antes posible.

---
Salut,
====================================
Ricardo Borillo Domenech
http://xml-utils.com / http://twitter.com/borillo



2010/5/5 Ines Rodriguez Zurdo <[email protected]>:
> No consigo que se me genere un documento pdf firmado correcto. Examinando el
> resultado veo que falta más de la mitad del archivo en el resultado de la
> firma. Es un archivo bastante pequeño (5K), pero si edito con el block de
> notas el archivo original, y lo comparo con el resultado firmado, veo que
> éste último es claramente más pequeño. De hecho el documento firmado ocupa
> 1K.
>
> Utilizo el método signDataUrlToFunc. ¿Hay alguna limitación de tamaño en el
> parámetro signature, o existe algún parámetro nuevo que evita este problema?
>
> Este es el código que utilizo para firmar:
>
> function Firmar(){
> CryptoAppletid= document.getElementById('CryptoApplet');
> CryptoAppletid.setLanguage("ES_es");
> CryptoAppletid.setInputDataEncoding("PLAIN");
> CryptoAppletid.setSignatureOutputFormat("PDF");
> CryptoAppletid.signDataUrlToFunc(window.location.protocol +"//"
> +window.location.host + document.forms[0].url_file.value,"onSignOk");
> }
>
> function onSignOk(signature){
> window.document.forms[0].texto.value=signature;
> window.document.forms[0].submit();
> }
>
>
> ¿Tenéis algún sitio donde pueda encontrar documentación sobre el uso del
> applet de esta versión? La versión anterior estaba muy bien documentada,
> pero no consigo encontrar la documentación actualizada para esta versión.
> Creo que los problemas que estoy teniendo, aparte de mi ignorancia en el
> entorno de programación con java, se deben a la dificultad que estoy
> teniendo para encontrar la documentación relacionada con esta versión.
>
> Saludos.
>
> _______________________________________________
> CryptoApplet mailing list
> [email protected]
> http://llistes.uji.es/mailman/listinfo/cryptoapplet
>
>
_______________________________________________
CryptoApplet mailing list
[email protected]
http://llistes.uji.es/mailman/listinfo/cryptoapplet

Responder a