Java 弹簧故障摆动

Java 弹簧故障摆动,java,spring,swing,autowired,Java,Spring,Swing,Autowired,我试图在SpringWebMVC项目中的Swing应用程序中使用@Autowired语句。我只是将其作为Java应用程序运行 import javax.mail.MessagingException; import javax.swing.*; import org.springframework.beans.factory.annotation.Autowired; import net.babobka.blog.headHunter.Converter; import java.awt

我试图在SpringWebMVC项目中的Swing应用程序中使用
@Autowired
语句。我只是将其作为Java应用程序运行

import javax.mail.MessagingException;
import javax.swing.*;

import org.springframework.beans.factory.annotation.Autowired;

import net.babobka.blog.headHunter.Converter;

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.List;

public class MainFrame implements ActionListener {
    @Autowired
    private Converter converter;    
    JFrame jfrm = new JFrame("Project backup system");
    JButton startButton = new JButton("Start"),
            stopButton = new JButton("Stop");
    JLabel statusLab = new JLabel();
    BackupThread bt;

    MainFrame() {
        int eur = (int) converter.getRate("EUR", "RUB");//This is MainFrame.java:29
        jfrm.setLayout(new FlowLayout());
        startButton.addActionListener(this);
        stopButton.addActionListener(this);
        jfrm.setSize(275, 100);
        jfrm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        jfrm.add(startButton);
        jfrm.add(stopButton);
        jfrm.add(statusLab);
        jfrm.setVisible(true);
    }...
但是
NullPointerException
是我所拥有的一切。接线有什么问题? 完整跟踪:

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
    at net.babobka.blog.app.MainFrame.<init>(MainFrame.java:29)
    at net.babobka.blog.app.MainFrame$1.run(MainFrame.java:60)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:727)
    at java.awt.EventQueue.access$200(EventQueue.java:103)
    at java.awt.EventQueue$3.run(EventQueue.java:688)
    at java.awt.EventQueue$3.run(EventQueue.java:686)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:697)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)

属性是在构造之后设置的。尝试将init代码从Ctor移动到初始化方法

比如说

public class MainFrame() {

    public MainFrame() {}

    @PostConstruct
    public void init() {
        int eur = (int) converter.getRate("EUR", "RUB");
        ....
   }
}

属性是在构造之后设置的。尝试将init代码从Ctor移动到初始化方法

比如说

public class MainFrame() {

    public MainFrame() {}

    @PostConstruct
    public void init() {
        int eur = (int) converter.getRate("EUR", "RUB");
        ....
   }
}

属性是在构造之后设置的。尝试将init代码从Ctor移动到初始化方法

比如说

public class MainFrame() {

    public MainFrame() {}

    @PostConstruct
    public void init() {
        int eur = (int) converter.getRate("EUR", "RUB");
        ....
   }
}

属性是在构造之后设置的。尝试将init代码从Ctor移动到初始化方法

比如说

public class MainFrame() {

    public MainFrame() {}

    @PostConstruct
    public void init() {
        int eur = (int) converter.getRate("EUR", "RUB");
        ....
   }
}

哪一行是
MainFrame.java:29
inteur=(int)converter.getRate(“eur”,“RUB”)//这
转换器应该由弹簧注入吗?你能测试一下它是否在这样做吗?我自己从未调试过Spring,但肯定有办法做到这一点。它有合适的getter/setter方法吗?答案很简单
专用转换器没有初始化,在这里发布的代码中,原因非常清楚exception@mKorbel:我认为它没有那么简单,因为
@Autowired
注释指示Spring应该将有效对象注入转换器字段。但我们不知道他是如何配置或运行代码的,因此根据发布的信息很难看出哪里出了问题。哪一行是
MainFrame.java:29
int eur=(int)converter.getRate(“eur”,“RUB”)//这
转换器应该由弹簧注入吗?你能测试一下它是否在这样做吗?我自己从未调试过Spring,但肯定有办法做到这一点。它有合适的getter/setter方法吗?答案很简单
专用转换器没有初始化,在这里发布的代码中,原因非常清楚exception@mKorbel:我认为它没有那么简单,因为
@Autowired
注释指示Spring应该将有效对象注入转换器字段。但我们不知道他是如何配置或运行代码的,因此根据发布的信息很难看出哪里出了问题。哪一行是
MainFrame.java:29
int eur=(int)converter.getRate(“eur”,“RUB”)//这
转换器应该由弹簧注入吗?你能测试一下它是否在这样做吗?我自己从未调试过Spring,但肯定有办法做到这一点。它有合适的getter/setter方法吗?答案很简单
专用转换器没有初始化,在这里发布的代码中,原因非常清楚exception@mKorbel:我认为它没有那么简单,因为
@Autowired
注释指示Spring应该将有效对象注入转换器字段。但我们不知道他是如何配置或运行代码的,因此根据发布的信息很难看出哪里出了问题。哪一行是
MainFrame.java:29
int eur=(int)converter.getRate(“eur”,“RUB”)//这
转换器应该由弹簧注入吗?你能测试一下它是否在这样做吗?我自己从未调试过Spring,但肯定有办法做到这一点。它有合适的getter/setter方法吗?答案很简单
专用转换器没有初始化,在这里发布的代码中,原因非常清楚exception@mKorbel:我认为它没有那么简单,因为
@Autowired
注释指示Spring应该将有效对象注入转换器字段。但我们不知道他是如何配置或运行代码的,因此根据发布的信息很难看出哪里出了问题。