Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Duplicate
-
0.6.0
-
None
-
None
Description
Guillaume Pool:
Hi,
If anyone could help I would appreciate it:
After upgrading to 0.6.0 all my EvaluateXMLPath processors report as invalid with nothing specific reported as the error.
I use flowfile attribute as the destination, xpath query similar to /message/address
Return type auto-detect / string
Error:
2016-04-11 17:37:12,465 INFO [NiFi Web Server-64629] org.apache.nifi.web.filter.RequestLogger Attempting request for (anonymous) PUT http://sv-hdpdf1.hdp.supergrp.net:8443/nifi-api/controller/process-groups/d02a0bbc-c142-37ba-adaa-ee191b98790d/processors/e49acf40-76d1-3b6e-a67d-dc40153605ad (source ip: 172.27.0.97)
2016-04-11 17:37:12,474 INFO [NiFi Web Server-64629] o.a.n.w.a.c.IllegalStateExceptionMapper java.lang.IllegalStateException: EvaluateXPath[id=e49acf40-76d1-3b6e-a67d-dc40153605ad] is not in a valid state. Returning Conflict response.
Reports this even if you drop a new processor in.
James Wing:
I am able to see the same EvaluateXPath issue Guillame Pool reported on NiFi 0.6.0. I created a template gist at https://gist.github.com/jvwing/7e7948d8eb5ad3643f38966b4ba3ce2e that illustrates this for me. You don't even need to run the whole thing, just try to start the EvaluateXPath processor. I see a pop-up error trying to start it "EvaluateXPath[id=b481c570-686a-4b6e-859c-9ebe27398fe1] is not in a valid state".
Trying to troubleshoot this, I attached a debugger and found an IllegalStateException thrown by StandardProcessorNode.verifyCanStart() on line 1141. The error text was:
'address' validated against '/message/address' is invalid because Unable to initialize XPath engine due to javax.xml.xpath.XPathFactoryConfigurationException: No XPathFactory implementation found for the object model: http://saxon.sf.net/jaxp/xpath/om
I haven't figured out what change is the root cause, but the trail seems to lead into validating the dynamic XPath attribute.