diff --git a/kogito-serverless-workflow/kogito-jsonpath-expression/src/main/java/org/kie/kogito/expr/jsonpath/JsonPathExpression.java b/kogito-serverless-workflow/kogito-jsonpath-expression/src/main/java/org/kie/kogito/expr/jsonpath/JsonPathExpression.java index 57952675962..b506df0079f 100644 --- a/kogito-serverless-workflow/kogito-jsonpath-expression/src/main/java/org/kie/kogito/expr/jsonpath/JsonPathExpression.java +++ b/kogito-serverless-workflow/kogito-jsonpath-expression/src/main/java/org/kie/kogito/expr/jsonpath/JsonPathExpression.java @@ -50,7 +50,7 @@ public JsonPathExpression(String expr) { private static final String replaceMagic(String expr, String magic) { magic = "$" + magic; - return expr.replace(magic, "@." + magic); + return expr.replace(magic, "$." + magic); } private Configuration getConfiguration(KogitoProcessContext context) { diff --git a/kogito-serverless-workflow/kogito-jsonpath-expression/src/test/java/org/kie/kogito/expr/jsonpath/JsonPathExpressionHandlerTest.java b/kogito-serverless-workflow/kogito-jsonpath-expression/src/test/java/org/kie/kogito/expr/jsonpath/JsonPathExpressionHandlerTest.java index 7d364f0ba12..aea64e4688f 100644 --- a/kogito-serverless-workflow/kogito-jsonpath-expression/src/test/java/org/kie/kogito/expr/jsonpath/JsonPathExpressionHandlerTest.java +++ b/kogito-serverless-workflow/kogito-jsonpath-expression/src/test/java/org/kie/kogito/expr/jsonpath/JsonPathExpressionHandlerTest.java @@ -230,7 +230,7 @@ void testWorkflowPropertyFromJsonAccessible() { @MethodSource("provideMagicWordExpressionsToTest") void testMagicWordsExpressions(String expression, String expectedResult, KogitoProcessContext context) { Expression parsedExpression = ExpressionHandlerFactory.get("jsonpath", expression); - assertThat(parsedExpression.isValid()).isTrue(); + assertThat(parsedExpression.isValid()).overridingErrorMessage(() -> parsedExpression.validationError().getMessage()).isTrue(); assertThat(parsedExpression.eval(getObjectNode(), String.class, context)).isEqualTo(expectedResult); } @@ -238,6 +238,8 @@ private static Stream provideMagicWordExpressionsToTest() { return Stream.of( Arguments.of("$WORKFLOW.instanceId", "1111-2222-3333", getContext()), Arguments.of("$SECRET.lettersonly", "secretlettersonly", getContext()), + Arguments.of("$SECRET.lettersonly$SECRET.lettersonly", "secretlettersonlysecretlettersonly", getContext()), + Arguments.of("$.propertyString$.propertyNum", "string12", getContext()), Arguments.of("$SECRET.none", "", getContext()), Arguments.of("$SECRET.dot.secret", "secretdotsecret", getContext()), Arguments.of("$SECRET[\"dot.secret\"]", "secretdotsecret", getContext()),