ごまの依存関係を使用してアプリケーションを作成しました。
<dependency>
<groupId>org.openrdf.sesame</groupId>
<artifactId>sesame-runtime</artifactId>
<version>2.7.5</version>
</dependency>
<dependency>
<groupId>org.openrdf.sesame</groupId>
<artifactId>sesame-repository-sail</artifactId>
<version>2.7.5</version>
</dependency>
<dependency>
<groupId>org.openrdf.sesame</groupId>
<artifactId>sesame-sail-memory</artifactId>
<version>2.7.5</version>
</dependency>
Spring IDE に統合された Tomcat で実行すると機能します。Tomcat 7 にデプロイしましたが、コードで使用したメソッドの 1 つにアクセスすると、次のエラーが発生します (Spring でも同じことが機能します)。
java.lang.AbstractMethodError: org.openrdf.repository.sail.SailRepositoryConnection.begin()V at org.openrdf.repository.event.base.NotifyingRepositoryConnectionWrapper.begin(NotifyingRepositoryConnectionWrapper.java:272) at org.openrdf.repository.manager. SystemRepository.initialize(SystemRepository.java:88) org.openrdf.repository.manager.LocalRepositoryManager.createSystemRepository(LocalRepositoryManager.java:107) org.openrdf.repository.manager.LocalRepositoryManager.createSystemRepository(LocalRepositoryManager.java:62) org com.mvc.API.StorageAPI.createNativeLocalRepository(StorageAPI.java:154) の .openrdf.repository.manager.RepositoryManager.initialize(RepositoryManager.java:104)
154 行目には次のようなものがあります。 manager.initialize();
からです:
ファイル dataDir = new File(REPOSITORY_NAME); RepositoryManager manager = 新しい LocalRepositoryManager(dataDir);
RepositoryManager は実装されたメソッド initialize() を持つ Sesame の抽象クラスであり、LocalRepositoryManger はそれを継承しますが、メソッド initialize() をオーバーライドしません。また、Tomcat 6.0.37 を試し、ゴマの依存関係を 2.7.6 に変更しました。なぜこのエラーが発生するのか分かりますか?
ありがとうございました!