Can you share the code for your AbstractRedisProcessor?
On Mon, Mar 26, 2018 at 9:52 AM, Mike Thomsen <mikerthom...@gmail.com> wrote: > Over the weekend I started playing around with a new processor called > PutRedisHash based on a request from the user list. I set up a really > simple IT and hit a problem pretty quickly. This passes validation: > > @Test > public void testStandalone() throws Exception { > final String attrName = "key.name"; > final String attrValue = "simple_test"; > RedisConnectionPool connectionPool = new RedisConnectionPoolService(); > TestRunner runner = TestRunners.newTestRunner(PutRedisHash.class); > > runner.addControllerService("connPool", connectionPool); > runner.setProperty(connectionPool, RedisUtils.CONNECTION_STRING, > "localhost:6379"); > runner.enableControllerService(connectionPool); > runner.setProperty(PutRedisHash.REDIS_CONNECTION_POOL, "connPool"); > runner.setProperty(PutRedisHash.NAME_ATTRIBUTE, attrName); > runner.assertValid(); > } > > As soon as I enqueue some data and call run(), I see the following > exception get thrown in the processor. I checked the Connection String > property, and it is marked as supporting EL and does call > evaluationExpressionLanguage in the RedisUtils.createConnectionFactory > method. > > java.lang.IllegalStateException: Attempting to Evaluate Expressions but > PropertyDescriptor[Connection String] indicates that the Expression > Language is not supported. If you realize that this is the case and do not > want this error to occur, it can be disabled by calling > TestRunner.setValidateExpressionUsage(false) > at > org.apache.nifi.util.MockPropertyValue.markEvaluated(MockPropertyValue.java:133) > at > org.apache.nifi.util.MockPropertyValue.evaluateAttributeExpressions(MockPropertyValue.java:183) > at > org.apache.nifi.util.MockPropertyValue.evaluateAttributeExpressions(MockPropertyValue.java:177) > at > org.apache.nifi.util.MockPropertyValue.evaluateAttributeExpressions(MockPropertyValue.java:142) > at > org.apache.nifi.redis.util.RedisUtils.createConnectionFactory(RedisUtils.java:260) > at > org.apache.nifi.processors.redis.AbstractRedisProcessor.getRedis(AbstractRedisProcessor.java:41) > at > org.apache.nifi.processors.redis.AbstractRedisProcessor.withConnection(AbstractRedisProcessor.java:50) > at > org.apache.nifi.processors.redis.PutRedisHash.onTrigger(PutRedisHash.java:162) > at > org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27) > at > org.apache.nifi.util.StandardProcessorTestRunner$RunProcessor.call(StandardProcessorTestRunner.java:251) > at > org.apache.nifi.util.StandardProcessorTestRunner$RunProcessor.call(StandardProcessorTestRunner.java:245) > at java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:266) > at java.util.concurrent.FutureTask.run(FutureTask.java) > at > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) > at > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > > Any ideas?