Tengo la versión 3.7 de adempiere corriendo en java 1.7.
Estoy incluyendo una librería para un proyecto de facturación electrónica y ésta librería requería agregar también algunas otras como dependencias, entre ellas commons-code-1.4.jar.
Ésta última librería es requerida en una clase llamada CFDv33 en el método "sellar":
at mx.bigdata.sat.cfdi.CFDv33.sellar(CFDv33.java:151)
at mx.bigdata.sat.cfdi.CFDv33.sellarComprobante(CFDv33.java:160)
at org.adempiere.webui.util.GenerateInvoiceXml33.stamp(GenerateInvoiceXml33.java:701)
Estoy seguro que está tomando otra clase commons-code, que por cierto encontré en ServerApps, jboss y tools, reemplazando las librerías commons-codec.jar por commons-codec-1.4.jar, pero continúa el error en tiempo de ejecución.
La clave es en dónde debo configurar el classpath para modo de ejecución que tome primero la librería commons-code-1.4.jar?
Agradezco de antemano.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hola,
Tengo la versión 3.7 de adempiere corriendo en java 1.7.
Estoy incluyendo una librería para un proyecto de facturación electrónica y ésta librería requería agregar también algunas otras como dependencias, entre ellas commons-code-1.4.jar.
Ésta última librería es requerida en una clase llamada CFDv33 en el método "sellar":
147 public void sellar(PrivateKey key, X509Certificate cert) throws Exception {
148 String nc = new String(cert.getSerialNumber().toByteArray());
149 cert.checkValidity();
150 byte[] bytes = cert.getEncoded();
151 Base64 b64 = new Base64(-1);
152 String certStr = b64.encodeToString(bytes);
153 document.setCertificado(certStr);
154 document.setNoCertificado(nc);
155 String signature = getSignature(key);
156 document.setSello(signature);
157 }
Éstas librerías las agregué sobre zkwebui/lib y compila todo muy bien y corre el servidor perfectamente.
Al momento de hacer la prueba truena precisamente en esa línea con el siguiente error:
16:09:41,972 ERROR [STDERR] 2017-10-21 16:09:41.36600 ===========> zkoss.handleError:1130: >>java.lang.NoSuchMethodError: org.apache.commons.codec.binary.Base64.<init>(I)V
Estoy seguro que está tomando otra clase commons-code, que por cierto encontré en ServerApps, jboss y tools, reemplazando las librerías commons-codec.jar por commons-codec-1.4.jar, pero continúa el error en tiempo de ejecución.
La clave es en dónde debo configurar el classpath para modo de ejecución que tome primero la librería commons-code-1.4.jar?
Agradezco de antemano.
Hola Helio, hay dos formas de cambiar el classpath, con gusto nos puesdes escrinir a nuestro nuevo foro, ya no estamos aqui.
Eres bienvenido a nuestro nuevo chat en linea donde puedes hacer preguntas y serán respondidas inmediatamente en: http://adempiere.net/web/guest/chat_en_linea
También puedes escribir en el Foro oficial en: http://adempiere.net/web/guest/foro
Si quieres reportar un issue, puesdes hacerlo en https://github.com/adempiere/adempiere
Es muy sencillo y puedes solicitar un usuario en http://adempiere.net/
Saludos
Yael me podrías decir en que sección solicito el acceso porque en la sección "How to join" dice que no tiene contenido.
Saludos.
Te agradezco Yael!