本文整理汇总了Java中org.apache.xpath.domapi.XPathStylesheetDOM3Exception类的典型用法代码示例。如果您正苦于以下问题:Java XPathStylesheetDOM3Exception类的具体用法?Java XPathStylesheetDOM3Exception怎么用?Java XPathStylesheetDOM3Exception使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
XPathStylesheetDOM3Exception类属于org.apache.xpath.domapi包,在下文中一共展示了XPathStylesheetDOM3Exception类的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: errorForDOM3
import org.apache.xpath.domapi.XPathStylesheetDOM3Exception; //导入依赖的package包/类
/**
* This method is added to support DOM 3 XPath API.
* <p>
* This method is exactly like error(String, Object[]); except that
* the underlying TransformerException is
* XpathStylesheetDOM3Exception (which extends TransformerException).
* <p>
* So older XPath code in Xalan is not affected by this. To older XPath code
* the behavior of whether error() or errorForDOM3() is called because it is
* always catching TransformerException objects and is oblivious to
* the new subclass of XPathStylesheetDOM3Exception. Older XPath code
* runs as before.
* <p>
* However, newer DOM3 XPath code upon catching a TransformerException can
* can check if the exception is an instance of XPathStylesheetDOM3Exception
* and take appropriate action.
*
* @param msg An error msgkey that corresponds to one of the constants found
* in {@link org.apache.xpath.res.XPATHErrorResources}, which is
* a key for a format string.
* @param args An array of arguments represented in the format string, which
* may be null.
*
* @throws TransformerException if the current ErrorListoner determines to
* throw an exception.
*/
void errorForDOM3(String msg, Object[] args) throws TransformerException
{
String fmsg = XSLMessages.createXPATHMessage(msg, args);
ErrorListener ehandler = this.getErrorListener();
TransformerException te = new XPathStylesheetDOM3Exception(fmsg, m_sourceLocator);
if (null != ehandler)
{
// TO DO: Need to get stylesheet Locator from here.
ehandler.fatalError(te);
}
else
{
// System.err.println(fmsg);
throw te;
}
}
示例2: createExpression
import org.apache.xpath.domapi.XPathStylesheetDOM3Exception; //导入依赖的package包/类
/**
* Creates a parsed XPath expression with resolved namespaces. This is
* useful when an expression will be reused in an application since it makes
* it possible to compile the expression string into a more efficient
* internal form and preresolve all namespace prefixes which occur within
* the expression.
*
* @param expression
* The XPath expression string to be parsed.
* @param resolver
* The <code>resolver</code> permits translation of prefixes
* within the XPath expression into appropriate namespace URIs .
* If this is specified as <code>null</code>, any namespace
* prefix within the expression will result in
* <code>DOMException</code> being thrown with the code
* <code>NAMESPACE_ERR</code>.
* @return The compiled form of the XPath expression.
* @exception XPathException
* INVALID_EXPRESSION_ERR: Raised if the expression is not
* legal according to the rules of the
* <code>XPathEvaluator</code>i
* @exception DOMException
* NAMESPACE_ERR: Raised if the expression contains namespace
* prefixes which cannot be resolved by the specified
* <code>XPathNSResolver</code>.
*
* @see org.w3c.dom.xpath.XPathEvaluator#createExpression(String,
* XPathNSResolver)
*/
@Override
public XPathExpression createExpression(String expression, XPathNSResolver resolver)
throws XPathException, DOMException {
try {
// If the resolver is null, create a dummy prefix resolver
XPath xpath = new XPath(expression, null,
null == resolver ? new DummyPrefixResolver() : (PrefixResolver) resolver, XPath.SELECT);
return new XPathExpressionImpl(xpath, m_doc);
} catch (TransformerException e) {
// Need to pass back exception code DOMException.NAMESPACE_ERR also.
// Error found in DOM Level 3 XPath Test Suite.
if (e instanceof XPathStylesheetDOM3Exception) {
throw new DOMException(DOMException.NAMESPACE_ERR, e.getMessageAndLocation());
} else {
throw new XPathException(XPathException.INVALID_EXPRESSION_ERR, e.getMessageAndLocation());
}
}
}