有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java试图在wso2流处理器/流集成器上堆叠siddhi

我正在运行一个简单的Siddhi应用程序,正如WSO2文档中建议的那样,但我得到了以下异常。我将遵循以下指南的第2步 https://ei.docs.wso2.com/en/latest/streaming-integrator/quick-start-guide/quick-start-guide/ 有人能告诉我我做错了什么吗?我有作品。csv输入

C:\Users\foo\productions.csv
osgi> [2021-03-11 13:32:04,530]  INFO {org.wso2.carbon.streaming.integrator.core.internal.StreamProcessorService} - Siddhi App File ManageProductionStats undeployed successfully.
[2021-03-11 13:32:20,425]  WARN {org.wso2.carbon.siddhi.extensions.installer.core.internal.SiddhiExtensionsInstallerMicroservice} - The following extensions are required for Siddhi app 'ManageProductionStats': [kafka]. Please use the Extension Installer to install them.
[2021-03-11 13:32:20,456] ERROR {org.wso2.carbon.streaming.integrator.core.internal.StreamProcessorDeployer} - io.siddhi.core.exception.SiddhiAppCreationException: Error on 'ManageProductionStats' @ Line: 6. Position: 23, near '@source(type = 'file', mode = "LINE", file.uri = "file:/Users/foo/productions.csv", tailing = "true",
    @map(type = 'csv'))'. Exception occurred when resolving path for: file:/Users/foo/productions.csv org.wso2.carbon.streaming.integrator.core.internal.exception.SiddhiAppDeploymentException: io.siddhi.core.exception.SiddhiAppCreationException: Error on 'ManageProductionStats' @ Line: 6. Position: 23, near '@source(type = 'file', mode = "LINE", file.uri = "file:/Users/foo/productions.csv", tailing = "true",
    @map(type = 'csv'))'. Exception occurred when resolving path for: file:/Users/foo/productions.csv
        at org.wso2.carbon.streaming.integrator.core.internal.StreamProcessorDeployer.deploySiddhiQLFile(StreamProcessorDeployer.java:110)
        at org.wso2.carbon.streaming.integrator.core.internal.StreamProcessorDeployer.update(StreamProcessorDeployer.java:356)
        at org.wso2.carbon.deployment.engine.internal.DeploymentEngine.lambda$updateArtifacts$2(DeploymentEngine.java:342)
        at java.util.ArrayList.forEach(ArrayList.java:1259)
        at org.wso2.carbon.deployment.engine.internal.DeploymentEngine.updateArtifacts(DeploymentEngine.java:333)
        at org.wso2.carbon.deployment.engine.internal.RepositoryScanner.sweep(RepositoryScanner.java:98)
        at org.wso2.carbon.deployment.engine.internal.RepositoryScanner.scan(RepositoryScanner.java:68)
        at org.wso2.carbon.deployment.engine.internal.SchedulerTask.run(SchedulerTask.java:43)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
Caused by: io.siddhi.core.exception.SiddhiAppCreationException: Error on 'ManageProductionStats' @ Line: 6. Position: 23, near '@source(type = 'file', mode = "LINE", file.uri = "file:/Users/foo/productions.csv", tailing = "true",
    @map(type = 'csv'))'. Exception occurred when resolving path for: file:/Users/foo/productions.csv
        at io.siddhi.core.util.ExceptionUtil.populateQueryContext(ExceptionUtil.java:58)
        at io.siddhi.core.util.ExceptionUtil.populateQueryContext(ExceptionUtil.java:35)
        at io.siddhi.core.util.parser.helper.DefinitionParserHelper.addEventSource(DefinitionParserHelper.java:388)
        at io.siddhi.core.util.SiddhiAppRuntimeBuilder.defineStream(SiddhiAppRuntimeBuilder.java:117)
        at io.siddhi.core.util.parser.SiddhiAppParser.defineStreamDefinitions(SiddhiAppParser.java:374)
        at io.siddhi.core.util.parser.SiddhiAppParser.parse(SiddhiAppParser.java:230)
        at io.siddhi.core.SiddhiManager.createSiddhiAppRuntime(SiddhiManager.java:86)
        at io.siddhi.core.SiddhiManager.createSiddhiAppRuntime(SiddhiManager.java:96)
        at org.wso2.carbon.streaming.integrator.core.internal.StreamProcessorService.deploySiddhiApp(StreamProcessorService.java:80)
        at org.wso2.carbon.streaming.integrator.core.internal.StreamProcessorDeployer.deploySiddhiQLFile(StreamProcessorDeployer.java:97)
        ... 14 more
Caused by: io.siddhi.core.exception.SiddhiAppRuntimeException: Exception occurred when resolving path for: file:/Users/foo/productions.csv
        at io.siddhi.extension.util.Utils.getFileObject(Utils.java:84)
        at io.siddhi.extension.io.file.FileSource.init(FileSource.java:419)
        at io.siddhi.core.stream.input.source.Source.init(Source.java:80)
        at io.siddhi.core.util.parser.helper.DefinitionParserHelper.addEventSource(DefinitionParserHelper.java:372)
        ... 21 more
Caused by: org.apache.commons.vfs2.FileSystemException: Invalid absolute URI "file:/Users/foo/productions.csv".
        at org.apache.commons.vfs2.provider.AbstractOriginatingFileProvider.findFile(AbstractOriginatingFileProvider.java:77)
        at org.apache.commons.vfs2.impl.DefaultFileSystemManager.resolveFile(DefaultFileSystemManager.java:778)
        at org.apache.commons.vfs2.impl.DefaultFileSystemManager.resolveFile(DefaultFileSystemManager.java:658)
        at io.siddhi.extension.util.Utils.getFileObject(Utils.java:82)
        ... 24 more
Caused by: org.apache.commons.vfs2.FileSystemException: URI "file:/Users/foo/productions.csv" is not an absolute file name.
        at org.apache.commons.vfs2.provider.local.WindowsFileNameParser.extractWindowsRootPrefix(WindowsFileNameParser.java:68)
        at org.apache.commons.vfs2.provider.local.WindowsFileNameParser.extractRootPrefix(WindowsFileNameParser.java:32)
        at org.apache.commons.vfs2.provider.local.LocalFileNameParser.parseUri(LocalFileNameParser.java:75)
        at org.apache.commons.vfs2.provider.AbstractFileProvider.parseUri(AbstractFileProvider.java:179)
        at org.apache.commons.vfs2.provider.AbstractOriginatingFileProvider.findFile(AbstractOriginatingFileProvider.java:75)
        ... 27 more

共 (1) 个答案

  1. # 1 楼答案

    我相信您正在windows环境中尝试此功能。 那么,您可以尝试以下方法来提供文件路径吗

    file:<Driver_Name>:><Absolute_Path_To_The_File>/productions.csv
    file:D:\WSO2\productions.csv