微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

如何解决尝试在 wso2 流处理器/流集成器上堆叠 siddhi

我正在按照 WSO2 文档的建议运行一个简单的 Siddhi 应用程序,但出现以下异常。我正在遵循本指南的第 2 步 https://ei.docs.wso2.com/en/latest/streaming-integrator/quick-start-guide/quick-start-guide/ 有人可以告诉我我做错了什么吗?我在

中有productions.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,@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,@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

解决方法

我相信您正在 Windows 环境中尝试此操作。 那么你可以试试下面的方法来提供文件路径

// Initialise your table and set up column names.
const yourTable = $('#yourTableID').DataTable({
   columns: [
        {name: 'FirstName'},{name: 'LastName'},]
});

// Get your table's settings
const settings = yourTable.settings();

// Map through the settings.aoColumns object and return each column.name
const columnNames = settings.aoColumns.map((column) => {
    return column.name;
});

console.log(columnNames) // prints: ['FirstName','LastName']

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?