मैं अपने ऐप में लोड टाइम बुनाई के साथ स्प्रिंग फ्रेमवर्क (2.5.4) का उपयोग कर रहा हूं और सबकुछ ठीक से काम करता है (स्प्रिंग बीन्स में, गैर स्प्रिंग इकाइयों में), सिवाय इसके कि जब मैं क्षेत्र में ऑटोवायर करने की कोशिश करता हूं एक सर्वलेट @Configurable के रूप में उसकी व्याख्या, तो मैं एक अच्छा NullPointerException मिलता है ...स्प्रिंग @ सर्वलेट में Servlet
@Configurable(dependencyCheck=true)
public class CaptchaServlet extends HttpServlet{
@Autowired
private CaptchaServiceIface captchaService;
@Override
public void init(ServletConfig config) throws ServletException {
super.init(config);
// ApplicationContext ctx = WebApplicationContextUtils.getRequiredWebApplicationContext(config.getServletContext());
// captchaService = (CaptchaServiceIface) ctx.getBean("captchaService");
}
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
Captcha c = captchaService.getCatpcha();
req.getSession().setAttribute("captchaAnswer", c.getAnswer());
resp.setContentType("image/png");
ImageIO.write(c.getImage(), "png", resp.getOutputStream());
}
}
<context:load-time-weaver/>
<context:spring-configured/>
<context:component-scan base-package="cz.flexibla2" />
मैं गलत तरीके से क्या कर रहा हूँ के बारे में कोई सुझाव?
धन्यवाद।
मुझे यकीन नहीं है लेकिन यह हो सकता है कि सर्वलेट वर्ग सर्वलेट कंटेनर द्वारा लोड किया गया हो, न कि वसंत कंटेनर। –
@ abhin4v: लोड-टाइम बुनाई के पीछे विचार स्प्रिंग द्वारा न केवल कक्षा को लोड करने की अनुमति देना है। – skaffman
@malejpavouk, इस तरह के व्यवहार के लिए अंतिम समाधान क्या है, क्या आप इसे साझा कर सकते हैं? –