diff --git a/spring-integration-cassandra/build.gradle b/spring-integration-cassandra/build.gradle index b8aeea3..d4814f3 100644 --- a/spring-integration-cassandra/build.gradle +++ b/spring-integration-cassandra/build.gradle @@ -27,7 +27,7 @@ if (project.hasProperty('platformVersion')) { apply plugin: 'spring-io' dependencies { - springIoVersions "io.spring.platform:platform-versions:${platformVersion}@properties" + springIoVersions "io.spring.platform:platform-bom:${platformVersion}@properties" } } diff --git a/spring-integration-cassandra/src/main/java/org/springframework/integration/cassandra/outbound/CassandraMessageHandler.java b/spring-integration-cassandra/src/main/java/org/springframework/integration/cassandra/outbound/CassandraMessageHandler.java index e721291..c449821 100644 --- a/spring-integration-cassandra/src/main/java/org/springframework/integration/cassandra/outbound/CassandraMessageHandler.java +++ b/spring-integration-cassandra/src/main/java/org/springframework/integration/cassandra/outbound/CassandraMessageHandler.java @@ -30,6 +30,7 @@ import org.springframework.expression.Expression; import org.springframework.expression.TypeLocator; import org.springframework.expression.spel.support.StandardEvaluationContext; import org.springframework.expression.spel.support.StandardTypeLocator; +import org.springframework.integration.expression.ExpressionUtils; import org.springframework.integration.expression.IntegrationEvaluationContextAware; import org.springframework.integration.handler.AbstractReplyProducingMessageHandler; import org.springframework.integration.handler.ExpressionEvaluatingMessageProcessor; @@ -47,8 +48,7 @@ import com.datastax.driver.core.Statement; * @author Artem Bilan */ @SuppressWarnings("unchecked") -public class CassandraMessageHandler extends AbstractReplyProducingMessageHandler - implements IntegrationEvaluationContextAware { +public class CassandraMessageHandler extends AbstractReplyProducingMessageHandler { private final Map parameterExpressions = new HashMap<>(); @@ -153,21 +153,22 @@ public class CassandraMessageHandler extends AbstractReplyProducingMessageHan } @Override - public void setIntegrationEvaluationContext(EvaluationContext evaluationContext) { - TypeLocator typeLocator = evaluationContext.getTypeLocator(); + public String getComponentType() { + return "cassandra:outbound-" + (this.producesReply ? "gateway" : "channel-adapter"); + } + + @Override + protected void doInit() { + super.doInit(); + + this.evaluationContext = ExpressionUtils.createStandardEvaluationContext(getBeanFactory()); + TypeLocator typeLocator = this.evaluationContext.getTypeLocator(); if (typeLocator instanceof StandardTypeLocator) { /* * Register the Cassandra Query DSL package so they don't need a FQCN for QueryBuilder, for example. */ ((StandardTypeLocator) typeLocator).registerImport("com.datastax.driver.core.querybuilder"); } - this.evaluationContext = evaluationContext; - } - - - @Override - public String getComponentType() { - return "cassandra:outbound-" + (this.producesReply ? "gateway" : "channel-adapter"); } @Override