web services - Set Jackson DeserializationContext Attribute in per-request, thread-safe manner -


i'm looking able add request-scoped attribute (a jax-rs containerrequestcontext because rather use jackson convert parameters objects jax-rs's ill conceived , clunky parameterconverterproviders) deserializationcontext can obtained within jsondeserializer. must call convertvalue() rather readvalue() (not dealing actual json) not able create objectreader in each thread unless willing serialize map json string first , read -which incredibly inefficient.

i'd able accomplishes following in per request manner:

objectmapper om = new objectmapper();  //in request-scoped context: om.getdeserializationcontext().setattribute("requestcontext",containerrequestcontext) map<string,object> mapofrequestparameters = ...  beanofvastimportance bean = om.convertvalue(mapofrequestparameters,beanofvastimportance.class) 

how can achieve without massive, superfluous overhead of needing create new objectmapper each individual request thread?

this can achieved by:

objectmapper.reader().fortype(request.class).withattribute("key", "value").readvalue("source")


Comments

Popular posts from this blog

wordpress - (T_ENDFOREACH) php error -

Export Excel workseet into txt file using vba - (text and numbers with formulas) -

Using django-mptt to get only the categories that have items -