2011-12-08 8 views
21

मैं बीन कारखाने में कोई दृढ़ता अपवाद अनुवादक नहीं मिला। अपवाद अनुवाद नहीं जा सकता

2011-12-08/11 हाइबरनेट 4.0.0 के साथ स्प्रिंग फ्रेमवर्क 3.1.0 RC1 की ओर पलायन CR7

के बाद अपवाद निम्न हो रही है: 48: 38.425/ईएसटी [थ्रेड-17 ] त्रुटि संदर्भ प्रारंभिक विफलता org.springframework.beans.factory.BeanCreationException: नाम 'org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor # 0' के साथ बीन बनाने में त्रुटि ServletContext संसाधन [/WEB-INF/applicationContext-hibernate.xml] में परिभाषित : बीन की शुरुआत विफल रही; नेस्टेड अपवाद java.lang.IleglegalStateException: बीन कारखाने में कोई दृढ़ता अपवाद अनुवादक नहीं मिला है। अपवाद अनुवाद नहीं कर सकता। org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean (AbstractAutowireCapableBeanFactory.java:530) org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean पर (AbstractAutowireCapableBeanFactory.java:459) org.springframework पर पर । beans.factory.support.AbstractBeanFactory $ 1.getObject (सार BeanFactory.java:294) org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton (DefaultSingletonBeanRegistry.java2525) org.springframework.beans.factory.support पर .bbbanFactory.doGetBean (AbstractBeanFactory.java991) org.springframework.beans.factory.support.AbstractBeanFactory.getBean (AbstractBeanFactory.java:197) org.springframework.context.support.AbstractApplica पर tionContext.registerBeanPostProcessors (AbstractApplicationContext.java:728) org.springframework.context.support.AbstractApplicationContext.refresh (AbstractApplicationContext.java:449) पर org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext पर (ContextLoader.java:381) org.springframework.web.context.ContextLoader.initWebApplicationContext (ContextLoader.java:283) org.springframework.web.context.ContextLoaderListener.contextInitialized पर (ContextLoaderListener.java:111) org.apache.catalina.core पर पर । StandardContext.listenerStart (StandardContext.java:4723) org.apache.catalina.core.StandardContext $ 1.call (StandardContext.javaOT226) org.apache.catalina.core.StandardContext $ 1.call (StandardContext.java: 5221)Java.util.concurrent.FutureTask $ Sync.innerRun (अज्ञात स्रोत) java.util.concurrent.FutureTask.run (अज्ञात स्रोत) java.util.concurrent पर। TreadPoolExecutor.runWorker (अज्ञात स्रोत) जावा पर .util.concurrent.ThreadPoolExecutor $ Worker.run (अज्ञात स्रोत) java.lang.hread.run (अज्ञात स्रोत) के कारण: java.lang.IllegalStateException: बीन कारखाने में कोई दृढ़ता अपवाद अनुवादक नहीं मिला। अपवाद अनुवाद नहीं कर सकता। पर org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.detectPersistenceExceptionTranslators (PersistenceExceptionTranslationInterceptor.java:142) org.springframework.dao.support.PersistenceExceptionTranslationInterceptor पर। (PersistenceExceptionTranslationInterceptor.java:79) org.springframework.dao.annotation.PersistenceExceptionTranslationAdvisor पर । (PersistenceExceptionTranslationAdvisor.java:70) org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor.setBeanFactory (PersistenceExceptionTranslationPostProcessor.java:103) पर org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeAwareMethods पर (AbstractAutowireCapableBeanFactory.java:1465) org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactor पर y.initializeBean (AbstractAutowireCapableBeanFactory.java:1433) org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean (AbstractAutowireCapableBeanFactory.java:5222) ...18 और

+0

करता PersistenceExceptionTranslationPostProcessor की आवश्यकता होती है किसी भी अन्य सेम से परिभाषित करने की। मैंने पहले कभी इसका इस्तेमाल नहीं किया है, लेकिन मुझे लगता है कि आपकी त्रुटि का कारण क्या है। – JustinKSU

+1

ऐसा लगता है, आपको [PersistenceExceptionTranslator] के व्युत्पन्नों में से एक को परिभाषित करने की आवश्यकता है (http://static.springsource.org/spring/docs/2.0.x/api/org/springframework/dao/support/PersistenceExceptionTranslator.html) में बीन विन्यास। – srkavin

उत्तर

25

और नई वसंत जावा विन्यास के साथ:

@Bean 
    public HibernateExceptionTranslator hibernateExceptionTranslator(){ 
     return new HibernateExceptionTranslator(); 
    } 
23

जैसा कि Skravin द्वारा उल्लिखित है, आपको HibernateExceptionTranslator कॉन्फ़िगर करना होगा। Hibernate 3 के लिए LocalSessionFactoryBeanPersistenceExceptionTranslator लागू करता है, लेकिन हाइबरनेट 4 के लिए कोई नहीं है।

+2

इसका अर्थ क्या है "हाइबरनेट एक्सेप्शन ट्रांस्लेटर को कॉन्फ़िगर करने के लिए"? मैं इस दस्तावेज़ का पालन करता हूं http://static.springsource.org/spring-data/data-jpa/docs/current/reference/html/ और इसका उल्लेख नहीं है? धन्यवाद। –

+1

बस अपने वसंत संदर्भ एक्सएमएल फ़ाइल में इस प्रकार का एक बीन घोषित करें। –

+1

लेकिन वास्तव में कैसे? <बीन आईडी = "हाइबरनेट एक्सेप्शन ट्रान्सलेटर"> स्पष्ट रूप से काम नहीं करता है। मुझे आश्चर्य है कि यह आधिकारिक ट्यूटोरियल में क्यों प्रलेखित नहीं है। धन्यवाद –

संबंधित मुद्दे