簡體   English   中英

耶拿+顆粒+小程序中的滑

[英]Jena + Pellet + Slick in an applet

我正在嘗試將Jena庫,Pellet和一些RPG 2d庫Slick集成到一個applet中。 因此,基本上,當我在瀏覽器中運行小程序時,我收到此文件許可權錯誤(我正在使用的jar均已簽名):

   Exception in thread "Thread-15" java.lang.ExceptionInInitializerError
    at org.mindswap.pellet.ABox.<init>(ABox.java:208)
    at org.mindswap.pellet.KnowledgeBase.clear(KnowledgeBase.java:540)
    at org.mindswap.pellet.KnowledgeBase.<init>(KnowledgeBase.java:418)
    at org.mindswap.pellet.jena.PelletInfGraph.<init>(PelletInfGraph.java:99)
    at org.mindswap.pellet.jena.PelletReasoner.bind(PelletReasoner.java:95)
    at org.mindswap.pellet.jena.PelletReasoner.bind(PelletReasoner.java:53)
    at com.hp.hpl.jena.ontology.impl.OntModelImpl.generateGraph(OntModelImpl.java:2744)
    at com.hp.hpl.jena.ontology.impl.OntModelImpl.<init>(OntModelImpl.java:139)
    at com.hp.hpl.jena.ontology.impl.OntModelImpl.<init>(OntModelImpl.java:128)
    at com.hp.hpl.jena.rdf.model.ModelFactory.createOntologyModel(ModelFactory.java:410)
    at RPGGame.GameSelectionScreen.init(GameSelectionScreen.java:170)
    at RPGGame.RPGGame.initStatesList(RPGGame.java:39)
    at org.newdawn.slick.state.StateBasedGame.init(StateBasedGame.java:164)
    at org.newdawn.slick.AppletGameContainer$Container.initApplet(AppletGameContainer.java:272)
    at org.newdawn.slick.AppletGameContainer$ContainerPanel.initGL(AppletGameContainer.java:229)
    at org.newdawn.slick.AppletGameContainer$ContainerPanel.start(AppletGameContainer.java:216)
    at org.newdawn.slick.AppletGameContainer$1.run(AppletGameContainer.java:92)
    Caused by: java.security.AccessControlException: access denied      ("java.util.PropertyPermission"     "pellet.configuration" "read")
    at java.security.AccessControlContext.checkPermission(Unknown Source)
    at java.security.AccessController.checkPermission(Unknown Source)
    at java.lang.SecurityManager.checkPermission(Unknown Source)
    at java.lang.SecurityManager.checkPropertyAccess(Unknown Source)
    at java.lang.System.getProperty(Unknown Source)
    at org.mindswap.pellet.PelletOptions.<clinit>(PelletOptions.java:805)

在此先感謝,Ioana

該錯誤是因為ABox試圖從PelletOptions中讀取信息,這需要加載Pellet配置。 它通常會嘗試從jar中讀取此內容,但首先,它將仔細檢查用戶在系統屬性中指定的位置是否不同於默認位置。 正是這種檢查導致了錯誤。

您可以修改PelletOptions使其始終在jar中進行檢查,而不必進行系統屬性檢查,或者您可以通過旋轉applet安全性使它正常(我不知道這樣做是否可行,以前從未使用過Applet)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM