List of usage examples for org.w3c.dom Element getNamespaceURI
public String getNamespaceURI();
null
if it is unspecified (see ). From source file:Main.java
public static List<Element> elements(Element element, String namespace, String localName) { if (element == null || !element.hasChildNodes()) { return Collections.emptyList(); }//from ww w .j a v a2 s. c o m List<Element> elements = new ArrayList<Element>(); for (Node child = element.getFirstChild(); child != null; child = child.getNextSibling()) { String childNamespace = element.getNamespaceURI(); if (child.getNodeType() == Node.ELEMENT_NODE && (namespace != null ? namespace.equals(childNamespace) : childNamespace == null) && localName.equals(element.getLocalName())) { elements.add((Element) child); } } return elements; }
From source file:Main.java
protected static String nodeToString(Node node, Set<String> parentPrefixes, String namespaceURI) throws Exception { StringBuilder b = new StringBuilder(); if (node == null) { return ""; }//from www . ja v a 2 s . c o m if (node instanceof Element) { Element element = (Element) node; b.append("<"); b.append(element.getNodeName()); Map<String, String> thisLevelPrefixes = new HashMap(); if (element.getPrefix() != null && !parentPrefixes.contains(element.getPrefix())) { thisLevelPrefixes.put(element.getPrefix(), element.getNamespaceURI()); } if (element.hasAttributes()) { NamedNodeMap map = element.getAttributes(); for (int i = 0; i < map.getLength(); i++) { Node attr = map.item(i); if (attr.getNodeName().startsWith("xmlns")) continue; if (attr.getPrefix() != null && !parentPrefixes.contains(attr.getPrefix())) { thisLevelPrefixes.put(attr.getPrefix(), element.getNamespaceURI()); } b.append(" "); b.append(attr.getNodeName()); b.append("=\""); b.append(attr.getNodeValue()); b.append("\""); } } if (namespaceURI != null && !thisLevelPrefixes.containsValue(namespaceURI) && !namespaceURI.equals(element.getParentNode().getNamespaceURI())) { b.append(" xmlns=\"").append(namespaceURI).append("\""); } for (Map.Entry<String, String> entry : thisLevelPrefixes.entrySet()) { b.append(" xmlns:").append(entry.getKey()).append("=\"").append(entry.getValue()).append("\""); parentPrefixes.add(entry.getKey()); } NodeList children = element.getChildNodes(); boolean hasOnlyAttributes = true; for (int i = 0; i < children.getLength(); i++) { Node child = children.item(i); if (child.getNodeType() != Node.ATTRIBUTE_NODE) { hasOnlyAttributes = false; break; } } if (!hasOnlyAttributes) { b.append(">"); for (int i = 0; i < children.getLength(); i++) { b.append(nodeToString(children.item(i), parentPrefixes, children.item(i).getNamespaceURI())); } b.append("</"); b.append(element.getNodeName()); b.append(">"); } else { b.append("/>"); } for (String thisLevelPrefix : thisLevelPrefixes.keySet()) { parentPrefixes.remove(thisLevelPrefix); } } else if (node.getNodeValue() != null) { b.append(encodeText(node.getNodeValue())); } return b.toString(); }
From source file:Main.java
protected static String nodeToString(Node node, Set<String> parentPrefixes, String namespaceURI) throws Exception { StringBuilder b = new StringBuilder(); if (node == null) { return ""; }/* ww w . j av a 2 s .c om*/ if (node instanceof Element) { Element element = (Element) node; b.append("<"); b.append(element.getNodeName()); Map<String, String> thisLevelPrefixes = new HashMap(); if (element.getPrefix() != null && !parentPrefixes.contains(element.getPrefix())) { thisLevelPrefixes.put(element.getPrefix(), element.getNamespaceURI()); } if (element.hasAttributes()) { NamedNodeMap map = element.getAttributes(); for (int i = 0; i < map.getLength(); i++) { Node attr = map.item(i); if (attr.getNodeName().startsWith("xmlns")) continue; if (attr.getPrefix() != null && !parentPrefixes.contains(attr.getPrefix())) { thisLevelPrefixes.put(attr.getPrefix(), element.getNamespaceURI()); } b.append(" "); b.append(attr.getNodeName()); b.append("=\""); b.append(attr.getNodeValue()); b.append("\""); } } if (namespaceURI != null && !thisLevelPrefixes.containsValue(namespaceURI) && !namespaceURI.equals(element.getParentNode().getNamespaceURI())) { b.append(" xmlns=\"").append(namespaceURI).append("\""); } for (Map.Entry<String, String> entry : thisLevelPrefixes.entrySet()) { b.append(" xmlns:").append(entry.getKey()).append("=\"").append(entry.getValue()).append("\""); parentPrefixes.add(entry.getKey()); } NodeList children = element.getChildNodes(); boolean hasOnlyAttributes = true; for (int i = 0; i < children.getLength(); i++) { Node child = children.item(i); if (child.getNodeType() != Node.ATTRIBUTE_NODE) { hasOnlyAttributes = false; break; } } if (!hasOnlyAttributes) { b.append(">"); for (int i = 0; i < children.getLength(); i++) { b.append(nodeToString(children.item(i), parentPrefixes, children.item(i).getNamespaceURI())); } b.append("</"); b.append(element.getNodeName()); b.append(">"); } else { b.append("/>"); } for (String thisLevelPrefix : thisLevelPrefixes.keySet()) { parentPrefixes.remove(thisLevelPrefix); } } else if (node.getNodeValue() != null) { b.append(encodeText(node.getNodeValue(), node instanceof Attr)); } return b.toString(); }
From source file:Main.java
protected static String nodeToString(Node node, Set<String> parentPrefixes, String namespaceURI) throws Exception { StringBuilder b = new StringBuilder(); if (node == null) { return ""; }/*from ww w . j ava 2s. c o m*/ if (node instanceof Element) { Element element = (Element) node; b.append("<"); b.append(element.getNodeName()); Map<String, String> thisLevelPrefixes = new HashMap(); if (element.getPrefix() != null && !parentPrefixes.contains(element.getPrefix())) { thisLevelPrefixes.put(element.getPrefix(), element.getNamespaceURI()); } if (element.hasAttributes()) { NamedNodeMap map = element.getAttributes(); for (int i = 0; i < map.getLength(); i++) { Node attr = map.item(i); if (attr.getNodeName().startsWith("xmlns")) continue; if (attr.getPrefix() != null && !parentPrefixes.contains(attr.getPrefix())) { thisLevelPrefixes.put(attr.getPrefix(), element.getNamespaceURI()); } b.append(" "); b.append(attr.getNodeName()); b.append("=\""); b.append(attr.getNodeValue()); b.append("\""); } } if (namespaceURI != null && !thisLevelPrefixes.containsValue(namespaceURI) && !namespaceURI.equals(element.getParentNode().getNamespaceURI())) { b.append(" xmlns=\"").append(namespaceURI).append("\""); } for (Map.Entry<String, String> entry : thisLevelPrefixes.entrySet()) { b.append(" xmlns:").append(entry.getKey()).append("=\"").append(entry.getValue()).append("\""); parentPrefixes.add(entry.getKey()); } NodeList children = element.getChildNodes(); boolean hasOnlyAttributes = true; for (int i = 0; i < children.getLength(); i++) { Node child = children.item(i); if (child.getNodeType() != Node.ATTRIBUTE_NODE) { hasOnlyAttributes = false; break; } } if (!hasOnlyAttributes) { b.append(">"); for (int i = 0; i < children.getLength(); i++) { b.append(nodeToString(children.item(i), parentPrefixes, children.item(i).getNamespaceURI())); } b.append("</"); b.append(element.getNodeName()); b.append(">"); } else { b.append("/>"); } for (String thisLevelPrefix : thisLevelPrefixes.keySet()) { parentPrefixes.remove(thisLevelPrefix); } } else if (node.getNodeValue() != null) { b.append(encodeText(node.getNodeValue())); } return b.toString(); }
From source file:Main.java
protected static String nodeToString(Node node, Set<String> parentPrefixes, String namespaceURI) throws Exception { StringBuilder b = new StringBuilder(); if (node == null) { return ""; }/* ww w . j a v a 2s. c om*/ if (node instanceof Element) { Element element = (Element) node; b.append("<"); b.append(element.getNodeName()); Map<String, String> thisLevelPrefixes = new HashMap(); if (element.getPrefix() != null && !parentPrefixes.contains(element.getPrefix())) { thisLevelPrefixes.put(element.getPrefix(), element.getNamespaceURI()); } if (element.hasAttributes()) { NamedNodeMap map = element.getAttributes(); for (int i = 0; i < map.getLength(); i++) { Node attr = map.item(i); if (attr.getNodeName().startsWith("xmlns")) continue; if (attr.getPrefix() != null && !parentPrefixes.contains(attr.getPrefix())) { thisLevelPrefixes.put(attr.getPrefix(), element.getNamespaceURI()); } b.append(" "); b.append(attr.getNodeName()); b.append("=\""); b.append(attr.getNodeValue()); b.append("\""); } } if (namespaceURI != null && !thisLevelPrefixes.containsValue(namespaceURI) && !namespaceURI.equals(element.getParentNode().getNamespaceURI())) { b.append(" xmlns=\"").append(namespaceURI).append("\""); } for (Map.Entry<String, String> entry : thisLevelPrefixes.entrySet()) { b.append(" xmlns:").append(entry.getKey()).append("=\"").append(entry.getValue()).append("\""); parentPrefixes.add(entry.getKey()); } NodeList children = element.getChildNodes(); boolean hasOnlyAttributes = true; for (int i = 0; i < children.getLength(); i++) { Node child = children.item(i); if (child.getNodeType() != Node.ATTRIBUTE_NODE) { hasOnlyAttributes = false; break; } } if (!hasOnlyAttributes) { b.append(">"); for (int i = 0; i < children.getLength(); i++) { b.append(nodeToString(children.item(i), parentPrefixes, children.item(i).getNamespaceURI())); } b.append("</"); b.append(element.getNodeName()); b.append(">"); } else { b.append("/>"); } for (String thisLevelPrefix : thisLevelPrefixes.keySet()) { parentPrefixes.remove(thisLevelPrefix); } } else if (node.getNodeValue() != null) { b.append(encodeText(node, node.getNodeValue())); } return b.toString(); }
From source file:Main.java
/** * Returns the index of element in the list of all elements with the same name in its parent node. * If element's parent node is null, this function returns 0. *//* w w w. j a v a 2s . c om*/ public static int getElementIndex(Element element) { int index = 1; Node sibling = element; while ((sibling = sibling.getPreviousSibling()) != null) { if (sibling instanceof Element) { Element siblingElement = (Element) sibling; // check if element names and element namespaces match if (element.getLocalName().equals(siblingElement.getLocalName()) && (element.getNamespaceURI() == null ? siblingElement.getNamespaceURI() == null : element.getNamespaceURI().equals(siblingElement.getNamespaceURI()))) { ++index; } } } return index; }
From source file:com.sitewhere.configuration.ConfigurationMigrationSupport.java
/** * Moves event processing elements from previous locations into new element. * /*from w w w.j av a2s .c o m*/ * @param config * @param dcomm * @param eproc * @param document * @throws SiteWhereException */ protected static void moveEventProcessingElements(Element config, Element dcomm, Element eproc, Document document) throws SiteWhereException { Element iproc = DomUtils.getChildElementByTagName(dcomm, "inbound-processing-strategy"); if (iproc != null) { dcomm.removeChild(iproc); eproc.appendChild(iproc); } Element ichain = DomUtils.getChildElementByTagName(config, "inbound-processing-chain"); if (ichain != null) { config.removeChild(ichain); eproc.appendChild(ichain); } Element oproc = DomUtils.getChildElementByTagName(dcomm, "outbound-processing-strategy"); if (oproc != null) { dcomm.removeChild(oproc); eproc.appendChild(oproc); } Element ochain = DomUtils.getChildElementByTagName(config, "outbound-processing-chain"); if (ochain != null) { config.removeChild(ochain); eproc.appendChild(ochain); } Element reg = DomUtils.getChildElementByTagName(dcomm, "registration"); if (reg != null) { String qname = (reg.getPrefix() != null) ? (reg.getPrefix() + ":" + "device-services") : "device-services"; document.renameNode(reg, reg.getNamespaceURI(), qname); } }
From source file:eu.esdihumboldt.hale.common.core.io.HaleIO.java
/** * Get the value of a complex property represented as a DOM element. * //from www. j av a2 s .c o m * @param element the DOM element * @param context the context object, may be <code>null</code> * @return the complex value converted through the * {@link ComplexValueExtension}, or the original element */ public static Object getComplexValue(Element element, Object context) { QName name; if (element.getNamespaceURI() != null && !element.getNamespaceURI().isEmpty()) { name = new QName(element.getNamespaceURI(), element.getLocalName()); } else { name = new QName(element.getTagName()); // .getLocalName()); } ComplexValueDefinition cvt = ComplexValueExtension.getInstance().getDefinition(name); if (cvt != null) { // create and return the complex parameter value return cvt.fromDOM(element, context); } // the element itself is the complex value return element; }
From source file:gov.nist.healthcare.ttt.parsing.Parsing.java
public static String getWsseHeaderFromMTOM(String mtom) throws IOException, MessagingException { SOAPWithAttachment swa = Parsing.parseMtom(mtom); String wsseHeader = null;//from w w w . j av a2 s. co m Envelope env = (Envelope) JAXB.unmarshal(new StringReader(swa.getSoap()), Envelope.class); List<Object> headers = env.getHeader().getAny(); if (headers == null) { return null; } Iterator it = headers.iterator(); while (it.hasNext()) { Element header = (Element) it.next(); if (header.getLocalName().equals(ELEMENT_NAME_WSSE_SECURITY) && header.getNamespaceURI().equals(NAMESPACE_WSSE)) { wsseHeader = MiscUtil.xmlToString(header); break; } } return wsseHeader; }
From source file:gov.nist.healthcare.ttt.parsing.Parsing.java
private static boolean isSoapValidDirectAddressBlock(String soap) { Envelope env = (Envelope) JAXB.unmarshal(new StringReader(soap), Envelope.class); List<Object> headers = env.getHeader().getAny(); if (headers == null) { return false; }/*from w w w . ja va 2 s . c o m*/ Iterator it = headers.iterator(); boolean foundDirectAddressBlock = false; while (it.hasNext()) { Element header = (Element) it.next(); if (header.getLocalName().equals(ELEMENT_NAME_DIRECT_ADDRESS_BLOCK) && header.getNamespaceURI().equals(NAMESPACE_DIRECT)) { foundDirectAddressBlock = true; NodeList directFrom = header.getElementsByTagNameNS(NAMESPACE_DIRECT, ELEMENT_NAME_DIRECT_FROM); NodeList directTo = header.getElementsByTagNameNS(NAMESPACE_DIRECT, ELEMENT_NAME_DIRECT_TO); if (directFrom.getLength() > 0 && directTo.getLength() > 0) { return true; } else { return false; } } } return false; }