Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CFDv33.sellar: NoSuchMethodError: org.apache.commons.codec.binary.Base64 #183

Open
heliogutierrez opened this issue Oct 21, 2017 · 7 comments

Comments

@heliogutierrez
Copy link

Buen día,

Implementé la nueva librería para el timbrado con la versión 3.3 pero me aparece este error al llegar al renglon donde sella:

**java.lang.NoSuchMethodError: org.apache.commons.codec.binary.Base64.(I)V

at mx.bigdata.sat.cfdi.CFDv33.sellar(CFDv33.java:151)
at mx.bigdata.sat.cfdi.CFDv33.sellarComprobante(CFDv33.java:160)**

Instalé la librería commons-code versión 1.11 pero sigue apareciendo el error.
Hay algún orden en que debieran estar las librerías de java?

Saludos.

@SAAVER
Copy link

SAAVER commented Oct 23, 2017

Buen dia @heliogutierrez, segun mi poca experiencia con las librerias de java, debes utilizar commons-code-1.4.jar, actualmente esa se encuentra en mi proyecto y funciona correctamente.

Saludos, ojala eso resuelva el problema.

@hortegag91
Copy link
Collaborator

@heliogutierrez tal vez estes teniendo conflictos con otras de tus librerias del proytecto, te recomiendo abrir tu archivo jar (el de tu proyecto) con winrar, y revisar en META-INF el archvo manifiest, ahi debe decir todas las librerias a las que tu sistema llama. Asegurate que la librería esté en dicha ruta, ya que en ocaciones, otras librerias hacen uso de diferentes versiones, y entran en cnflictos.

@heliogutierrez
Copy link
Author

Pues encontré muchas versiones commons-codec en mi proyecto y todas las he sustituído por la que menciona @SAAVER commons-codec-1.4.jar incluyendo las referencias en los archivos build.xml y sigue enviando el mismo error, ya busqué con Eclipse todo lo que haga mención de commons-codec y no encuentro de dónde esté tomando la versión diferente del jar.

@hortegag91
Copy link
Collaborator

@heliogutierrez antes hay que identificar explicitamente el error, la manera de ver si es conflicto de jars, es siguiendo los pasos que te estoy indicando en la respuesta hace 15 días, asi sabremos exactamente si ese es el problema, y de ser asi será más fácil de resolver. Te pido si pudieras publicar lo que encuentres en el archivo manifiest.

@heliogutierrez
Copy link
Author

@hortegag91 El proyecto donde estoy utilizando la librería se llama Adempiere, es un ERP en java 1.7
que corre con servidor jboss y framework ZK, el archivo que ejecuta es un war, y dentro de este en la carpeta META-INF está vacía, de hecho no he visto ningún archivo llamado manifiest.
Existen archivos build.xml en cada módulo y es ahí donde he modificado que mande llamar el jar que necesito.

Aqui dejo el archivo build.xml del módulo principal que estoy ejecutando (webui.war):
build.xml.txt

@heliogutierrez
Copy link
Author

heliogutierrez commented Nov 9, 2017

Hay manera de desplegar en consola la ubicación de la clase Base64.class que está tomando?

@heliogutierrez
Copy link
Author

Ya resolví el error con la siguiente instrucción supe cual librería estaba tomando eliminándola y ya toma la versión correcta.

System.out.println(Base64.class.getProtectionDomain().getCodeSource().getLocation());

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants