Re: [java-l] llamar a clases de JAVA desde genexus Evo1

En este link encuentras lo necesario para trabajar con clases externas (objetos externos)
http://wiki.gxtechnical.com/commwiki/servlet/hwiki?Category:External+Object,

las clases externas de preferencia se usan cuando el codigo es mucho o cuando no tienes el codigo de tus clases, pero si es para una funcionalidad por ejemplo el MD5, puedes escribir el codigo en genexus usandolo de la siguiente manera:

//Source
DO 'MD5'

este SUB contiene el codigo para encriptar un valor a MD5
Sub 'MD5'
java String parm1 = [!&valor!];
java java.security.MessageDigest m = null;
    java String result = "";
    java try{
    java   m = java.security.MessageDigest.getInstance("MD5");
   java   } catch (Exception e1) { }

    java try{
    java         m.update(parm1.getBytes("UTF8"));
    java } catch (java.io.UnsupportedEncodingException e2) { }

    java  byte s[] = m.digest();        
    java for (int i = 0; i < s.length; i++)
    java {
    java   result += Integer.toHexString((0x000000ff & s[i]) | 0xffffff00).substring(6);
    java }
    java [!&result!] = result;
csharp System.String Value= [!&valor!];
csharp System.String result = "";
    csharp try
    csharp {
    csharp        System.Security.Cryptography.MD5CryptoServiceProvider x = new System.Security.Cryptography.MD5CryptoServiceProvider();
    csharp        byte[] data = System.Text.Encoding.UTF8.GetBytes(Value);                
    csharp        data = x.ComputeHash(data);            
    csharp        for (int i = 0; i < data.Length; i++) result += data[i].ToString("x2").ToLower();
    csharp }catch(Exception e) { }
    csharp [!&result!] = result;
endsub

//Rules
parm(in:&valor,out:&result);

donde &valor es el valor a encriptar de tipo varchar
donde &result es el valor encriptado de tipo varchar 

de esta forma tu puedes tener algunas funciones completamente en java dentro de un procedimiento de genexus, a la vez puedes programar para java y C# al mismo tiempo  cuando se genera el codigo genexus toma se gun el generador que este activo

espero te sea de utilidad.


El 19 de octubre de 2010 08:40, Verónica Mora <vero_mora_33@hotmail.com> escribió:
Estimados foristas les escribo porque tengo una consulta acerca de como puedo llamar desde genexus evo1 clases de java que no fueron generadas desde genexus si alguien me podría dar algun ejemplo o información al respecto. Necesito que desde un web panel de genexus se reciban los parámetros y se invoque a la clase de java.
 
estoy trabajando con gx evo1 java 1.6 y tomcat 6
 
Mil Gracias
 
Verónica  



--
Ing. Gabriel Mancilla

--
Has recibido este mensaje porque estás suscrito al grupo "GeneXus" de Grupos de Google.
Para publicar una entrada en este grupo, envía un correo electrónico a genexus@googlegroups.com.
Para anular tu suscripción a este grupo, envía un correo electrónico a genexus+unsubscribe@googlegroups.com
Para tener acceso a más opciones, visita el grupo en http://groups.google.com/group/genexus?hl=es.

0 Response to "Re: [java-l] llamar a clases de JAVA desde genexus Evo1"

Publicar un comentario