Tengo una tabla hash. En el interior he añadido claves y valores. Pero ahora necesito tener un arrayList para cada valor clave. Estaba pensando que necesitaba crear una ArrayList con el nombre ArrayList de la clave de la tabla hash y el contenido de los valores de la tabla hash colocados dentro de los valores. Estoy usando Ultra-Studio para realizar modificaciones en este archivo de script. Entonces, por ejemplo, en mi tabla hash, este será el nombre de ArrayList: SW_Version
En segundo lugar, se agregarán todos los valores de la versión SW. SW_Version. Creo que lo que debo hacer es primero recorrer la tabla hash, recopilar todos los valores de las versiones SW y ponerlos. Estoy muy confundido con esto, tenga paciencia conmigo. Tengo que escribir mi código JAVA en un archivo javaScript
Quería extraer datos directamente de hashTable, también necesitaría agrupar las claves y agregar los valores en arrayList.
Aquí están mis declaraciones Hashtable y ArrayList.
var legendRows = newPackages.java.util.ArrayList(); var xmlItems = newPackages.java.util.ArrayList(); var modeItems = newPackages.java.util.ArrayList(); var ircDOORSHashTable = newjava.util.Hashtable();Este es mi código:
Esta función obtiene el valor "Legacy Data" de un bean de procedimiento. Luego agrega los valores de las celdas de la tabla en HashTable "ircDOORSHashTable".
Clave de celda = var mapKeyDOORS
Valor de celda = mapKeyDOORSValue
function getDOORSData(documentID, contentBean, text) { var xmlText = cleanTable(text); try { var docFactory = Packages.javax.xml.parsers.DocumentBuilderFactory.newInstance(); var docBuilder = docFactory.newDocumentBuilder(); var sbis = newPackages.org.xml.sax.InputSource(newjava.io.StringReader(xmlText)); var document = docBuilder.parse(sbis); var root = document.getDocumentElement(); varnodeList = root.getElementsByTagName("tr"); for (row = 0; row < nodeList.getLength(); row++) { var node = nodeList.item(row); var mapKeyDOORS = newjava.lang.String(node.getElementsByTagName("td").item(0).getTextContent().trim()); var mapKeyDOORSValue = newjava.lang.String(node.getElementsByTagName("td").item(1).getTextContent().trim()); if((mapKeyDOORS !== null && mapKeyDOORS!=="") && (mapKeyDOORSValue!== null || mapKeyDOORSValue !== "")){ // Returnsanarrayoflineitems. varibplValues = parseFields(mapKeyDOORSValue); for (varf = 0; f < ibplValues.length; f++) { log("InsidegetDOORSDatafunction. InfirstPass") checkIBPL(ibplValues[f], documentID, contentBean, mapKeyDOORS); }else{ log("ArrayList xmlItem: " + ibplValues[i]); xmlItems.add(ibplValues[f]); ircDOORSHashTable.put(mapKeyDOORS, ibplValues[i]); } } } }}catch(e){ log ("ErrorfoundingingDOORSDatafunction" + e); } }
Gracias, su ayuda es muy apreciada.