Hi Kevin,
judging from the source code, this function seems to use sp:arg as one
of its arguments, but it should be sp:arg1 etc. It tries to use the
index as an Integer but that fails because it's then the empty string.
I wonder why this doesn't work, but your suspicion about missing imports
sounds plausible: this particular function inherits an argument
declaration from its superclass spinmap:TargetFunctions. But this is
defined in a different file and then if you try to just register the
function from the spinmapl file itself it will fail. Please try wrapping
this into a MultiUnion that includes the spinmapl and spinmap graphs and
then register this union graph in the ModuleRegistry.
HTH,
Holger
On 5/18/2012 2:32, Kevin Pauli wrote:
I am having an issue executing a SpinMap outside of TBC, within my own
Java program. It is the same person->customer mapping outlined in
this video: http://vimeo.com/22695742
It works within TBC, but when I try to execute it I am getting the
following error:
java.lang.IllegalArgumentException: Function
http://topbraid.org/spin/spinmapl#relatedObjectContext does not define
a valid body
at org.topbraid.spin.arq.SPINARQFunction.<init>(SPINARQFunction.java:71)
at
org.topbraid.spin.arq.SPINBodyFunctionDriver.doCreate(SPINBodyFunctionDriver.java:21)
at
org.topbraid.spin.arq.SPINBodyFunctionDriver.create(SPINBodyFunctionDriver.java:16)
at
org.topbraid.spin.arq.SPINFunctionDrivers.create(SPINFunctionDrivers.java:50)
at
org.topbraid.spin.system.SPINModuleRegistry.registerARQFunction(SPINModuleRegistry.java:249)
at
org.topbraid.spin.system.SPINModuleRegistry.register(SPINModuleRegistry.java:203)
at
org.topbraid.spin.system.SPINModuleRegistry.registerFunctions(SPINModuleRegistry.java:285)
at
org.topbraid.spin.system.SPINModuleRegistry.registerAll(SPINModuleRegistry.java:234)
Caused by: java.lang.NumberFormatException: For input string: ""
at
java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:470)
at java.lang.Integer.valueOf(Integer.java:554)
at
org.topbraid.spin.model.impl.FunctionCallImpl.getArgumentProperties(FunctionCallImpl.java:64)
at
org.topbraid.spin.model.impl.FunctionCallImpl.getArguments(FunctionCallImpl.java:49)
at
org.topbraid.spin.model.impl.FunctionCallImpl.print(FunctionCallImpl.java:172)
at org.topbraid.spin.model.impl.SelectImpl.print(SelectImpl.java:89)
at
org.topbraid.spin.model.impl.AbstractSPINResourceImpl.toString(AbstractSPINResourceImpl.java:183)
at org.topbraid.spin.arq.SPINARQFunction.<init>(SPINARQFunction.java:58)
... 32 more
Am I perhaps forgetting to import an ontology or a jar file? I should
mention that I have turned off imports with jena's
OntDocumentManager.setProcessImports(false) because this app sits
behind a firewall and we want to strictly control what gets imported.
--
You received this message because you are subscribed to the Google
Group "TopBraid Suite Users", the topics of which include Enterprise
Vocabulary Network (EVN), TopBraid Composer,
TopBraid Live, TopBraid Ensemble, SPARQLMotion and SPIN.
To post to this group, send email to
[email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/topbraid-users?hl=en
--
You received this message because you are subscribed to the Google
Group "TopBraid Suite Users", the topics of which include Enterprise Vocabulary
Network (EVN), TopBraid Composer,
TopBraid Live, TopBraid Ensemble, SPARQLMotion and SPIN.
To post to this group, send email to
[email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/topbraid-users?hl=en