jsf 2 - OmniFaces UnmappedResourceHandler seems to leak resources when composite components are used -


it seems unmappedresourcehandler loading composite components xhtml files within resources folder. result seems gradually increasing memory leak.

the leak can found within faceletviewhandlingstrategy.metadatacache. relies on hashmap , when above handler used unmappedresources used key compositecomponentbeaninfo instances.

if unmappedresourcehandler isn't used, key contains resourceimpl. difference unmappedresource not implement equals() resourceimpl does:

@override public boolean equals(object o) {     if (this == o) {         return true;     }     if (o == null || getclass() != o.getclass()) {         return false;     }      resourceimpl resource = (resourceimpl) o;     return resourceinfo.equals(resource.resourceinfo); } 

so problem seems in first case compositecomponentbeaninfo added again , again metadatacache. in second works expected.

anyone else can confirm issue?

unmappedresourcehandler memory leak on composite components confirmed , has been solved this commit 2.1, this commit 1.11 , this commit 1.8.3.

all versions of today available in maven.


Comments