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
Post a Comment