Claude Warren created JENA-356:
----------------------------------
Summary: Assembley loader does not work across jars in Fuseki
Key: JENA-356
URL: https://issues.apache.org/jira/browse/JENA-356
Project: Apache Jena
Issue Type: Bug
Components: Fuseki
Affects Versions: Fuseki 0.2.5
Reporter: Claude Warren
When attempting to load the d2rq assembler using the default fuseki-server.jar
and a config.ttl file I get com.hp.hpl.jena.shared.JenaException:
java.lang.ClassNotFoundException:
de.fuberlin.wiwiss.d2rq.assembler.D2RQAssembler even though the jar is on the
path. Moving the de/... and d2rq/... classes from the d2rq jar into the
fuseki-server jar solves the problem.
To recreate
Download fuseki and d2rq.
create a d2rq configuration that works.
create a fuseki config.ttl that will load the d2rq configuration.
in the fuseki directory execute
java -Dlog4j.configuration=log4j.properties -Xmx1200M -cp
$CLASSPATH:<d2rqdir>/* -jar fuseki-server.jar --update --config=config.ttl
I think the issue is in the
com.hp.hpl.jena.assembler.AssemblerHelp.loadClassNamedBy( Statement s ) method.
I believe that
try { return Class.forName( getString( s ) ); }
should be replaced with
try { return Class.forName( getString( s ), true, null ); }
to use the bootstrap loader.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira