cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ralph Goers <Ralph.Go...@dslextreme.com>
Subject Re: RequestModule
Date Fri, 04 Jan 2008 23:33:43 GMT
I have fixed this and will be checking it in along with my other 
JXPathHelper and XPathXMLFileModule changes. The real problem here is 
that the Introspector uses an IndexedPropertyDescriptor whenever a 
getter exists with an int parameter. It thinks the int is an index into 
an array. So the scope on getAttributeNames was confusing the heck out 
of it.

Ralph

Ralph Goers wrote:
> I'm trying to test the change to JXPathHelper and have run into 
> problems on the RequestModule sample. It fails in JXPath trying to 
> process the attributeNames. The problem occurs because the 
> attributeNames member of ReqeustWrapper is represented by an 
> IndexedPropertyDescriptor instead of a PropertyDescriptor. When JXPath 
> calls ValueUtils.getValue() it fails because the getReadMethod call 
> returns null. This is because it is returned in getIndexedReadMethod 
> instead.
>
> This does not happen in BRANCH_2_1_X where attributeNames is 
> represented by a PropertyDescriptor.
>
> I believe this is happening because in trunk getAttributeNames is now 
> overloaded where it wasn't in 2.1.x. The only way I can think of to 
> fix this is to leave getAttributeNames() as is (returning the 
> attribute names that are of global scope) and replace 
> getAttributeNames(int scope) with getLocalAttributeNames() and have it 
> only return the local attribute names.
>
> Any other ideas?
>
> Ralph

Mime
View raw message