2012-11-13 15 views
9

में रजिस्टरShutdownHook() का उपयोग कर मैं इस ट्यूटोरियल को ऑनलाइन पत्र का पालन कर रहा हूं। http://www.tutorialspoint.com/spring/spring_bean_life_cycle.htmस्प्रिंग फ्रेमवर्क

लेकिन जब मैं इस लाइन के लिए मिलता है मैं त्रुटियों ग्रहण का उपयोग करते समय मिलता है:() context.registerShutdownHook;

ग्रहण कहते हैं:

"इस लाइन पर एकाधिक मार्करों - सिंटेक्स त्रुटि, सम्मिलित" AssignmentOperator अभिव्यक्ति " असाइनमेंट पूरा करने के लिए -, सिंटेक्स त्रुटि डालने", "वक्तव्य पूरा करने के लिए - विधि registerShutdownHook() एप्लिकेशन कॉन्टेक्स्ट के लिए अपरिभाषित है "

मैं इस ट्यूटोरियल का बिल्कुल सही अनुसरण कर रहा हूं। मेरे सभी परिवर्तनीय नाम बिल्कुल वही हैं। मेरा कोड बिल्कुल उसके जैसा ही है। मुझे यकीन नहीं है कि क्या गलत है।

मैं क्या गलत कर रहा हूं, इसे ठीक करने के लिए क्या किया जा सकता है ताकि मैं ट्यूटोरियल जारी रख सकूं।

package com.tutorialspoint; 

import org.springframework.context.support.AbstractApplicationContext; 
import org.springframework.context.support.ClassPathXmlApplicationContext; 

public class MainApp 
{ 
    public static void main(String[] args) 
    { 
     AbstractApplicationContext context = new ClassPathXmlApplicationContext("Beans.xml"); 

     HelloWorld obj = (HelloWorld)context.getBean("helloWorld"); 
     obj.getMessage(); 
     context.registerShutdownHook(); 
    } 
} 
+1

क्या आप अपना कोड स्निपेट पोस्ट कर सकते हैं? – Ankur

+0

'कोड' पैकेज com.tutorialspoint; आयात org.springframework.context.AplicationContext; आयात org.springframework.context.support.ClassPathXmlAplicationContext; सार्वजनिक वर्ग MainApp { \t public static void (String [] args) \t { \t \t ApplicationContext संदर्भ = \t \t \t \t नई ClassPathXmlApplicationContext ("बीन्स।एक्सएमएल "); \t \t \t \t \t \t HelloWorld obj = (HelloWorld) context.getBean (" HelloWorld "); \t \t obj.getMessage(); \t \t context.registerShutdownHook(); \t \t \t} \t \t \t \t } 'कोड' –

+0

जैसा कि मैंने कहा था कि आप' AppCAplicationContext' – Ankur

उत्तर

20

त्रुटि के लिए ऐसा लगता है कि संदर्भ, ApplicationContext की एक वस्तु है, जबकि ट्यूटोरियल में यह AbstractApplicationContext

मैं सिर्फ अनुमान लगा रहा हूँ कि आप इस

public class MainApp { 
    public static void main(String[] args) { 

     ApplicationContext context = 
          new ClassPathXmlApplicationContext("Beans.xml");//error here 

     HelloWorld obj = (HelloWorld) context.getBean("helloWorld"); 
     obj.getMessage(); 
     context.registerShutdownHook(); 
    } 
} 
+0

ठीक है AbastAplicationContext का उपयोग करने के लिए आयात की आवश्यकता है? अभी यह मुझे बता रहा है कि इसे किसी प्रकार से हल नहीं किया जा सकता है। –

+0

अगर आप ग्रहण का उपयोग कर रहे हैं, या 'import org.springframework.context.support.AbstractApplicationContext' – Ankur

+0

बहुत धन्यवाद तो यह काम करता है =) –

0

यहां कोड है जो मेरे लिए काम करता है।

package arjun; 

import org.springframework.beans.factory.BeanFactory; 
import org.springframework.beans.factory.xml.XmlBeanFactory; 
import org.springframework.context.ApplicationContext; 
import org.springframework.context.support.AbstractApplicationContext; 
import org.springframework.context.support.ClassPathXmlApplicationContext; 
import org.springframework.core.io.ClassPathResource; 
import org.springframework.core.io.FileSystemResource; 

public class Main { 

    public static void main(String[] args) { 

       AbstractApplicationContext context= new ClassPathXmlApplicationContext("spring.xml"); 
       context.registerShutdownHook(); 
       Triangle triangle=(Triangle) context.getBean("triangle"); 
       triangle.draw(); 
    } 

} 
0

// इस लाइन का उपयोग करें,

((AbstractApplicationContext) ctx) .registerShutdownHook();

0

यहाँ एक अद्यतन समाधान है:

import org.springframework.context.support.AbstractApplicationContext; 

((AbstractApplicationContext) appContext).registerShutdownHook(); 
1

मैं भी यही मुद्दा मिल गया। मैंने इसे इस तरह से हल किया।

public static void main(String[] args) { 
    ApplicationContext context = new ClassPathXmlApplicationContext("Bean.xml"); 
    HelloWorld obj =(HelloWorld)context.getBean("helloWorld"); 
    obj.getMessage(); 
    ((AbstractApplicationContext) context).registerShutdownHook(); 
} 
+0

आयात करना न भूलें (आयात करें org.springframework.context.support.AbstractAplicationContext;) – Susampath

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