2011-09-30 27 views
12

Dada una cadena de entrada de usuario, ¿cómo puedo saber si es una expresión válida de Xpath o no en Java? Sólo curiosidad, ya que no puedo encontrar una manera de hacerlo utilizando la biblioteca javax.xml.xpath. Gracias.validar una expresión xpath en Java

+0

Debe aceptar las respuestas a todas las preguntas que haga ... hace que las personas sean menos propensas a dedicar tiempo y esfuerzo para ayudarlo y es un poco ingrato también. – Troyseph

Respuesta

24

Supongo que desea validar la sintaxis, pero no si la expresión es válida en el contexto de un esquema xml o xml. Puede usar el método compile(..) y arrojará una excepción si xpath es incorrecta con la sintaxis.

XPathFactory factory = XPathFactory.newInstance(); 
XPath xpath = factory.newXPath(); 
XPathExpression expr = xpath.compile("//book[author='Abc']/title/text()"); 
+0

¡Eso funciona! gracias :) –

+2

@ Jeffrey.W.Dong acepta esto como la respuesta si ha ayudado –

0

Ejecutar el XPath contra algún documento XML de ejemplo (por ejemplo <a/>). En la mayoría de los casos, no devolverá nada, pero lo que le importa es si generará una excepción.

Cuestiones relacionadas