org.apache.axiom.om.OMElement.resolveQName()方法的使用及代码示例

x33g5p2x  于2022-01-25 转载在 其他  
字(6.1k)|赞(0)|评价(0)|浏览(64)

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

OMElement.resolveQName介绍

[英]Resolves a QName literal in the namespace context defined by this element and produces a corresponding QName object. The implementation uses the algorithm defined by the XML Schema specification. In particular, the namespace for an unprefixed QName is the default namespace (not the null namespace), i.e. QNames are resolved in the same way as element names.
[中]在该元素定义的命名空间上下文中解析QName文本,并生成相应的QName对象。该实现使用XML模式规范定义的算法。特别是,非固定QName的名称空间是默认名称空间(而不是空名称空间),即QName的解析方式与元素名称相同。

代码示例

代码示例来源:origin: deegree/deegree3

private static QName resolveQName( OMElement context, String name ) {
  QName qName = null;
  int colonIdx = name.indexOf( ":" );
  if ( colonIdx != -1 ) {
    qName = context.resolveQName( name );
    if ( qName == null ) {
      // AXIOM appears to return null for context.resolveQName( name ) for unbound prefices!?
      String prefix = name.substring( 0, colonIdx );
      String localPart = name.substring( colonIdx + 1 );
      qName = new QName( "", localPart, prefix );
    }
  } else {
    qName = new QName( name );
  }
  return qName;
}

代码示例来源:origin: deegree/deegree3

private static QName resolveQName( OMElement context, String name ) {
    QName qName = null;
    int colonIdx = name.indexOf( ":" );
    if ( colonIdx != -1 ) {
      qName = context.resolveQName( name );
      if ( qName == null ) {
        // AXIOM appears to return null for context.resolveQName( name ) for unbound prefices!?
        String prefix = name.substring( 0, colonIdx );
        String localPart = name.substring( colonIdx + 1 );
        qName = new QName( "", localPart, prefix );
      }
    } else {
      qName = new QName( name );
    }
    return qName;
  }
}

代码示例来源:origin: deegree/deegree3

/**
 * Parses the given <code>String</code> as an <code>xsd:QName</code> value.
 * 
 * @param s
 *            the <code>String</code> to be parsed
 * @param element
 *            element that provides the namespace context (used to resolve the namespace prefix)
 * @return corresponding QName value
 * @throws XMLParsingException
 *             if the given <code>String</code> is not a valid instance of <code>xsd:QName</code>
 */
public QName parseQName( String s, OMElement element )
            throws XMLParsingException {
  QName value = element.resolveQName( s );
  if ( value == null ) {
    // unbound prefix
    int colonIdx = s.indexOf( ':' );
    if ( colonIdx != -1 ) {
      String prefix = s.substring( 0, colonIdx );
      String localPart = s.substring( colonIdx + 1 );
      value = new QName( null, localPart, prefix );
    } else {
      value = new QName( s );
    }
  }
  return value;
}

代码示例来源:origin: org.apache.axis2/axis2-kernel

HandlerDescription makeHandler(OMElement handlerElement) {
  String name = handlerElement.getAttributeValue(new QName("name"));
  QName qname = handlerElement.resolveQName(name);
  HandlerDescription desc = new HandlerDescription(qname.getLocalPart());
  String className = handlerElement.getAttributeValue(new QName("class"));
  desc.setClassName(className);
  return desc;
}

代码示例来源:origin: apache/axis2-java

HandlerDescription makeHandler(OMElement handlerElement) {
  String name = handlerElement.getAttributeValue(new QName("name"));
  QName qname = handlerElement.resolveQName(name);
  HandlerDescription desc = new HandlerDescription(qname.getLocalPart());
  String className = handlerElement.getAttributeValue(new QName("class"));
  desc.setClassName(className);
  return desc;
}

代码示例来源:origin: org.apache.synapse/synapse-core

private void setSOAPHeader(HeaderMediator headerMediator, OMElement elem, OMAttribute name) {
  String nameAtt = name.getAttributeValue();
  QName qname = elem.resolveQName(nameAtt);
  if (qname == null) {
    handleException("Invalid QName '" + nameAtt + "' in name attribute");
  } else if (qname.getNamespaceURI().isEmpty()) {
    handleException("Invalid SOAP header: " + nameAtt + " specified at the " +
        "header mediator. All SOAP headers must be namespace qualified.");
  } else {
    headerMediator.setQName(qname);
  }
}

代码示例来源:origin: deegree/deegree3

public QName[] getNodesAsQNames( OMElement contextNode, XPath xpath ) {
  QName[] values = null;
  List<?> nl = getNodes( contextNode, xpath );
  if ( nl != null ) {
    values = new QName[nl.size()];
    for ( int i = 0; i < nl.size(); i++ ) {
      Object node = nl.get( i );
      QName value = null;
      if ( node instanceof OMText ) {
        value = ( (OMText) node ).getTextAsQName();
      } else if ( node instanceof OMElement ) {
        OMElement element = (OMElement) node;
        value = element.resolveQName( element.getText() );
      } else if ( node instanceof OMAttribute ) {
        OMAttribute attribute = (OMAttribute) node;
        value = attribute.getOwner().resolveQName( attribute.getAttributeValue() );
      } else {
        String msg = "Unexpected node type '" + node.getClass() + "'.";
        throw new XMLParsingException( this, contextNode, msg );
      }
      values[i] = value;
    }
  } else {
    values = new QName[0];
  }
  return values;
}

代码示例来源:origin: deegree/deegree3

public QName getNodeAsQName( OMElement context, XPath xpath, QName defaultValue )
            throws XMLParsingException {
  QName value = defaultValue;
  Object node = getNode( context, xpath );
  if ( node != null ) {
    if ( node instanceof OMText ) {
      value = ( (OMText) node ).getTextAsQName();
    } else if ( node instanceof OMElement ) {
      OMElement element = (OMElement) node;
      value = element.resolveQName( element.getText() );
    } else if ( node instanceof OMAttribute ) {
      OMAttribute attribute = (OMAttribute) node;
      value = attribute.getOwner().resolveQName( attribute.getAttributeValue() );
    } else {
      String msg = "Unexpected node type '" + node.getClass() + "'.";
      throw new XMLParsingException( this, context, msg );
    }
  }
  return value;
}

代码示例来源:origin: com.github.veithen.visualwas/connector

@Override
  public Object extractValue(OMElement element, InvocationContextImpl context) throws ClassNotFoundException, TypeHandlerException {
    QName type = element.resolveQName(element.getAttributeValue(XSI_TYPE));
    SimpleTypeHandler simpleTypeHandler = SimpleTypeHandler.getBySchemaType(type);
    return (simpleTypeHandler != null ? simpleTypeHandler : objectHandler).extractValue(element, context);
  }
}

代码示例来源:origin: org.apache.axis2/axis2-adb

AxisService axisService = messageContext.getAxisService();
if (axisService != null) {
  QName typeQName = beanElement.resolveQName(instanceTypeName);

代码示例来源:origin: apache/axis2-java

AxisService axisService = messageContext.getAxisService();
if (axisService != null) {
  QName typeQName = beanElement.resolveQName(instanceTypeName);

代码示例来源:origin: org.apache.synapse/synapse-core

QName qname = code.resolveQName(strValue);
if (qname == null) {
  handleException("Invalid QName '" + strValue + "' in code attribute");

相关文章

微信公众号

最新文章

更多