Perform caching per request












0















My SpringBoot Rest Service makes an external webservice call to get a boolean value based on which subsequent events in the flow are performed. I make this call multiple times per request. However I want this call to be performed only one time per request. If I use @Cacheable annotation , it gets cached for subsequent requests as well. Is there a way to use Cacheable per request or any other mechanism in Spring to Cache the value in memory per request?



This is now resolved. I used the below -



@Scope(value = WebApplicationContext.SCOPE_REQUEST, proxyMode = ScopedProxyMode.TARGET_CLASS)









share|improve this question

























  • Related to this? stackoverflow.com/questions/14737553/…

    – Sheetal Mohan Sharma
    Nov 21 '18 at 16:47











  • Thanks @SheetalMohanSharma. I set the scope to "Request" instead and I was able to achieve what I was requesting

    – Punter Vicky
    Nov 21 '18 at 17:09











  • @PunterVicky please, write an answer about SCOPE_REQUEST and mark it as right answer.

    – Aleksandr Semyannikov
    Nov 22 '18 at 4:59













  • Sure @AleksandrSemyannikov

    – Punter Vicky
    Nov 22 '18 at 11:56
















0















My SpringBoot Rest Service makes an external webservice call to get a boolean value based on which subsequent events in the flow are performed. I make this call multiple times per request. However I want this call to be performed only one time per request. If I use @Cacheable annotation , it gets cached for subsequent requests as well. Is there a way to use Cacheable per request or any other mechanism in Spring to Cache the value in memory per request?



This is now resolved. I used the below -



@Scope(value = WebApplicationContext.SCOPE_REQUEST, proxyMode = ScopedProxyMode.TARGET_CLASS)









share|improve this question

























  • Related to this? stackoverflow.com/questions/14737553/…

    – Sheetal Mohan Sharma
    Nov 21 '18 at 16:47











  • Thanks @SheetalMohanSharma. I set the scope to "Request" instead and I was able to achieve what I was requesting

    – Punter Vicky
    Nov 21 '18 at 17:09











  • @PunterVicky please, write an answer about SCOPE_REQUEST and mark it as right answer.

    – Aleksandr Semyannikov
    Nov 22 '18 at 4:59













  • Sure @AleksandrSemyannikov

    – Punter Vicky
    Nov 22 '18 at 11:56














0












0








0


1






My SpringBoot Rest Service makes an external webservice call to get a boolean value based on which subsequent events in the flow are performed. I make this call multiple times per request. However I want this call to be performed only one time per request. If I use @Cacheable annotation , it gets cached for subsequent requests as well. Is there a way to use Cacheable per request or any other mechanism in Spring to Cache the value in memory per request?



This is now resolved. I used the below -



@Scope(value = WebApplicationContext.SCOPE_REQUEST, proxyMode = ScopedProxyMode.TARGET_CLASS)









share|improve this question
















My SpringBoot Rest Service makes an external webservice call to get a boolean value based on which subsequent events in the flow are performed. I make this call multiple times per request. However I want this call to be performed only one time per request. If I use @Cacheable annotation , it gets cached for subsequent requests as well. Is there a way to use Cacheable per request or any other mechanism in Spring to Cache the value in memory per request?



This is now resolved. I used the below -



@Scope(value = WebApplicationContext.SCOPE_REQUEST, proxyMode = ScopedProxyMode.TARGET_CLASS)






java spring spring-boot






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 21 '18 at 17:10







Punter Vicky

















asked Nov 21 '18 at 16:39









Punter VickyPunter Vicky

3,8012078138




3,8012078138













  • Related to this? stackoverflow.com/questions/14737553/…

    – Sheetal Mohan Sharma
    Nov 21 '18 at 16:47











  • Thanks @SheetalMohanSharma. I set the scope to "Request" instead and I was able to achieve what I was requesting

    – Punter Vicky
    Nov 21 '18 at 17:09











  • @PunterVicky please, write an answer about SCOPE_REQUEST and mark it as right answer.

    – Aleksandr Semyannikov
    Nov 22 '18 at 4:59













  • Sure @AleksandrSemyannikov

    – Punter Vicky
    Nov 22 '18 at 11:56



















  • Related to this? stackoverflow.com/questions/14737553/…

    – Sheetal Mohan Sharma
    Nov 21 '18 at 16:47











  • Thanks @SheetalMohanSharma. I set the scope to "Request" instead and I was able to achieve what I was requesting

    – Punter Vicky
    Nov 21 '18 at 17:09











  • @PunterVicky please, write an answer about SCOPE_REQUEST and mark it as right answer.

    – Aleksandr Semyannikov
    Nov 22 '18 at 4:59













  • Sure @AleksandrSemyannikov

    – Punter Vicky
    Nov 22 '18 at 11:56

















Related to this? stackoverflow.com/questions/14737553/…

– Sheetal Mohan Sharma
Nov 21 '18 at 16:47





Related to this? stackoverflow.com/questions/14737553/…

– Sheetal Mohan Sharma
Nov 21 '18 at 16:47













Thanks @SheetalMohanSharma. I set the scope to "Request" instead and I was able to achieve what I was requesting

– Punter Vicky
Nov 21 '18 at 17:09





Thanks @SheetalMohanSharma. I set the scope to "Request" instead and I was able to achieve what I was requesting

– Punter Vicky
Nov 21 '18 at 17:09













@PunterVicky please, write an answer about SCOPE_REQUEST and mark it as right answer.

– Aleksandr Semyannikov
Nov 22 '18 at 4:59







@PunterVicky please, write an answer about SCOPE_REQUEST and mark it as right answer.

– Aleksandr Semyannikov
Nov 22 '18 at 4:59















Sure @AleksandrSemyannikov

– Punter Vicky
Nov 22 '18 at 11:56





Sure @AleksandrSemyannikov

– Punter Vicky
Nov 22 '18 at 11:56












0






active

oldest

votes











Your Answer






StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");

StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53416743%2fperform-caching-per-request%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























0






active

oldest

votes








0






active

oldest

votes









active

oldest

votes






active

oldest

votes
















draft saved

draft discarded




















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53416743%2fperform-caching-per-request%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

MongoDB - Not Authorized To Execute Command

in spring boot 2.1 many test slices are not allowed anymore due to multiple @BootstrapWith

Npm cannot find a required file even through it is in the searched directory