You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Matthew Zipay (JIRA)" <ji...@apache.org> on 2016/07/13 22:39:20 UTC

[jira] [Updated] (CAMEL-10038) BlueprintPropertiesParser breaks propertyPlaceholder fallbackToUnaugmentedProperty behavior

     [ https://issues.apache.org/jira/browse/CAMEL-10038?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Matthew Zipay updated CAMEL-10038:
----------------------------------
    Attachment: CAMEL-10038.patch

It does seem after all that the fix is as simple as I thought initially (simpler, actually) - just removing the thrown IllegalArgumentException from BlueprintPropertiesParser#parseProperty does the trick.

I have been running locally with a binary-patched camel-blueprint JAR containing this change, and the issue is completely resolved.

(Not sure why the throw was ever added in the first place, as the parent DefaultPropertiesParser already throws IllegalArgumentException if the property doesn't evaluate.)

I opened https://github.com/apache/camel/pull/1075 for this change, but attaching the patch here as well.

> BlueprintPropertiesParser breaks propertyPlaceholder fallbackToUnaugmentedProperty behavior
> -------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-10038
>                 URL: https://issues.apache.org/jira/browse/CAMEL-10038
>             Project: Camel
>          Issue Type: Bug
>          Components: camel-blueprint
>    Affects Versions: 2.15.1
>         Environment: Camel 2.15.1.redhat-620133
> JBoss Fuse 6.2.0.redhat-133
> openjdk version "1.8.0_45"
> OpenJDK Runtime Environment (build 1.8.0_45-b13)
> OpenJDK 64-Bit Server VM (build 25.45-b02, mixed mode)
> Linux 3.10.0-229.1.2.el7.x86_64 #1 SMP Fri Mar 6 17:12:08 EST 2015 x86_64 GNU/Linux (RHEL 7)
>            Reporter: Matthew Zipay
>            Assignee: Grzegorz Grzybek
>            Priority: Minor
>              Labels: patch
>         Attachments: CAMEL-10038.patch, camel-context.xml, example.bpp.fallback.cfg
>
>
> When BlueprintPropertiesParser parses an "augmented" property key that is not found (i.e. value is null), it does not return the null value so that the fallbackToUnaugmentedProperty="true" (default) behavior can run. Instead, it immediately throws an IllegalArgumentException.
> As a result, it appears to be impossible to take advantage of fallbackToUnaugmentedProperty="true" behavior when using the Blueprint properties resolver/parser.
> I discovered this against Red Hat's JBoss Fuse impl of Camel, but am reporting it here because it appears to be a bug in base Camel. More details in comments.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)