当前位置: 首页 > 知识库问答 >
问题:

将Spring MVC应用程序转换为Spring Boot-BeanCurrentlyIncreationException问题

余铭晨
2023-03-14

我有一个Spring MVC应用程序,使用Hibernate进行实体持久性管理。我可以在一些应用服务器上构建、部署和运行它,比如glashfish或tomcat,一切都很好。

现在,我想把它转换成一个Spring Boot应用程序。我添加了以下类:

@SpringBootApplication
public class Application extends SpringBootServletInitializer {

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(Application.class);
    }

    public static void main(String[] args) {
        ConfigurableApplicationContext context = 
                            SpringApplication.run(Application.class, args);
    }
}
BeanCurrentlyInCreationException: Error creating bean with name
'MyClassDAO': Bean with name 'MyClassDAO' has been injected into 
other beans [MyOtherClassDAO] in its raw version as part of a circular
reference, but has eventually been wrapped. This means that said other
beans do not use the final version of the bean. This is often the result
of over-eager type matching - consider using 'getBeanNamesOfType' with 
the 'allowEagerInit' flag turned off, for example.

我不知道如何使用'get BeannamesofType'并关闭allowEagerInit(我不使用XML配置)。当然,我不确定这能解决我的问题。

有什么办法能解决这个问题吗?

共有1个答案

郁承运
2023-03-14

如果真的是一些内部化问题,那么我相信您必须将您的类放在其他包中,并且由于一些缓存问题,它不包括要在容器中扫描的类路径中的那些类,所以要手动执行此操作,您可以在@SpringBootaPllication是@EnableComponentScan(“输入未初始化的类的包名”)下面放置一个注释,也可以在dao类上放置@Service或@Component注释,以便应用程序将其包含在容器中

 类似资料:
  • 我试图在SpringMVC中运行SpringBoot应用程序,在SpringMVCPOM中添加SpringBoot应用程序依赖项,并扫描SpringBoot包,但我面临以下问题

  • 问题内容: 是否可以将Java应用程序转换为Mac OS X可执行应用程序? 我使用NetBeans进行Java开发,我想将“ dist”文件夹“打包”到应用程序中(为方便起见) 问题答案: 使用Apple Java扩展及其指南 在苹果Java扩展包含的信息非常完整的开发指南的Java应用程序在Mac OS X上部署 和生产应用捆绑。它还介绍了Apple Java扩展的其他方面,例如对与标准Mac

  • 我已经配置并运行了基于Spring的REST应用程序,但现在我想将其转换为Spring-Boot。 我的应用程序在带有Hibernate提供程序的JPA数据源之上使用Spring-Data-JPA: 我的RESTendpoint使用SpringMVC实现,配置如下: 此外,我尝试从application类中丢弃@EnableAutoConfiguration注释,并手动将bean添加到上下文中,但

  • 我正在开发一个很久以前创建的应用程序(可能是2008/2009)。现在我得到了升级服务器的任务。以前它是在jdk1.4中编译的。现在我必须使应用程序与jdk2.7兼容。我试图用jre7编译它,并且我已经更改了ant build的源代码和目标值。xml文件到。而且在ANT构建中,jre7被选为编译器环境。我收到以下错误消息: 我尝试使用以下行打印java版本: 它显示: [echo]使用Java版本

  • 问题内容: 我发现了很多互联网告诉你如何在教程 建立 一个 新的 与AngularJS科尔多瓦的应用程序,这很好。 但是,如果我的AngularJS网络应用程序还可以正常运行并且又想从中创建一个移动应用程序(Android / IOS),该怎么办?这可能/可行/明智吗? 如果是,您可以提供一些建议,还是指向一些记录此任务的现有资源? 问题答案: 正如dmahapatro所说,将AngularJS应

  • 问题内容: 我有Java swing应用程序。我想转换为基于Web的应用程序。最简单的方法是什么?有没有可用的工具,最好是开放源代码? 问题答案: AjaxSwing是一种运行时工具,需要用于商业用途的服务器许可证。 您可能要尝试Mia Transformer-该网站的部分内容为法语-。他们将Swing Java代码更改为GWT Java代码,然后GWT将其更改为Javascript,然后,如果您