Avalados por :

Cómo dividir una cadena en una matriz de lista en Groovy: guía paso a paso

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 5 Vistas
0
Cargando...

Hi guys,

Estoy escribiendo el siguiente código para dividir la cadena (separada por comas) en una matriz de lista.

Estoy dando múltiples valores al "valor de origen" en el modificador de contenido.

mycontentmodifier.png

Código:

import com.sap.gateway.ip.core.customdev.util.Message;

import java.util.HashMap;

import java.util.regex.*;

import groovy.xml.*;

def Message processData(Message message) {

def headers = message.getHeaders();

def rows;

def properties = message.getProperties();

def credentials = properties.get("UserList");

List<String> myList = Arrays.asList(credentials.split(","));

for(i=0;i < myList.size();i++)

{

rows = rows + (myList[i]+"\n");

}

// rows = rows.replace("null","");

message.setBody(rows)

return message;

}

Pero cuando ejecuto esto, obtengo la siguiente salida.

Salida: myoutput.png

Estoy obteniendo un nulo al principio, puedo reemplazarlo fácilmente. También intenté asignar un valor nulo a mi variable "rows". Pero aún obtengo la misma salida. Quiero saber qué está mal con mi código groovy.

¡Gracias!

mycontentmodifier.png myoutput.png
Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

3 Respuestas

0
Cargando...

Hola Veena,

Dado que ya has creado la Lista, puedes verificar y eliminar los valores nulos primero, y luego continuar con tu lógica.

list.removeAll([null])

Saludos cordiales,

Akmal

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Hola,

Sí, funcionó. Debería definir "" a mi variable. ¡Fue solo un error mío!

Muchas gracias.

Saludos,

Veena

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Querida Veena,

Este problema se puede solucionar de varias formas. Yo diría que simplemente defina las filas como "" al inicializar.

import com.sap.gateway.ip.core.customdev.util.Message;

import java.util.HashMap;

import java.util.regex.*;

import groovy.xml.*;

def Message processData(Message message) {

def headers = message.getHeaders();

def rows = "";

def properties = message.getProperties();

def credentials = properties.get("UserList");

List<String> myList = Arrays.asList(credentials.split(","));

for(i=0;i < myList.size();i++)

{

rows = rows + (myList[i]+"\n");

}

// rows = rows.replace("null","");

message.setBody(rows)

return message;

}
Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?