Using @Autowired HttpServletRequest request object in a Static Method
up vote
0
down vote
favorite
I have a requirement - where we use the HttpServletRequest request object to set the UserSession Details in this Object.
The UserSession are required to be fetched at various point in the Spring Application as per need and to access this, I Autowired the HttpServletRequest object. I used in multiple locations and it worked like a charm.
But the problem is, when I tried to use it in a Static contect, this request object throws compilation error "non-static variable . . . cannot be referenced from a static context" .
So, when I tried to make the HttpServletRequest as static, this turns out to be null. I am not sure why this happens and require a suitable solution to use in the static methods.
POJO Class
public class POJOClass{
@Autowired
private HttpServletRequest request;
public static String getData(){
UserObject uObj = UtilService.getUser(request);
//Throws Compilation error for request object.
}
*Here UtilService is the class defined from which the UserSession is fetched.
java spring
add a comment |
up vote
0
down vote
favorite
I have a requirement - where we use the HttpServletRequest request object to set the UserSession Details in this Object.
The UserSession are required to be fetched at various point in the Spring Application as per need and to access this, I Autowired the HttpServletRequest object. I used in multiple locations and it worked like a charm.
But the problem is, when I tried to use it in a Static contect, this request object throws compilation error "non-static variable . . . cannot be referenced from a static context" .
So, when I tried to make the HttpServletRequest as static, this turns out to be null. I am not sure why this happens and require a suitable solution to use in the static methods.
POJO Class
public class POJOClass{
@Autowired
private HttpServletRequest request;
public static String getData(){
UserObject uObj = UtilService.getUser(request);
//Throws Compilation error for request object.
}
*Here UtilService is the class defined from which the UserSession is fetched.
java spring
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I have a requirement - where we use the HttpServletRequest request object to set the UserSession Details in this Object.
The UserSession are required to be fetched at various point in the Spring Application as per need and to access this, I Autowired the HttpServletRequest object. I used in multiple locations and it worked like a charm.
But the problem is, when I tried to use it in a Static contect, this request object throws compilation error "non-static variable . . . cannot be referenced from a static context" .
So, when I tried to make the HttpServletRequest as static, this turns out to be null. I am not sure why this happens and require a suitable solution to use in the static methods.
POJO Class
public class POJOClass{
@Autowired
private HttpServletRequest request;
public static String getData(){
UserObject uObj = UtilService.getUser(request);
//Throws Compilation error for request object.
}
*Here UtilService is the class defined from which the UserSession is fetched.
java spring
I have a requirement - where we use the HttpServletRequest request object to set the UserSession Details in this Object.
The UserSession are required to be fetched at various point in the Spring Application as per need and to access this, I Autowired the HttpServletRequest object. I used in multiple locations and it worked like a charm.
But the problem is, when I tried to use it in a Static contect, this request object throws compilation error "non-static variable . . . cannot be referenced from a static context" .
So, when I tried to make the HttpServletRequest as static, this turns out to be null. I am not sure why this happens and require a suitable solution to use in the static methods.
POJO Class
public class POJOClass{
@Autowired
private HttpServletRequest request;
public static String getData(){
UserObject uObj = UtilService.getUser(request);
//Throws Compilation error for request object.
}
*Here UtilService is the class defined from which the UserSession is fetched.
java spring
java spring
asked Nov 22 at 5:22
Ashfaque Rifaye
3471412
3471412
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
up vote
1
down vote
You should manage your utility class in Spring, follow How to Autowire bean in a static class by adding static Initializer which will add using Configuration
your class:
@Component
public class
StaticContextInitializer {
@Autowired
private MyConfig myConfig;
@Autowired
private ApplicationContext context;
@PostConstruct
public void init() {
StaticUtils.setMyConfig(myConfig);
}
}
add a comment |
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',
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
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53424355%2fusing-autowired-httpservletrequest-request-object-in-a-static-method%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
1
down vote
You should manage your utility class in Spring, follow How to Autowire bean in a static class by adding static Initializer which will add using Configuration
your class:
@Component
public class
StaticContextInitializer {
@Autowired
private MyConfig myConfig;
@Autowired
private ApplicationContext context;
@PostConstruct
public void init() {
StaticUtils.setMyConfig(myConfig);
}
}
add a comment |
up vote
1
down vote
You should manage your utility class in Spring, follow How to Autowire bean in a static class by adding static Initializer which will add using Configuration
your class:
@Component
public class
StaticContextInitializer {
@Autowired
private MyConfig myConfig;
@Autowired
private ApplicationContext context;
@PostConstruct
public void init() {
StaticUtils.setMyConfig(myConfig);
}
}
add a comment |
up vote
1
down vote
up vote
1
down vote
You should manage your utility class in Spring, follow How to Autowire bean in a static class by adding static Initializer which will add using Configuration
your class:
@Component
public class
StaticContextInitializer {
@Autowired
private MyConfig myConfig;
@Autowired
private ApplicationContext context;
@PostConstruct
public void init() {
StaticUtils.setMyConfig(myConfig);
}
}
You should manage your utility class in Spring, follow How to Autowire bean in a static class by adding static Initializer which will add using Configuration
your class:
@Component
public class
StaticContextInitializer {
@Autowired
private MyConfig myConfig;
@Autowired
private ApplicationContext context;
@PostConstruct
public void init() {
StaticUtils.setMyConfig(myConfig);
}
}
edited Nov 22 at 5:57
answered Nov 22 at 5:31
user7294900
19.8k93257
19.8k93257
add a comment |
add a comment |
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.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- 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.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53424355%2fusing-autowired-httpservletrequest-request-object-in-a-static-method%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
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