Thellmann / callimachus

Automatically exported from code.google.com/p/callimachus
Other
0 stars 0 forks source link

Turtle Prefixes with Hyphens Require Escaping to Compile as Java Package Names #16

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1.  Create some RDF data in Turtle format that uses a hyphenated prefix name 
(e.g. dbpedia-owl:) and uses that prefix in a Class assignment (e.g. "<MyClass> 
a dbpedia-owl:Company .")
2.  Place the Turtle file in the webapps directory of a Callimachus instance.
3.  Callimachus will fail to start with an error like this:

[[
21:14   192.168.1.12    -       "PUT 
http://localhost:8080/city-map.ttl?calliwebapps HTTP/1.1" 412
21:14   192.168.1.12    -       "PUT 
http://localhost:8080/sparql-georss.xsl?calliwebapps HTTP/1.1" 412
21:14   Compiling schema
21:14   
/var/folders/2_/qd37k4xn0fb2hgnmy8ps3hn00000gn/T/OWLCompiler1715811135102946815/
dbpedia-owl/package-info.java:3: ';' expected
21:14   package dbpedia-owl;
21:14                  ^
21:14   
/var/folders/2_/qd37k4xn0fb2hgnmy8ps3hn00000gn/T/OWLCompiler1715811135102946815/
dbpedia-owl/Company.java:1: ';' expected
21:14   package dbpedia-owl;
21:14                  ^
21:14   2 errors
21:14   
/var/folders/2_/qd37k4xn0fb2hgnmy8ps3hn00000gn/T/OWLCompiler1715811135102946815/
dbpedia-owl/package-info.java:3: ';' expected
21:14   package dbpedia-owl;
21:14                  ^
21:14   
/var/folders/2_/qd37k4xn0fb2hgnmy8ps3hn00000gn/T/OWLCompiler1715811135102946815/
dbpedia-owl/Company.java:1: ';' expected
21:14   package dbpedia-owl;
21:14                  ^
21:14   2 errors
21:14   java.lang.reflect.InvocationTargetException
21:14           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
21:14           at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
21:14           at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.jav
a:25)
21:14           at java.lang.reflect.Method.invoke(Method.java:597)
21:14           at 
org.apache.commons.daemon.support.DaemonLoader.start(DaemonLoader.java:177)
21:14   Caused by: 
org.openrdf.repository.object.exceptions.ObjectCompileException: Could not 
compile
21:14           at 
org.openrdf.repository.object.compiler.source.JavaCompiler.compile(JavaCompiler.
java:75)
21:14           at 
org.openrdf.repository.object.compiler.OWLCompiler.compileConcepts(OWLCompiler.j
ava:413)
21:14           at 
org.openrdf.repository.object.compiler.OWLCompiler.createConceptJar(OWLCompiler.
java:338)
21:14           at 
org.openrdf.repository.object.ObjectRepository.compileSchema(ObjectRepository.ja
va:583)
21:14           at 
org.openrdf.repository.object.ObjectRepository.recompile(ObjectRepository.java:4
34)
21:14           at 
org.openrdf.repository.object.ObjectRepository.recompileWithNotification(ObjectR
epository.java:412)
21:14           at 
org.openrdf.repository.object.ObjectRepository.setCompileRepository(ObjectReposi
tory.java:283)
21:14           at 
org.callimachusproject.CallimachusServer.start(CallimachusServer.java:263)
21:14           at org.callimachusproject.Server.start(Server.java:466)
21:14           ... 5 more
]]

Because Java cannot compile package names with hyphens in them, hyphens must be 
changed (e.g. to underscores) before compilation is attempted.

Original issue reported on code.google.com by piprotot...@gmail.com on 26 Sep 2011 at 9:53

GoogleCodeExporter commented 9 years ago
Fixed in 0.13

Original comment by ja...@3roundstones.com on 31 Oct 2011 at 2:06