gpt4 book ai didi

java - 创建名称为 'controllerx' : 的 bean 时出错

转载 作者:行者123 更新时间:2023-12-02 02:13:22 24 4
gpt4 key购买 nike

我的 Controller :

package com.market;

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




@Controller
public class Controllerx {

@Autowired
private View frame;


/*
private void init() {
this.frame.addWindowListener(this);
registerAction(frame.getbEnter(), new AbstractAction() {
private List<Funcionarios> list;

@Override
public void action() {
if (!frame.getjLogin().getText().trim().isEmpty() || !frame.getjPassword().getText().trim().isEmpty()) {

}else {
JOptionPane.showMessageDialog(frame, null, "Campo vázio", JOptionPane.INFORMATION_MESSAGE);
}
}

@Override
public void posAction() {
cleanUp();
}
});
}
*/
public void show() {
frame.setVisible(true);
}


}

我的主要:

@SpringBootApplication
@EnableAutoConfiguration
public class Market1Application {

public static void main(String[] args) {
ConfigurableApplicationContext context = new SpringApplicationBuilder(Market1Application.class).headless(false).run(args);
Controllerx appLogin = context.getBean(Controllerx.class);
}

}

我的观点:

package com.market;

import java.awt.FlowLayout;
import java.awt.GridLayout;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;

import org.springframework.stereotype.Component;


@Component
public class View extends JFrame{

private static final int FRAME_WIDTH = 400;
static final int FRAME_HEIGHT = 350;
static final int FRAME_X_ORIGIN = 150;
static final int FRAME_Y_ORIGIN = 150;
static final int BUTTON_WIDTH = 90;
static final int BUTTON_HEIGHT = 30;
private JTextField jLogin;
private JTextField jPassword;
private JButton bEnter;
private JButton bRegister;
private JPanel loginForm;
private JLabel loginText;
private JLabel passwordText;

public View() {
setTitle("Login System");
setSize (FRAME_WIDTH, FRAME_HEIGHT);
setLocation (FRAME_X_ORIGIN, FRAME_Y_ORIGIN);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new FlowLayout());
setResizable(false);
initComponents();
}
private void initComponents() {
loginForm = new JPanel(new GridLayout(3,1));
//buttons
bRegister = new JButton("Registrar");
bRegister.setBounds(195, 285, BUTTON_WIDTH, BUTTON_HEIGHT);
bEnter = new JButton("Registrar");
bEnter.setBounds(195, 285, BUTTON_WIDTH, BUTTON_HEIGHT);
//bEnter.setMnemonic(NativeKeyEvent.VC_ENTER);
//labels
loginText = new JLabel();
loginText.setText("Username:");
passwordText = new JLabel();
passwordText.setText("Password:");
//
loginForm.add(loginText);
loginForm.add(jLogin);
loginForm.add(passwordText);
loginForm.add(jPassword);
loginForm.add(bEnter);
loginForm.add(bRegister);
setVisible(true);
}

public void resetForm() {
jLogin.setText("");
jPassword.setText("");
}
public JTextField getjLogin() {
return jLogin;
}
public void setjLogin(JTextField jLogin) {
this.jLogin = jLogin;
}
public JTextField getjPassword() {
return jPassword;
}
public void setjPassword(JTextField jPassword) {
this.jPassword = jPassword;
}
public JButton getbEnter() {
return bEnter;
}
public void setbEnter(JButton bEnter) {
this.bEnter = bEnter;
}

}

我编译时遇到这些错误,我不知道哪里出错了,我只有这 3 个类

Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled. ERROR o.s.boot.SpringApplication - Application run failed org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'controllerx': Unsatisfied dependency expressed through field 'frame'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'view' defined in file [C:\Users\Gabriel\eclipse-workspace\gabrielestudo\market-1\target\classes\com\market\View.class]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.market.View]: Constructor threw exception; nested exception is java.lang.NullPointerException at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:596) at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:90) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:374) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1411) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:592) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:515) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:320) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:318) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:845) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:877) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:549) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:742) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:389) at org.springframework.boot.SpringApplication.run(SpringApplication.java:311) at org.springframework.boot.builder.SpringApplicationBuilder.run(SpringApplicationBuilder.java:139) at com.market.Market1Application.main(Market1Application.java:16) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49) Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'view' defined in file [C:\Users\Gabriel\eclipse-workspace\gabrielestudo\market-1\target\classes\com\market\View.class]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.market.View]: Constructor threw exception; nested exception is java.lang.NullPointerException at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1303) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1197) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:555) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:515) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:320) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:318) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:277) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1251) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1171) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:593) ... 22 common frames omitted Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.market.View]: Constructor threw exception; nested exception is java.lang.NullPointerException at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:184) at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:87) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1295) ... 33 common frames omitted Caused by: java.lang.NullPointerException: null at java.awt.Container.addImpl(Unknown Source) at java.awt.Container.add(Unknown Source) at com.market.View.initComponents(View.java:56) at com.market.View.(View.java:39) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) at java.lang.reflect.Constructor.newInstance(Unknown Source) at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:172) ... 35 common frames omitted

最佳答案

您的名为 jLoginJTextField 变量为 null(它是字段,您没有初始化它),这就是您在执行操作时出现 NPE 的原因

loginForm.add(jLogin);

看看 documentation JPanel 类的 - add 方法部分中有一条信息

public Component add(Component comp)

Throws: NullPointerException - if comp is null

在添加jPassword期间,您至少会在第58行遇到相同的问题

<小时/>

顺便说一句,您应该仔细阅读日志,因为一切都在那里

Caused by: java.lang.NullPointerException: null

at java.awt.Container.addImpl(Unknown Source)

at java.awt.Container.add(Unknown Source)

at com.market.View.initComponents(View.java:56)

at com.market.View.(View.java:39) at

关于java - 创建名称为 'controllerx' : 的 bean 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57316646/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com