[
https://issues.apache.org/jira/browse/FINERACT-1174?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Michael Vorburger updated FINERACT-1174:
----------------------------------------
Description:
Allow Spring to component-scan plugins in non org.apache.fineract packages
One of a number of problems that I ran into in FINERACT-1127 was that I
initially tried to have the PentahoReportingProcessServiceImpl in
[https://github.com/vorburger/fineract-pentaho/] in {{package
org.mifos.fineract.pentaho}} (which I made up).
This seemed better than {{package
org.apache.fineract.infrastructure.report.service}}, because... well,
[https://github.com/vorburger/fineract-pentaho] IS NOT part of Apache Fineract
core, and will never be (due to the incompatible license), but is a "plugin".
However, this didn't work, because, of course we only {{context:component-scan
base-package="org.apache.fineract.accounting.*, ...}} et al. in
fineract-provider/src/main/resources/META-INF/spring/appContext.xml (BTW see
FINERACT-1175 which proposes to simplify that).
I've temporarily moved PentahoReportingProcessServiceImpl back to {{package
org.apache.fineract}} for the fineract-pentaho POC, but it does raise an
interesting general question.. if we want to move in the direction of
supporting external plugins in Fineract, what package should we allow them to
live in - and how we do component-scan for them?! I can't think of a good
answer.
[~ptuomola] [~aleks] you perhaps have any thoughts about this?
was:
Allow Spring to component-scan plugins in non org.apache.fineract packages
One of a number of problems that I ran into in FINERACT-1127 was that I
initially tried to have the PentahoReportingProcessServiceImpl in
https://github.com/vorburger/fineract-pentaho/ in {{package
org.mifos.fineract.pentaho}} (which I made up).
This seemed better than {{package
org.apache.fineract.infrastructure.report.service}}, because... well,
https://github.com/vorburger/fineract-pentaho IS NOT part of Apache Fineract
core, and will never be (due to the incompatible license), but is a "plugin".
However, this didn't work, because, of course we only {{context:component-scan
base-package="org.apache.fineract.accounting.*, ...}} et al. in
fineract-provider/src/main/resources/META-INF/spring/appContext.xml (BTW see
FINERACT-tbd / PR which proposes to simplify that).
I've temporarily moved PentahoReportingProcessServiceImpl back to {{package
org.apache.fineract}} for the fineract-pentaho POC, but it does raise an
interesting general question.. if we want to move in the direction of
supporting external plugins in Fineract, what package should we allow them to
live in - and how we do component-scan for them?! I can't think of a good
answer.
[~ptuomola] [~aleks] you perhaps have any thoughts about this?
> Allow Spring to component-scan plugins in non org.apache.fineract packages
> --------------------------------------------------------------------------
>
> Key: FINERACT-1174
> URL: https://issues.apache.org/jira/browse/FINERACT-1174
> Project: Apache Fineract
> Issue Type: Improvement
> Reporter: Michael Vorburger
> Priority: Major
>
> Allow Spring to component-scan plugins in non org.apache.fineract packages
> One of a number of problems that I ran into in FINERACT-1127 was that I
> initially tried to have the PentahoReportingProcessServiceImpl in
> [https://github.com/vorburger/fineract-pentaho/] in {{package
> org.mifos.fineract.pentaho}} (which I made up).
> This seemed better than {{package
> org.apache.fineract.infrastructure.report.service}}, because... well,
> [https://github.com/vorburger/fineract-pentaho] IS NOT part of Apache
> Fineract core, and will never be (due to the incompatible license), but is a
> "plugin".
> However, this didn't work, because, of course we only
> {{context:component-scan base-package="org.apache.fineract.accounting.*,
> ...}} et al. in
> fineract-provider/src/main/resources/META-INF/spring/appContext.xml (BTW see
> FINERACT-1175 which proposes to simplify that).
> I've temporarily moved PentahoReportingProcessServiceImpl back to {{package
> org.apache.fineract}} for the fineract-pentaho POC, but it does raise an
> interesting general question.. if we want to move in the direction of
> supporting external plugins in Fineract, what package should we allow them to
> live in - and how we do component-scan for them?! I can't think of a good
> answer.
> [~ptuomola] [~aleks] you perhaps have any thoughts about this?
--
This message was sent by Atlassian Jira
(v8.3.4#803005)