问题标签 [applicationcontext]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
526 浏览

spring - Spring分层上下文

我有以下问题:我正在尝试在现有的ear应用程序中实现 Spring(使用 Jboss 作为 App Server,使用 Hibernate 作为 ORM)。EAR 应用程序由war(基本上是几个简单的 servlet)、har(只有数据模型的休眠存档 - 作为类和相应的休眠映射文件 - 作为 xmls)、sar(只有一个解析类作为计划任务)组成。所以,我很感兴趣如何在战争(因为 servlet 正在从数据库中检索数据)和 sar(因为解析器正在“填充”数据库)中共享 har 存档的最终appContext。关于这一点, (war 和 sar)应该使用单例 SessionFactory bean这将在 har 的上下文中定义。代码示例或片段将不胜感激。

0 投票
1 回答
3024 浏览

multithreading - 使用spring进行多线程上下文初始化?

我有一个带有弹簧的传统 3 层应用程序。我的一个存储库需要 3 分钟以上的时间进行初始化,所以我考虑了一些多线程方法来加快整个过程 - 我认为我的依赖树中的大多数服务和控制器已经可以启动,所以只有少数必须等待最后一个存储库出现。

有没有最佳实践方法?

0 投票
5 回答
90710 浏览

java - 如何注入 ApplicationContext 本身

我想将一个ApplicationContext自身注入一个bean。

就像是

春天可以吗?

0 投票
3 回答
776 浏览

java - ApplicationContext 和 bean 检索

我正在阅读 Spring 文档,偶然发现了一段让我思考的文字。

您使用 getBean() 来检索 bean 的实例。ApplicationContext 接口还有一些其他方法用于检索 bean,但理想情况下,您的应用程序代码不应该使用它们。实际上,您的应用程序代码根本不应该调用 getBean() 方法,因此根本不依赖 Spring API。

好吧,我在我的 xml 文件中配置了 bean。但我仍然需要在需要时检索它们。如果没有 getBean() 方法,我怎么能做到这一点?解释得越详细越好。

0 投票
3 回答
13536 浏览

spring - Spring事务上下文不持久化数据

我知道我的问题是一个常见问题,但是我在这里检查了很多问题,检查了 Spring 文档,我真的不知道我做错了什么。我的问题:我有一个使用 JPA 的 Spring WebFlow 项目(实现:OpenJPA + MySQL 数据库)。我使用 Spring ORM 将 EntityManager(通过 @PersistenceContext 注释)注入我的简单 RegisterDAO。我已经为使用 MySQL 配置了 GlassFishs(我正在使用)连接池,并且一切正常 - 我可以使用我的数据库,但是当我持久化某些东西时 - 没有任何反应(数据不会持久化到数据库)。我知道问题在于我使用的事务上下文。我阅读了 Spring Transaction Management 的文档并按照本文档中的配置步骤进行操作。这是我的 applicationContext.xml:

如您所见,我将 RegisterDAO 注入到我的 RegisterFormModel 中,其中包含用于验证注册表单数据并最终将用户添加到数据库的业务逻辑。验证工作正常,当我尝试添加新用户时会出现问题。这是代码:

注册道:

我也尝试过使用@Transactional 注释。我像这样配置了spring applicationContext.xml:

并使用 @Transactional 注释注释我的 addUser() 方法,如下所示:

甚至用这个注释注释整个类:

但在这两种情况下,问题都是一样的——数据不存储在数据库中。我的 AOP 代理有什么问题吗,因为我是这方面的新手(就像在整个春天 :))?

编辑:在我的 persistence.xml 中,我使用的是transaction-type="JTA“所以我认为我应该<bean id="transactionManager" class="org.springframework.transaction.jta.JtaTransactionManager" />在我的 applicationContext.xml 中使用 - 对吗?

0 投票
1 回答
9598 浏览

java - How does Spring create an application context or container hierarchy?

According to The IoC Container, Spring can manage a context hierarchy or hierarchy of containers and then use the <ref parent="beanId"/> to refer to a bean in a parent context. What mechanism does Spring use to create this container hierarchy? Can one use the <import resource="application-context.xml"/> command to create this hierarchy? Please provide an example of an application context that forms a hierarchy.

0 投票
2 回答
1494 浏览

google-app-engine - Bean 使用 @Controller 初始化,但未调用 @RequestMapping

下面是我对新的基于 Spring 3 注释的控制器的设置:

// 调度程序-servlet.xml

// web.xml

// 弹簧控制器

当我导航到 /auth 时,我得到一个 404。当我尝试applicationContext像这样注册 bean 时:

我得到一个BeanException说明 bean 已经在/logingooglethrough注册ControllerClassNamehandlerMapping。我在 Google App Engine 上使用 Spring 3.0.2。

将不胜感激一些帮助。

0 投票
3 回答
46380 浏览

java - Spring ApplicationListener 没有接收到事件

我有以下应用程序侦听器:

以及以下 bean 定义:

我可以看到 bean 是在打印来自构造函数的消息时创建的,但从未收到上下文启动事件。我错过了什么?

0 投票
1 回答
28085 浏览

spring - 具有 Spring 应用程序上下文的 JUnit 自定义运行器

我对 Spring 相当陌生,并且正在为 Web 应用程序使用一套 JUnit 4.7 集成测试。我有一些形式的工作测试用例:

我的应用程序有许多我正在测试的外部依赖项,所有这些依赖项都有通过加载testContext.xml初始化的 bean 。其中一些外部依赖项需要自定义代码来初始化和拆除必要的资源。

我不想在每个需要它的测试类中复制此代码,而是将其封装到一个公共位置。我的想法是创建一个单独的上下文定义以及一个扩展SpringJUnit4ClassRunner并包含 @ContextConfiguration 注释和相关自定义代码的自定义运行器,如下所示:

然后我可以让每个测试类指定其适用的运行器:

当我这样做时,我的测试运行并执行正确的withBeforeClasseswithAfterClasses方法。但是,没有将 applicationContext 提供回测试类,并且我的所有测试都失败了:

java.lang.IllegalArgumentException:无法使用 NULL 'contextLoader' 加载 ApplicationContext。考虑使用 @ContextConfiguration 注释您的测试类。

只有当我在每个测试类上指定 @ContextConfiguration 注释时,上下文才能正确加载——理想情况下,我希望这个注释与它负责加载的资源的处理程序代码一起使用。这引出了我的问题——是否可以从自定义运行器类中加载 Spring 上下文信息?

0 投票
3 回答
1340 浏览

java - 总是通过上下文在 Spring 服务中注入一些字段

我有以下课程:

现在我TestService从这个类之外实例化我的

变量size当然是null。但是我希望它从 spring 上下文中注入,即使我没有注入整个对象。

是否可以始终注入一些字段?