https://github.com/MikeThomsen/nifi/commit/dad71af803a9ead5bcbead3ce65671c4c2430605#diff-09d6acf9b469f7d2491ab7dbdab93fea

On Mon, Mar 26, 2018 at 11:38 AM, Bryan Bende <[email protected]> wrote:

> Can you share the code for your AbstractRedisProcessor?
>
>
> On Mon, Mar 26, 2018 at 9:52 AM, Mike Thomsen <[email protected]>
> 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?
>

Reply via email to