[
https://issues.apache.org/jira/browse/ARIES-1355?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14638909#comment-14638909
]
Matt Pavlovich commented on ARIES-1355:
---------------------------------------
Christian-
Thanks for the quick response. The driving factor to allow for multiple
persistence units is to readily support variances between DB vendors. Having it
be configurable provides even greater flexibility (no need to have separate
modules).
Off the top of my head, I don't see how an annotation would be able to support
that scenario.
Are there other factors driving the move away from the blueprint-defined
jpa:unit/context?
I'm not tied to any particular solution, but having configurable PU's would be
a very useful capability.
Thanks
> blueprint-jpa does not interpolate configuration properties
> -----------------------------------------------------------
>
> Key: ARIES-1355
> URL: https://issues.apache.org/jira/browse/ARIES-1355
> Project: Aries
> Issue Type: Bug
> Components: Blueprint
> Affects Versions: blueprint-cm-1.0.6
> Reporter: Matt Pavlovich
>
> When attempting to wire in the persistent unit name from a cm property, aries
> jpa does not interpolate the value, and instead tries to lookup the ${name}
> literally.
> {noformat}
> <?xml version="1.0" encoding="UTF-8"?>
> <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xmlns:camel="http://camel.apache.org/schema/blueprint"
> xmlns:cm="http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.0.0"
> xmlns:jpa="http://aries.apache.org/xmlns/jpa/v1.1.0"
> xmlns:tx="http://aries.apache.org/xmlns/transactions/v1.1.0"
> xsi:schemaLocation="
> http://www.osgi.org/xmlns/blueprint/v1.0.0
> http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd">
> <cm:property-placeholder persistent-id="com.company.jpatest">
> <cm:default-properties>
> <cm:property name="persistentUnitName" value="my.pu" />
> </cm:default-properties>
> </cm:property-placeholder>
> <bean id="tracingStoreTx" class="com.company.StuffJPAImpl"
> destroy-method="destroy">
> <jpa:unit unitname="${persistentUnitName}"
> property="entityManagerFactory" />
> </bean>
> ..
> {noformat}
> Log message
> {noformat}
> [(&(&(!(org.apache.aries.jpa.proxy.factory=*))(osgi.unit.name=${persistentUnitName}))(objectClass=javax.persistence.EntityManagerFactory)),
>
> (&(&(!(org.apache.aries.jpa.proxy.factory=*))(osgi.unit.name=${persistentUnitName}))(objectClass=javax.persistence.EntityManagerFactory))]
> java.util.concurrent.TimeoutException
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)