Hi all, I've been looking at the work that occurs for OMElement.getText() which is currently used by the Axis2 addressing handlers to extract the (text) values of certain headers (wsa:To, wsa:Action, wsa:MessageID).
I've noticed that this delegates to OMTextImpl.getText() which then does some fancy processing to identify QNames and expand prefix:localname to namespace:localname The values in these headers are generally http or urn URIs, hence getText() finds the ":" and looks for an associated namespace. This leads to a couple of concerns 1. The value returned may not be what we're looking for if an xmlns:http="" or xmlns:urn="" is in scope. This is a very real problem. 2. In the 99% case where not such declarations are in scope, the string is being indexOf()'d and a lookup done when there is probably nothing to find. It appears that I could access the value directly by calling OMText.getTextCharacters()? However, I'd then have to replicate the code in OMElement to find the OMText node which I'd prefer not to do. Would the Axiom team consider adding a char[] getTextCharacters() or String getActualText() to OMElement? Cheers, David -- David Illsley - IBM Web Services Development --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
