Writing a native ancestor iterator didn't help me much, so I switched the profile on. Here's an excerpt of the top number of function calls in my application:
count callee caller time 241550 java/util/ArrayList.RangeCheck(I)V java/util/ArrayList.get(I)Ljava/lang/Object; 0 232769 org/jaxen/dom/DocumentNavigator$NodeIterator.hasNext()Z org/jaxen/expr/DefaultLocationPath.evaluate(Lorg/jaxen/Context;)Ljava/lang/Object; 0 222591 org/apache/xerces/dom/ChildNode.getNextSibling()Lorg/w3c/dom/Node; org/jaxen/dom/DocumentNavigator$1.getNextNode(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node; 0 222588 org/jaxen/dom/DocumentNavigator$1.getNextNode(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node; org/jaxen/dom/DocumentNavigator$NodeIterator.next()Ljava/lang/Object; 0 179553 org/jaxen/expr/DefaultNameStep.matches(Ljava/lang/Object;Lorg/jaxen/ContextSupport;)Z org/jaxen/expr/DefaultLocationPath.evaluate(Lorg/jaxen/Context;)Ljava/lang/Object; 0 do we really need a range-checked ArrayList in all the classes? What will happen if I change all the new ArrayList() calls to new Vector() instead ? (Vector implements the List interface). Any concerns? Christian _______________________________________________ Jaxen-interest mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jaxen-interest