Project

Profile

Help

Bug #1577

closed

NullPointerException when function-lookup() retrieves a Java extension function

Added by O'Neil Delpratt almost 12 years ago. Updated over 11 years ago.

Status:
Closed
Priority:
Normal
Category:
Internals
Sprint/Milestone:
-
Start date:
2012-07-11
Due date:
% Done:

100%

Estimated time:
Legacy ID:
Applies to branch:
Fix Committed on Branch:
Fixed in Maintenance Release:
Platforms:

Description

The following query (taken from W3C FOTS:fn-function-lookup-614) causes Saxon to throw an NullPointer exception:

let $f := function-lookup(QName("http://exslt.org/dates-and-times", "month-abbreviation"), 1)
return if (exists($f)) then $f("2012-02-28") else "not-available"

The problem will occur when looking up any function implemented as a Java external/extension function.

The stack trace of the exception thrown is as follows:

java.lang.NullPointerException

at com.saxonica.expr.JavaExtensionFunctionCall.setupParams(JavaExtensionFunctionCall.java:532)

at com.saxonica.expr.JavaExtensionFunctionCall.call(JavaExtensionFunctionCall.java:390)

at com.saxonica.expr.JavaExtensionFunctionCall.iterate(JavaExtensionFunctionCall.java:278)

at com.saxonica.functions.hof.FirstClassFunction.invoke(FirstClassFunction.java:104)

at com.saxonica.functions.hof.DynamicFunctionCallDefinition$DynamicFunctionCall.call(DynamicFunctionCallDefinition.java:158)

at net.sf.saxon.functions.IntegratedFunctionCall.iterate(IntegratedFunctionCall.java:235)

at net.sf.saxon.expr.instruct.Choose.iterate(Choose.java:863)

at net.sf.saxon.expr.LetExpression.iterate(LetExpression.java:338)

at net.sf.saxon.query.XQueryExpression.iterator(XQueryExpression.java:341)

at net.sf.saxon.s9api.XQueryEvaluator.evaluate(XQueryEvaluator.java:378)

at com.saxonica.testdriver.FOTestSuiteDriver.runTestCase(FOTestSuiteDriver.java:1142)

Please register to edit this issue

Also available in: Atom PDF