Apache Commons logo Commons JXPath

Release Notes

Release History

Version Date Description
1.4.0 2025-04-12 New features and bug fixes.

Release 1.4.0 – 2025-04-12

Type Changes By
Fix Clarify Javadoc of JXPathContext#getPointer. Fixes JXPATH-172. Thanks to Michele Vivoda. britter
Fix NullPointerException in ChildContext when document only contains an empty root node. Fixes JXPATH-113. Thanks to Michele Vivoda. britter
Fix ValueUtils.getValue throws exception with set and index above size. Fixes JXPATH-160. Thanks to Stefan Albrecht, Michele Vivoda, Uwe Barthel. britter
Fix Concurrency problem for JXPathContextFactory.factoryImplName static field. Fixes JXPATH-162. Thanks to Uwe Barthel. britter
Fix FunctionLibrary Multithreading issue. Fixes JXPATH-141. mbenson
Fix Bean exception handling. Fixes JXPATH-131. Thanks to Gabriel Buades Rubio. mbenson
Fix JXPath support for LazyDynaBean is broken. Fixes JXPATH-128. Thanks to Gabriel Buades Rubio. mbenson
Fix MethodLookupUtils#matchType uses TypeUtils#canConvert which causes "Ambiguous method call" exception. Fixes JXPATH-129. mbenson
Fix Wrong entry IMPORT-PACKAGE in the file MANIFEST.MF for jdom and commons-beanutils. Fixes JXPATH-153. mbenson
Fix Change dynamic class loading to consult context class loader. Fixes JXPATH-153. Thanks to John Trimble. mbenson
Fix Concurrent access on hashmap of JXPathIntrospector. Fixes JXPATH-152. mbenson
Fix Fix possible NPE in PackageFunctions.getFunction(String, String, Object[]). ggregory
Fix JDOMNodePointer.compareChildNodePointers() now throws IllegalStateException instead of RuntimeException. Thanks to Gary Gregory. ggregory
Fix ValueUtils.setValue() now throws IllegalArgumentException instead of RuntimeException. Thanks to Gary Gregory. ggregory
Fix ClassLoaderUtil.toCanonicalName() now calls Objects.requireNonNull() instead of throwing a RuntimeException. Thanks to Gary Gregory. ggregory
Fix XMLDocumentContainer.XMLDocumentContainer(Source) now calls Objects.requireNonNull() instead of throwing a RuntimeException. Thanks to Gary Gregory. ggregory
Fix [StepSecurity] CI: Harden GitHub Actions #66. Thanks to step-security-bot, Gary Gregory. ggregory
Fix Add missing Javadoc. Thanks to Gary Gregory. ggregory
Fix Fix PMD UnnecessaryFullyQualifiedName. Thanks to Gary Gregory. ggregory
Fix Add generics to JXPathContext.iterate(String). Thanks to Gary Gregory. ggregory
Fix Add generics to JXPathContext.iteratePointers(String). Thanks to Gary Gregory. ggregory
Fix Add generics to JXPathContext.decimalFormats. Thanks to Gary Gregory. ggregory
Fix Migrate tests to JUnit5 #214. Thanks to strangelookingnerd. ggregory
Fix Replace try-catch constructs in tests with assertThrows #215. Thanks to strangelookingnerd, Gary Gregory. ggregory
Fix Use generics internally. Thanks to Gary Gregory. ggregory
Fix NodeSet.getPointers() is now typed with generics. Thanks to Gary Gregory. ggregory
Fix ServletContextHandler.collectPropertyNames(HashSet, Object) is now typed with generics. Thanks to Gary Gregory. ggregory
Fix Deprecate MethodLookupUtils.MethodLookupUtils(). Thanks to Gary Gregory. ggregory
Fix Deprecate KeyManagerUtils.KeyManagerUtils(). Thanks to Gary Gregory. ggregory
Fix Deprecate TypeUtils.TypeUtils(). Thanks to Gary Gregory. ggregory
Fix Deprecate ValueUtils.ValueUtils(). Thanks to Gary Gregory. ggregory
Fix PageScopeContext.getAttributeNames() is now typed with generics. Thanks to Gary Gregory. ggregory
Fix Functions.getUsedNamespaces() is now typed with generics. Thanks to Gary Gregory. ggregory
Fix JXPathException now reuses its superclass' Throwable cause. Thanks to Gary Gregory. ggregory
Fix Bump JXPathException serialVersionUID from 4306409701468017766L to 2L. Thanks to Gary Gregory. ggregory
Fix JXPathContextFactoryConfigurationError now reuses its superclass' Throwable cause. Thanks to Gary Gregory. ggregory
Fix Bump JXPathContextFactoryConfigurationError serialVersionUID from 1L to 2L. Thanks to Gary Gregory. ggregory
Fix Deprecate SimplePathInterpreter.SimplePathInterpreter(). Thanks to Gary Gregory. ggregory
Fix Deprecate JXPathServletContexts.JXPathServletContexts(). Thanks to Gary Gregory. ggregory
Fix Deprecate JXPathIntrospector.JXPathIntrospector(). Thanks to Gary Gregory. ggregory
Fix Deprecate InfoSetUtil.InfoSetUtil(). Thanks to Gary Gregory. ggregory
Fix Deprecate Constants.Constants(). Thanks to Gary Gregory. ggregory
Fix Deprecate Parser.Parser(). Thanks to Gary Gregory. ggregory
Fix JXPathException.JXPathException(Throwable) now remembers its Throwable cause argument. Thanks to Gary Gregory. ggregory
Fix Make the private DOMNodePointer.id field final. Thanks to Gary Gregory. ggregory
Fix Make the private NullPointer.id field final. Thanks to Gary Gregory. ggregory
Fix Make the private NullPointer.qname field final. Thanks to Gary Gregory. ggregory
Fix Make the private JDOMNodePointer.id field final. Thanks to Gary Gregory. ggregory
Fix ExpressionContext.getContextNodeList() now uses generics. Thanks to Gary Gregory. ggregory
Fix BasicTypeConverter.unmodifiableCollection(Collection) now uses generics. Thanks to Gary Gregory. ggregory
Fix Fix PMD AvoidDecimalLiteralsInBigDecimalConstructor in org.apache.commons.jxpath.util.BasicTypeConverter.allocateNumber(Class, double). Thanks to Gary Gregory. PMD. ggregory
Fix org.apache.commons.jxpath.ri.JXPathContextReferenceImpl.iteratePointers(String) now uses generics. Thanks to Gary Gregory. ggregory
Fix org.apache.commons.jxpath.ri.JXPathContextReferenceImpl.iteratePointers(String, Expression) now uses generics. Thanks to Gary Gregory. ggregory
Fix org.apache.commons.jxpath.CompiledExpression.iteratePointers(JXPathContext) now uses generics. Thanks to Gary Gregory. ggregory
Fix org.apache.commons.jxpath.JXPathCompiledExpression.iteratePointers(JXPathContext) now uses generics. Thanks to Gary Gregory. ggregory
Fix org.apache.commons.jxpath.util.ClassLoaderUtil.getClass(ClassLoader, String) now uses generics. Thanks to Gary Gregory. ggregory
Fix org.apache.commons.jxpath.util.ClassLoaderUtil.getClass(ClassLoader, String, boolean) now uses generics. Thanks to Gary Gregory. ggregory
Fix org.apache.commons.jxpath.util.ClassLoaderUtil.getClass(String) now uses generics. Thanks to Gary Gregory. ggregory
Fix org.apache.commons.jxpath.util.ClassLoaderUtil.getClass(String, boolean) now uses generics. Thanks to Gary Gregory. ggregory
Add XPath function "ends-with" is not implemented (although "starts-with" is). Fixes JXPATH-123. mbenson
Update public class org.apache.commons.jxpath.JXPathContextFactoryConfigurationError is Serializable incompatible. ggregory
Update public abstract class org.apache.commons.jxpath.ri.model.beans.PropertyOwnerPointer is Serializable incompatible. ggregory
Update public abstract class org.apache.commons.jxpath.ri.model.beans.PropertyPointer is Serializable incompatible. ggregory
Update public abstract class org.apache.commons.jxpath.ri.model.NodePointer is Serializable incompatible. ggregory
Update public class org.apache.commons.jxpath.ri.parser.ParseException is Serializable incompatible. ggregory
Update public class org.apache.commons.jxpath.XMLDocumentContainer is Serializable incompatible. ggregory
Update Bump commons-parent from 54 to 81 #45, #49, #64, #110, #121, #403, #167, #173, #176, #181, #185, #188, #196. Thanks to Dependabot, Gary Gregory. ggregory
Update Bump Java to 8. Fixes JXPATH-184. Thanks to britter, Gary Gregory. britter
Update Bump JUnit 3.8.1 to 4.13.2. Thanks to britter, Gary Gregory. ggregory
Update Bump commons-logging from 1.1.1 to 1.3.5 #34, #129, #147, #160, #174. Thanks to Dependabot, Gary Gregory. ggregory
Update Bump commons-beanutils from 1.8.2 to 1.10.1 #24. Thanks to Dependabot, Gary Gregory. ggregory
Update Bump taglist-maven-plugin from 2.2 to 3.0.0 #32. Thanks to Dependabot. ggregory
Update Bump servlet-api from 2.4 to 2.5 #29. Thanks to Dependabot. ggregory
Update Bump JDOM from jdom:jdom 1.0 to org.jdom:jdom 1.1.3. Thanks to Dependabot. ggregory
Update Bump org.codehaus.mojo:taglist-maven-plugin from 3.0.0 to 3.2.1 #161, #194. Thanks to Dependabot. ggregory
Remove Remove obsolete Apache RAT file. Thanks to Gary Gregory. ggregory
Remove Remove obsolete Apache Ant files. Thanks to Gary Gregory. ggregory
Remove Remove obsolete src/conf/MANIFEST.MF file. Thanks to Gary Gregory. ggregory
Remove Remove obsolete maven-surefire-plugin configuration. Configuration is done in the parent POM. Thanks to Gary Gregory. ggregory
Remove Remove obsolete maven-assembly-plugin configuration. Configuration is done in the parent POM. Thanks to Gary Gregory. ggregory
Remove Remove obsolete STATUS.html files. Thanks to Gary Gregory. ggregory
Remove Remove unused package-private class org.apache.commons.jxpath.util.BasicTypeConverter.ValueNodeSet. Thanks to Gary Gregory. ggregory