out of memory - Java - Orika 1.4.5 - OutOfMemoryException : PermGen Space -


i have problem orika 1.4.5 , permgen space.

indeed, i'm using a configurablemapper way :

 public class soapsearchprdvfreeslotsmapper extends configurablemapper { @override public void configure(mapperfactory mapperfactory) {     mapperfactory.registerclassmap(mapperfactory.classmap(prdvfreeslot.class, prdvwslisterdispotelv2filter.class)                 .field("typerdv", "wsldttyperdv")                 .field("motifid", "wsldtmotifid")                 .bydefault().toclassmap());     }     mapperfactory.registerclassmap(mapperfactory.classmap(prdvfreeslot.class, prdvwslisterdispotelv2.class)                 .field("typerdv", "wsldttyperdv")                 .field("motifid", "wsldtmotifid")                 .field("quantum", "wsldtactiviteidactivquantum")                 .field("activitejours", "wsldtactiviteidactivjours")                 .field("activiteheureferme", "wsldtactiviteidactivheureferme")                 .field("activiteheureouvert", "wsldtactiviteidactivheureouvert")                 .field("startdate", "disdate")                 .field("discapacity", "discapacite")                 .field("disreserve", "disreserve")                 .field("reservecc", "wsldtreservecc")                 .bydefault().toclassmap());     } }  @override public void configurefactorybuilder(defaultmapperfactory.builder builder) {     builder.build().getconverterfactory().registerconverter(new datexmldateconverter()); } 

}

but each time call mapper, have autogenerated class mappers stored in permgen.

i try use "existsregisteredmapper" of mapperfactory prevent class mappers auto-generation doesn't work:

public static <t, u> boolean existsregisteredmapperinfactory(mapperfactory mapperfactory, class<t> classsrc, class<u> classdest) {     return mapperfactory.existsregisteredmapper(typefactory.valueof(classsrc), typefactory.valueof(classdest), true); } 

and modified first code block:

if (!existsregisteredmapperinfactory(mapperfactory, prdvwslisterdispotelv2filter.class, prdvfreeslot.class)) {         mapperfactory.registerclassmap(mapperfactory.classmap(prdvfreeslot.class, prdvwslisterdispotelv2filter.class)                 .field("typerdv", "wsldttyperdv")                 .field("motifid", "wsldtmotifid")                 .bydefault().toclassmap());     } 

please, there way prevent class mappers autogeneration without rewriting mappers have ?

thanks help.

please make sure mapper singleton. don't need instantiate everytime.

you don't need verify if the mapper has been registered or not. generated once (per mapperfactory instance).

so make sure soapsearchprdvfreeslotsmapper singleton (only 1 instance, configurablemapper thread-safe)


Comments

Popular posts from this blog

javascript - jQuery: Add class depending on URL in the best way -

caching - How to check if a url path exists in the service worker cache -

Redirect to a HTTPS version using .htaccess -