[ https://issues.apache.org/jira/browse/FINERACT-1127?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216002#comment-17216002 ]
Tesfahiwet Truneh commented on FINERACT-1127: --------------------------------------------- *{color:#172b4d}Hi{color}* *{color:#172b4d}when I ran the command: {color:#de350b}gradlew distZip{color} I am getting the following error message, any help/suggestion?{color}* C:\Users\gelila\fineract-pentaho>gradlew distZip Starting a Gradle Daemon, 26 busy and 1 incompatible and 1 stopped Daemons could not be reused, use --status for details > Task :compileJava C:\Users\gelila\fineract-pentaho\src\main\java\org\apache\fineract\infrastructur e\report\service\PentahoReportingProcessServiceImpl.java:19: error: package org. apache.fineract.infrastructure.core.api does not exist import org.apache.fineract.infrastructure.core.api.ApiParameterHelper; ^ C:\Users\gelila\fineract-pentaho\src\main\java\org\apache\fineract\infrastructur e\report\service\PentahoReportingProcessServiceImpl.java:20: error: package org. apache.fineract.infrastructure.core.boot does not exist import org.apache.fineract.infrastructure.core.boot.JDBCDriverConfig; ^ C:\Users\gelila\fineract-pentaho\src\main\java\org\apache\fineract\infrastructur e\report\service\PentahoReportingProcessServiceImpl.java:21: error: package org. apache.fineract.infrastructure.core.domain does not exist import org.apache.fineract.infrastructure.core.domain.FineractPlatformTenant; ^ C:\Users\gelila\fineract-pentaho\src\main\java\org\apache\fineract\infrastructur e\report\service\PentahoReportingProcessServiceImpl.java:22: error: package org. apache.fineract.infrastructure.core.domain does not exist import org.apache.fineract.infrastructure.core.domain.FineractPlatformTenantConn ection; ^ C:\Users\gelila\fineract-pentaho\src\main\java\org\apache\fineract\infrastructur e\report\service\PentahoReportingProcessServiceImpl.java:23: error: package org. apache.fineract.infrastructure.core.exception does not exist import org.apache.fineract.infrastructure.core.exception.PlatformDataIntegrityEx ception; ^ C:\Users\gelila\fineract-pentaho\src\main\java\org\apache\fineract\infrastructur e\report\service\PentahoReportingProcessServiceImpl.java:24: error: package org. apache.fineract.infrastructure.core.service does not exist import org.apache.fineract.infrastructure.core.service.ThreadLocalContextUtil; ^ C:\Users\gelila\fineract-pentaho\src\main\java\org\apache\fineract\infrastructur e\report\service\PentahoReportingProcessServiceImpl.java:25: error: package org. apache.fineract.infrastructure.report.annotation does not exist import org.apache.fineract.infrastructure.report.annotation.ReportService; ^ C:\Users\gelila\fineract-pentaho\src\main\java\org\apache\fineract\infrastructur e\report\service\PentahoReportingProcessServiceImpl.java:26: error: package org. apache.fineract.infrastructure.security.service does not exist import org.apache.fineract.infrastructure.security.service.PlatformSecurityConte xt; ^ C:\Users\gelila\fineract-pentaho\src\main\java\org\apache\fineract\infrastructur e\report\service\PentahoReportingProcessServiceImpl.java:27: error: package org. apache.fineract.useradministration.domain does not exist import org.apache.fineract.useradministration.domain.AppUser; ^ C:\Users\gelila\fineract-pentaho\src\main\java\org\apache\fineract\infrastructur e\report\service\PentahoReportingProcessServiceImpl.java:49: error: cannot find symbol public class PentahoReportingProcessServiceImpl implements ReportingProcessServi ce { ^ symbol: class ReportingProcessService C:\Users\gelila\fineract-pentaho\src\main\java\org\apache\fineract\infrastructur e\report\service\PentahoReportingProcessServiceImpl.java:48: error: cannot find symbol @ReportService(type = "Pentaho") ^ symbol: class ReportService C:\Users\gelila\fineract-pentaho\src\main\java\org\apache\fineract\infrastructur e\report\service\PentahoReportingProcessServiceImpl.java:54: error: cannot find symbol private final PlatformSecurityContext context; ^ symbol: class PlatformSecurityContext location: class PentahoReportingProcessServiceImpl C:\Users\gelila\fineract-pentaho\src\main\java\org\apache\fineract\infrastructur e\report\service\PentahoReportingProcessServiceImpl.java:58: error: cannot find symbol private JDBCDriverConfig driverConfig; ^ symbol: class JDBCDriverConfig location: class PentahoReportingProcessServiceImpl C:\Users\gelila\fineract-pentaho\src\main\java\org\apache\fineract\infrastructur e\report\service\PentahoReportingProcessServiceImpl.java:61: error: cannot find symbol public PentahoReportingProcessServiceImpl(final PlatformSecurityContext cont ext) { ^ symbol: class PlatformSecurityContext location: class PentahoReportingProcessServiceImpl C:\Users\gelila\fineract-pentaho\src\main\java\org\apache\fineract\infrastructur e\report\service\PentahoReportingProcessServiceImpl.java:69: error: method does not override or implement a method from a supertype @Override ^ C:\Users\gelila\fineract-pentaho\src\main\java\org\apache\fineract\infrastructur e\report\service\PentahoReportingProcessServiceImpl.java:74: error: cannot find symbol final Locale locale = ApiParameterHelper.extractLocale(queryParams); ^ symbol: variable ApiParameterHelper location: class PentahoReportingProcessServiceImpl C:\Users\gelila\fineract-pentaho\src\main\java\org\apache\fineract\infrastructur e\report\service\PentahoReportingProcessServiceImpl.java:82: error: cannot find symbol throw new PlatformDataIntegrityException("error.msg.invalid.outputTy pe", "No matching Output Type: " + outputType); ^ symbol: class PlatformDataIntegrityException location: class PentahoReportingProcessServiceImpl C:\Users\gelila\fineract-pentaho\src\main\java\org\apache\fineract\infrastructur e\report\service\PentahoReportingProcessServiceImpl.java:86: error: cannot find symbol throw new PlatformDataIntegrityException("error.msg.no.pentaho", "Pe ntaho is not enabled", "Pentaho is not enabled"); ^ symbol: class PlatformDataIntegrityException location: class PentahoReportingProcessServiceImpl C:\Users\gelila\fineract-pentaho\src\main\java\org\apache\fineract\infrastructur e\report\service\PentahoReportingProcessServiceImpl.java:148: error: cannot find symbol throw new PlatformDataIntegrityException("error.msg.invalid.outputType", "No matching Output Type: " + outputType); ^ symbol: class PlatformDataIntegrityException location: class PentahoReportingProcessServiceImpl C:\Users\gelila\fineract-pentaho\src\main\java\org\apache\fineract\infrastructur e\report\service\PentahoReportingProcessServiceImpl.java:153: error: cannot find symbol final AppUser currentUser = this.context.authenticatedUser(); ^ symbol: class AppUser location: class PentahoReportingProcessServiceImpl C:\Users\gelila\fineract-pentaho\src\main\java\org\apache\fineract\infrastructur e\report\service\PentahoReportingProcessServiceImpl.java:174: error: cannot find symbol throw new PlatformDataIntegrityException("error.msg.repo rting.error", ^ symbol: class PlatformDataIntegrityException location: class PentahoReportingProcessServiceImpl C:\Users\gelila\fineract-pentaho\src\main\java\org\apache\fineract\infrastructur e\report\service\PentahoReportingProcessServiceImpl.java:200: error: cannot find symbol final FineractPlatformTenant tenant = ThreadLocalContextUtil.getTena nt(); ^ symbol: class FineractPlatformTenant location: class PentahoReportingProcessServiceImpl C:\Users\gelila\fineract-pentaho\src\main\java\org\apache\fineract\infrastructur e\report\service\PentahoReportingProcessServiceImpl.java:200: error: cannot find symbol final FineractPlatformTenant tenant = ThreadLocalContextUtil.getTena nt(); ^ symbol: variable ThreadLocalContextUtil location: class PentahoReportingProcessServiceImpl C:\Users\gelila\fineract-pentaho\src\main\java\org\apache\fineract\infrastructur e\report\service\PentahoReportingProcessServiceImpl.java:201: error: cannot find symbol final FineractPlatformTenantConnection tenantConnection = tenant.get Connection(); ^ symbol: class FineractPlatformTenantConnection location: class PentahoReportingProcessServiceImpl 24 errors > Task :compileJava FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':compileJava'. > Compilation failed; see the compiler error output for details. * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights. * Get more help at https://help.gradle.org BUILD FAILED in 58s 1 actionable task: 1 executed C:\Users\gelila\fineract-pentaho> > Modularize Fineract to allow something like e.g. the Pentaho integration to > be built and run separately > ------------------------------------------------------------------------------------------------------- > > Key: FINERACT-1127 > URL: https://issues.apache.org/jira/browse/FINERACT-1127 > Project: Apache Fineract > Issue Type: New Feature > Components: Reports > Reporter: Michael Vorburger > Assignee: Michael Vorburger > Priority: Major > Attachments: image-2020-10-09-16-25-14-300.png > > > [~francisguchie] thanks for raising > [https://github.com/apache/fineract/pull/1262/files] for FINERACT-1094, even > though we cannot merge it due to licensing, it helps at least me to see it > nicely isolated like that, e.g. for this discussion! > Seeing that, and subsequent FINERACT-1125, led me to wonder if an alternative > future architecture approach here could be to have a 3rd-party, such as the > Mifos Initiative, offer Pentaho integration for Fineract not anymore by > forking Fineract and adding code to it (which is always a PITA to maintain, > in the long run), but by building and releasing an entirely separate runnable > binary artifact (WAR / JAR) for it... this could be very neat even from a > runtime perspective - completely separate REST API, and (possibly "heavy"?) > report generation? > _One could even image breaking out running scheduler jobs separately from API > serving. Ultimately, this could effectively be the start of breaking Fineract > 1.x into a CN-like "microservices" deployment... but I'd envision that to, > always, just be one option, a possible alternative - with the current WAR/JAR > remaining as is, forever - but it would just "assemble modules" for the > "monolithic deployment distribution". Anything along these ideas is further > down the line, but starting with making this possible for reporting could be > a pragmatic start.... let's focus on that only, in this issue._ > This is more of a still somewhat vague idea at this stage. The next step > would consist of spending more time understanding the details of how > Fineract's {{ReportingProcessService}} is designed... I personally don't know > that much about it, but looking at PR #1162, one can kind of gather that this > {{PentahoReportingProcessServiceImpl}} needs to implement > {{ReportingProcessService}}? What would it take for the front-end to be able > to call another service (or Fineract to HTTP redirect reports to an external > service...), and then for such an external service to be able to... do > exactly what, actually - what's the lowest common denominator integration > touch point, here? From an only very quick glance at the code, it looks like > we're basically "passing through" JDBC connection details? So... what one > would need is to be able to build an external Fineract (non-CN) service that > can access the same DB? Sharing a minimal amount of > {{fineract.infrastructure.core}} code, as a library... > [~francisguchie], [~ptuomola], [~awasum], [~xurror], [~edcable] FYI. -- This message was sent by Atlassian Jira (v8.3.4#803005)