gpt4 book ai didi

org.eclipse.persistence.oxm.XMLRoot类的使用及代码示例

转载 作者:知者 更新时间:2024-03-19 12:24:40 26 4
gpt4 key购买 nike

本文整理了Java中org.eclipse.persistence.oxm.XMLRoot类的一些代码示例,展示了XMLRoot类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。XMLRoot类的具体详情如下:
包路径:org.eclipse.persistence.oxm.XMLRoot
类名称:XMLRoot

XMLRoot介绍

[英]XMLRoot is used to hold an Object along with the corresponding QName and some other related information. Typically this is used when the object is marshalled/unmarshalled to a QName other than the defaultRootElement set on the XMLDescriptor.

XMLRoot objects can be returned from XMLUnmarshaller unmarshal operations and can be given to XMLMarshaller.marshal operations. They may also be in values return by XMLAnyCollectionMappings and XMLAnyObjectMappings.
[中]XMLRoot用于保存对象以及相应的QName和其他一些相关信息。通常,当对象被封送/反封送至XMLDescriptor上设置的defaultRootElement之外的QName时,会使用此选项。
XMLRoot对象可以从XMLUnmarshaller unmarshal操作返回,并可以提供给XMLMarshaller。执法行动。它们也可能是XMLAnyCollectionMappings和XMLAnyObjectMappings返回的值。

代码示例

代码示例来源:origin: org.eclipse.persistence/org.eclipse.persistence.core

/**
 * Convenience method that builds an XMLRoot wrapping a given object.
 * The local name and uri are set using the given Node.
 */
protected XMLRoot buildXMLRoot(Node node, Object object) {
  XMLRoot xmlRoot = new XMLRoot();
  xmlRoot.setLocalName(node.getLocalName());
  xmlRoot.setNamespaceURI(node.getNamespaceURI());
  xmlRoot.setObject(object);
  return xmlRoot;
}

代码示例来源:origin: org.eclipse.persistence/org.eclipse.persistence.sdo

/**
 * Return the name of the root element.
 * The root element is a global element of the XML Schema
 *   with a type compatible to the DataObject.
 * @return the name of the root element.
 */
public String getRootElementName() {
  return super.getLocalName();
}

代码示例来源:origin: com.haulmont.thirdparty/eclipselink

public Object convertObjectValueToDataValue(Object objectValue,
    Session session) {
  if(objectValue instanceof XMLRoot) {
    return ((XMLRoot)objectValue).getObject();
  } else {
    return objectValue;
  }
}

代码示例来源:origin: org.eclipse.persistence/com.springsource.org.eclipse.persistence

public Object wrapObjectInXMLRoot(Object object, String elementNamespaceUri, String elementLocalName, String elementPrefix, String encoding, String version, boolean forceWrap) {
  if (forceWrap || shouldWrapObject(object, elementNamespaceUri, elementLocalName, elementPrefix)) {
    // if the DOMRecord element != descriptor's default 
    // root element, create an XMLRoot, populate and return it
    XMLRoot xmlRoot = new XMLRoot();
    xmlRoot.setLocalName(elementLocalName);
    xmlRoot.setNamespaceURI(elementNamespaceUri);
    xmlRoot.setObject(object);
    xmlRoot.setEncoding(encoding);
    xmlRoot.setVersion(version);                        
    return xmlRoot;
  }
  return object;
}

代码示例来源:origin: com.haulmont.thirdparty/eclipselink

XMLRoot xmlRoot = new XMLRoot();
if (value instanceof XMLRoot) {
  xmlRoot.setLocalName(((XMLRoot) value).getLocalName());
  xmlRoot.setNamespaceURI(((XMLRoot) value).getNamespaceURI());
  xmlRoot.setObject(((XMLRoot) value).getObject());
} else {
  xmlRoot.setLocalName(sdoProperty.getName());
  xmlRoot.setNamespaceURI(sdoProperty.getUri());
  xmlRoot.setObject(value);
    QName schemaTypeQName = hlpr.getXSDTypeFromSDOType(property.getType());
    if (schemaTypeQName != null && schemaTypeQName != XMLConstants.STRING_QNAME) {
      xmlRoot.setSchemaType(schemaTypeQName);

代码示例来源:origin: org.eclipse.persistence/org.eclipse.persistence.sdo

XMLDocument xmlDocument = createDocument((DataObject)((XMLRoot)unmarshalledObject).getObject(), ((XMLRoot)unmarshalledObject).getNamespaceURI(), ((XMLRoot)unmarshalledObject).getLocalName());
  if(xmlRoot.getEncoding() != null) {
    xmlDocument.setEncoding(xmlRoot.getEncoding());
  if(xmlRoot.getXMLVersion() != null) {
    xmlDocument.setXMLVersion(xmlRoot.getXMLVersion());
  xmlDocument.setSchemaLocation(xmlRoot.getSchemaLocation());
  xmlDocument.setNoNamespaceSchemaLocation(xmlRoot.getNoNamespaceSchemaLocation());
  return xmlDocument;
} else if (unmarshalledObject instanceof DataObject) {

代码示例来源:origin: org.eclipse.persistence/com.springsource.org.eclipse.persistence

public boolean marshalSingleValue(XPathFragment xPathFragment, MarshalRecord marshalRecord, Object object, Object value, AbstractSession session, NamespaceResolver namespaceResolver, MarshalContext marshalContext) {
  if(value instanceof XMLRoot) {
    XMLRoot root = (XMLRoot)value;
    XPathFragment fragment = this.xmlField.getXPathFragment();
    while(fragment != null && !fragment.nameIsText) {
      if(fragment.getNextFragment() == null || fragment.getHasText()) {
        if(fragment.getLocalName().equals(root.getLocalName())) {
          String fragUri = fragment.getNamespaceURI();
          String namespaceUri = root.getNamespaceURI();
          if((namespaceUri == null && fragUri == null) || (namespaceUri != null && fragUri != null && namespaceUri.equals(fragUri))) {
            return this.choiceElementNodeValue.marshalSingleValue(xPathFragment, marshalRecord, object, value, session, namespaceResolver, marshalContext);
          }
        }
      }
      fragment = fragment.getNextFragment();
    }
    //if we didn't find a node value associated with this xmlroot, try finding one for the 
    //value's class
    if(root.getObject() != null && xmlChoiceMapping.getClassToFieldMappings().get(root.getObject().getClass()) == this.xmlField) {
      return this.choiceElementNodeValue.marshal(xPathFragment, marshalRecord, object, session, namespaceResolver);
    }
  } else {
    if(value != null && xmlChoiceMapping.getClassToFieldMappings().get(value.getClass()) == this.xmlField) {
      return this.choiceElementNodeValue.marshalSingleValue(xPathFragment, marshalRecord, object, value, session, namespaceResolver, marshalContext);
    }
  }
  return false;
}

代码示例来源:origin: org.eclipse.persistence/org.eclipse.persistence.sdo

SDOProperty next = (SDOProperty) openContentProperties.get(i);
XMLRoot root = new XMLRoot();
String localName = next.getXPath();
if (next.getType() != null) {
  if (!next.getType().isDataType()) {
    String uri = next.getUri();
    root.setNamespaceURI(uri);
  } else {
    String uri = next.getUri();
    root.setNamespaceURI(uri);
root.setLocalName(localName);
    XMLRoot nextRoot = new XMLRoot();
    nextRoot.setNamespaceURI(root.getNamespaceURI());
    nextRoot.setLocalName(root.getLocalName());
    Object nextItem = ((List)value).get(j);
    if ((next.getType() != null) && (next.getType().getXmlDescriptor() == null)) {
      nextItem = XMLConversionManager.getDefaultXMLManager().convertObject(nextItem, String.class);
    nextRoot.setObject(nextItem);
    returnList.add(nextRoot);
    value = XMLConversionManager.getDefaultXMLManager().convertObject(value, String.class);
  root.setObject(value);
  returnList.add(root);

代码示例来源:origin: org.eclipse.persistence/com.springsource.org.eclipse.persistence

XMLRoot xmlRoot = new XMLRoot();
xmlRoot.setLocalName(elementLocalName);
xmlRoot.setNamespaceURI(elementNamespaceUri);
xmlRoot.setObject(unmarshalRecord.getCurrentObject());
xmlRoot.setEncoding(unmarshalRecord.getEncoding());
xmlRoot.setVersion(unmarshalRecord.getVersion());
xmlRoot.setSchemaLocation(unmarshalRecord.getSchemaLocation());
xmlRoot.setNoNamespaceSchemaLocation(unmarshalRecord.getNoNamespaceSchemaLocation());
return xmlRoot;

代码示例来源:origin: org.eclipse.persistence/com.springsource.org.eclipse.persistence

isXMLRoot = true;
  XMLRoot xroot = (XMLRoot) object;
  version = xroot.getXMLVersion() != null ? xroot.getXMLVersion() : version;
  encoding = xroot.getEncoding() != null ? xroot.getEncoding() : encoding;
if(isXMLRoot){
  try{
    session = xmlContext.getSession(((XMLRoot)object).getObject());
    if(session != null){
      xmlDescriptor = getDescriptor(((XMLRoot)object).getObject(), session);
if (!(isXMLRoot && ((XMLRoot)object).getObject() instanceof Node) && ((session == null) || !xmlContext.getDocumentPreservationPolicy(session).shouldPreserveDocument())) {
  marshal(object, writerRecord, session, xmlDescriptor, isXMLRoot);    
} else {
    Node xmlDocument = null;
    if(isXMLRoot && session == null) {
      xmlDocument = (Node)((XMLRoot)object).getObject();
    } else {
      xmlDocument = objectToXMLNode(object, session, xmlDescriptor, isXMLRoot);

代码示例来源:origin: org.eclipse.persistence/org.eclipse.persistence.core

private void writeSimpleValue(XMLField xmlRootField, Object element, Object originalObject, DOMRecord record, org.w3c.dom.Document doc, Node root, boolean wasXMLRoot, AbstractSession session) {
  if (wasXMLRoot) {
    if (((XMLRoot) originalObject).getNamespaceURI() != null) {
      String prefix = record.getNamespaceResolver().resolveNamespaceURI(((XMLRoot) originalObject).getNamespaceURI());
      if ((prefix == null) || prefix.length() == 0) {
        xmlRootField.getXPathFragment().setGeneratedPrefix(true);
        prefix = record.getNamespaceResolver().generatePrefix();
      }
      xmlRootField.getXPathFragment().setXPath(prefix + XMLConstants.COLON + ((XMLRoot) originalObject).getLocalName());
    }
  }
  if (xmlRootField != null) {
    xmlRootField.setNamespaceResolver(record.getNamespaceResolver());
    QName qname = ((XMLRoot) originalObject).getSchemaType();
    if(qname != null){
      if(!qname.equals(XMLConstants.STRING_QNAME)){
        xmlRootField.setSchemaType(qname);
        xmlRootField.setIsTypedTextField(true);
        xmlRootField.addJavaConversion(((XMLRoot) originalObject).getObject().getClass(), qname);
      }
    }
    Node newNode = XPathEngine.getInstance().create(xmlRootField, root, element, session);
  } else {
    Text textNode = doc.createTextNode((String) element);
    root.appendChild(textNode);
  }
}

代码示例来源:origin: org.eclipse.persistence/com.springsource.org.eclipse.persistence

marshalRecord.setLeafElementType(descriptor.getDefaultRootElementType());
  } else {
    if (root.getEncoding() != null) {
      encoding = root.getEncoding();
    if (root.getXMLVersion() != null) {
      version = root.getXMLVersion();
  if(root.getObject() instanceof Node) {
    marshalRecord.node((Node)root.getObject(), new NamespaceResolver());
    marshalRecord.endDocument();
    return;
String noNsSchemaLocation = getNoNamespaceSchemaLocation();
if (isXMLRoot) {
  object = root.getObject();
  if (root.getSchemaLocation() != null) {
    schemaLocation = root.getSchemaLocation();
  if (root.getNoNamespaceSchemaLocation() != null) {
    noNsSchemaLocation = root.getNoNamespaceSchemaLocation();
  marshalRecord.setLeafElementType(root.getSchemaType());
    String value = (String) XMLConversionManager.getDefaultXMLManager().convertObject(object, String.class, root.getSchemaType());
    marshalRecord.characters(value);

代码示例来源:origin: org.eclipse.persistence/com.springsource.org.eclipse.persistence

/**
* Validate the given object.
* @param object A single object to validate
* @return true if this is a valid object, otherwise false
*/
public boolean validate(Object object) throws XMLMarshalException {
  if (object == null) {
    throw XMLMarshalException.nullArgumentException();
  }
  try {
    // Create a new XML Record using the object's class name (not fully qualified) as the root            
    String name = ((XMLDescriptor)xmlContext.getSession(object).getDescriptor(object)).getDefaultRootElement();
    if (name == null) {
      String qualifiedName = object.getClass().getName();
      int idx = qualifiedName.lastIndexOf('.');
      name = qualifiedName.substring(idx + 1);
    }
    XMLDescriptor descriptor = marshaller.getDescriptor(object);
    XMLRoot root = new XMLRoot();
    root.setObject(object);
    root.setLocalName(name);
    
    XMLPlatform xmlPlatform = XMLPlatformFactory.getInstance().getXMLPlatform();
    Document doc = xmlPlatform.createDocument();
    marshaller.marshal(root, doc);
    return xmlPlatform.validate(doc.getDocumentElement(), descriptor, getErrorHandler());
  } catch (XMLPlatformException e) {
    throw XMLMarshalException.validateException(e);
  }
}

代码示例来源:origin: org.eclipse.persistence/org.eclipse.persistence.core

/**
 * INTERNAL
 * @since 2.5.0
 */
@Override
public XMLRoot createRoot() {
  return new XMLRoot();
}

代码示例来源:origin: org.eclipse.persistence/com.springsource.org.eclipse.persistence

xmlRootField = new XMLField();
XPathFragment frag = new XPathFragment();
if ((((XMLRoot) element)).getRootFragment().getNamespaceURI() != null) {
  frag.setNamespaceURI(((XMLRoot) element).getNamespaceURI());
} else {
  frag.setXPath(((XMLRoot) element).getLocalName());
element = ((XMLRoot) element).getObject();
  if (((XMLRoot) originalObject).getRootFragment().getNamespaceURI() != null) {
    String prefix = referenceDescriptor.getNonNullNamespaceResolver().resolveNamespaceURI(((XMLRoot) originalObject).getNamespaceURI());
    if ((prefix == null) || prefix.length() == 0) {
      prefix = record.getNamespaceResolver().resolveNamespaceURI(((XMLRoot) originalObject).getRootFragment().getNamespaceURI());
      prefix = record.getNamespaceResolver().generatePrefix();
    xmlRootField.getXPathFragment().setXPath(prefix + XMLConstants.COLON + ((XMLRoot) originalObject).getLocalName());

代码示例来源:origin: org.eclipse.persistence/com.springsource.org.eclipse.persistence

private void writeSimpleValue(XMLField xmlRootField, Object element, Object originalObject, DOMRecord record, org.w3c.dom.Document doc, Node root, boolean wasXMLRoot, AbstractSession session) {
  if (wasXMLRoot) {
    if (((XMLRoot) originalObject).getRootFragment().getNamespaceURI() != null) {
      String prefix = record.getNamespaceResolver().resolveNamespaceURI(((XMLRoot) originalObject).getRootFragment().getNamespaceURI());
      if ((prefix == null) || prefix.length() == 0) {
        xmlRootField.getXPathFragment().setGeneratedPrefix(true);
        prefix = record.getNamespaceResolver().generatePrefix();
      }
      xmlRootField.getXPathFragment().setXPath(prefix + XMLConstants.COLON + ((XMLRoot) originalObject).getLocalName());
    }
  }
  if (xmlRootField != null) {
    xmlRootField.setNamespaceResolver(record.getNamespaceResolver());
    QName qname = ((XMLRoot) originalObject).getSchemaType();
    if(qname != null){
      if(!qname.equals(XMLConstants.STRING_QNAME)){
        xmlRootField.setSchemaType(qname);
        xmlRootField.setIsTypedTextField(true);
        xmlRootField.addJavaConversion(((XMLRoot) originalObject).getObject().getClass(), qname);
      }
    }
    Node newNode = XPathEngine.getInstance().create(xmlRootField, root, element, session);
  } else {
    Text textNode = doc.createTextNode((String) element);
    root.appendChild(textNode);
  }
}

代码示例来源:origin: org.eclipse.persistence/org.eclipse.persistence.core

private void writeSimpleValue(XMLField xmlRootField, DOMRecord row, AbstractSession session, Object originalObject, Object value, Node root, Node toReplace, boolean wasXMLRoot) {
  org.w3c.dom.Document doc = row.getDocument();
  if (wasXMLRoot) {
    if (((XMLRoot) originalObject).getNamespaceURI() != null) {
      String prefix = row.getNamespaceResolver().resolveNamespaceURI(((XMLRoot) originalObject).getNamespaceURI());
      if ((prefix == null) || prefix.length() == 0) {
        xmlRootField.getXPathFragment().setGeneratedPrefix(true);
        prefix = row.getNamespaceResolver().generatePrefix();
      }
      xmlRootField.getXPathFragment().setXPath(prefix + XMLConstants.COLON + ((XMLRoot) originalObject).getLocalName());
    }
  }
  if (null == xmlRootField) {
    Text textNode = doc.createTextNode((String) value);
    if (toReplace != null) {
      root.replaceChild(textNode, toReplace);
    } else {
      root.appendChild(textNode);
    }
  } else {
    QName qname = ((XMLRoot) originalObject).getSchemaType();
    if(qname != null && !qname.equals(XMLConstants.STRING_QNAME)){
      xmlRootField.setSchemaType(qname);
      xmlRootField.setIsTypedTextField(true);
      xmlRootField.addJavaConversion(value.getClass(), qname);
    }
    Node newNode = XPathEngine.getInstance().create(xmlRootField, root, value, session);
  }
}

代码示例来源:origin: org.eclipse.persistence/com.springsource.org.eclipse.persistence

private Namespace setupFragment(XMLRoot originalValue, XPathFragment xmlRootFragment, MarshalRecord marshalRecord) {
  Namespace generatedNamespace = null;
  String xpath = originalValue.getLocalName();
  if (originalValue.getNamespaceURI() != null) {
    xmlRootFragment.setNamespaceURI((originalValue).getNamespaceURI());
    String prefix = marshalRecord.getNamespaceResolver().resolveNamespaceURI((originalValue).getNamespaceURI());
    if (prefix == null || prefix.length() == 0) {
      prefix = marshalRecord.getNamespaceResolver().generatePrefix("ns0");
      generatedNamespace = new Namespace(prefix, xmlRootFragment.getNamespaceURI());
    }
    xpath = prefix + XMLConstants.COLON + xpath;
  }
  xmlRootFragment.setXPath(xpath);
  return generatedNamespace;
}

代码示例来源:origin: org.eclipse.persistence/com.springsource.org.eclipse.persistence

private XPathFragment buildRootFragment(Object object, XMLDescriptor descriptor, boolean isXMLRoot, MarshalRecord marshalRecord) {
  XPathFragment rootFragment = null;
  if (isXMLRoot) {
    rootFragment = ((XMLRoot) object).getRootFragment();
    String xmlRootUri = ((XMLRoot) object).getNamespaceURI();
    String xmlRootLocalName = ((XMLRoot) object).getLocalName();
    if (xmlRootUri != null) {
      if (descriptor != null) {

代码示例来源:origin: org.eclipse.persistence/com.springsource.org.eclipse.persistence

private void writeSimpleValue(XMLField xmlRootField, DOMRecord row, AbstractSession session, Object originalObject, Object value, Node root, Node toReplace, boolean wasXMLRoot) {
  org.w3c.dom.Document doc = row.getDocument();
  if (wasXMLRoot) {
    if (((XMLRoot) originalObject).getRootFragment().getNamespaceURI() != null) {
      String prefix = row.getNamespaceResolver().resolveNamespaceURI(((XMLRoot) originalObject).getRootFragment().getNamespaceURI());
      if ((prefix == null) || prefix.length() == 0) {
        xmlRootField.getXPathFragment().setGeneratedPrefix(true);
        prefix = row.getNamespaceResolver().generatePrefix();
      }
      xmlRootField.getXPathFragment().setXPath(prefix + XMLConstants.COLON + ((XMLRoot) originalObject).getLocalName());
    }
  }
  if (null == xmlRootField) {
    Text textNode = doc.createTextNode((String) value);
    if (toReplace != null) {
      root.replaceChild(textNode, toReplace);
    } else {
      root.appendChild(textNode);
    }
  } else {
    QName qname = ((XMLRoot) originalObject).getSchemaType();
    if(qname != null && !qname.equals(XMLConstants.STRING_QNAME)){
      xmlRootField.setSchemaType(qname);
      xmlRootField.setIsTypedTextField(true);
      xmlRootField.addJavaConversion(value.getClass(), qname);
    }
    Node newNode = XPathEngine.getInstance().create(xmlRootField, root, value, session);   
  }
}

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com