gpt4 book ai didi

java - Fuseki 服务器不显示数据集

转载 作者:行者123 更新时间:2023-11-28 22:16:03 24 4
gpt4 key购买 nike

我是 Tomcat、Fuseki 和 Shiro.ini 文件的新手,所以请原谅我提出愚蠢的问题。

系统:

  • MacMini ==> OS.X 10.13(作为开发服务器)
  • Java ==> 8
  • Tomcat ==> 9.0.10

工作流程:

  • 通过 Plist 文件,Tomcat 实例在服务器每次启动时启动。
  • /Users/username/tomcat/webapps 中,我放入了成功提取的 fuseki.war 文件。
  • 我插入了一个定制的 RDF 文件,该文件会在重启后加载并提供服务
  • (好事到此结束)

问题:我可以通过以下方式访问 RDF 文件:http://localhost:8080/fuseki,我可以执行 SPARQL 查询以及我需要完成的所有其他事情。但是,当将开发服务器连接到 PC 并通过它的 IP 访问它时:例如 http://192.168.0.112:8080/fuseki;我最终看到了具有绿色状态的服务器,并且整个 Web 界面都可以正常工作,但数据集除外。当我转到 http://192.168.0.112:8080/fuseki/dataset 并按“查询”(或任何其他按钮)时,它显示:“请选择一个数据库”

**原因:我找到了这个线程 fuseki webinterface does not show datasets (SO) ,这让我调查了 shiro.ini 文件。结果我没有。

然后我搜索了 shiro.ini 并在 /Users/username/tomcat/webapps/fuseki/WEB-INF/web.xml 中找到了引用:

<context-param>
<param-name>shiroConfigLocations</param-name>
<!-- Try a path in: FUSEKI_BASE, FUSEKI_HOME, war resource
If a "file:" then look there and there only.
-->
<param-value>shiro.ini</param-value>
</context-param>

这让我觉得我需要将 shiro.ini 文件放在我的根文件夹 (Users/username/tomcat/webapps/fuseki/shiro.ini) 而不是 (用户/用户名/tomcat/webapps/fuseki/run/shiro.ini)。然而,两者都不起作用。

我还查看了一个日志文件:catalina.out,据此看来 shiro.ini 文件已加载(或者至少没有迹象表明它有错误。)以下是该日志的相关摘录:

[2018-07-31 09:18:54] Config     INFO  FUSEKI_HOME=unset
[2018-07-31 09:18:54] Config INFO FUSEKI_BASE=/etc/fuseki
[2018-07-31 09:18:54] Config INFO Shiro file: file:///etc/fuseki/shiro.ini
[2018-07-31 09:18:55] Config INFO Context path = /fuseki
[2018-07-31 09:18:55] Config INFO Configuration file: /etc/fuseki/config.ttl

但是我找不到任何文件夹 etc/fuseki/?那么,这到底是怎么回事呢?

这是 shiro.ini 文件:

[users]
admin=passXXX #non-default

[main]
#localhost=org.apache.jena.fuseki.authz.LocalhostFilter

[roles]


[urls]
##control open to anyone
/$/status = anon
/$/ping = anon
##rest restricted to Localhost
## see above for localhost

#/$/** = localhost
/**=anon

我不确定此时发生了什么,所以非常欢迎任何指点。

最佳答案

原来这个问题更多是因为我不熟悉 MAC 操作系统,而不是 Tomcat 或 Fuseki。

catalina.out 文件中引用的文件夹/etc/fuseki 被紧紧锁定,它的实际路径是/private/etc/fuseki(尽管这似乎无关紧要)

由于没有任何权限,默认情况下您无法进入 fuseki 文件夹。甚至在做:

sudo cd /private/etc/fuseki 

sudo cd /etc/fuseki

不会工作。我需要通过 getinfo 为自己授予对该文件夹的读/写访问权限(尽管我认为您也可以通过 chown 实现此目的。

现在我可以查看该文件夹的内容,但其中的所有文件和文件夹都有相同的问题并且需要相同的解决方案。所以现在我可以自定义 shiro.ini 和 configuration/rdf.ttl 文件。

如果我这样做

sudo cd /private/etc/fuseki 

sudo cd /etc/fuseki

现在,我就可以成功查看内容了。

关于java - Fuseki 服务器不显示数据集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51608404/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com