问题标签 [postconstruct]
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.
java - JBoss部署后调用方法
我想让一些方法运行,只有在我的 WAR 部署到 JBoss 之后。
问题:目前我正在使用@PostConstruct 从数据库加载保存的时间表。问题是我正在从这个方法创建调度程序的实例,这反过来又启动了 Quartz 调度程序,这阻止了 JBoss 完成部署。如果没有要加载的计划,我的 WAR 部署正常,但如果有计划,它们会导致部署失败,因为 JBoss 正在“等待”计划实际完成。
有没有办法将方法调用延迟到完全部署之后?或者,是否可以在服务器上进行异步调用(来自服务器代码)?
jsf - 带有托管属性的 JSF 注入,好的模式?
我对 JSF 很陌生,并没有真正“习惯”不同的想法,所以我在(我认为)是基本的东西上苦苦挣扎。
假设我有一个类 User,它是一个会话 bean。
假设我有一个包含 10000 个对象的控制器,比如 Factory,它需要能够将其中一些对象设置为“锁定”,在我们的例子中,这意味着“锁定”字段不再变为 null,而是引用“LockedItem”目的。
这是我无法让事情正常工作的地方:LockedItem,当你实例化它时,应该引用当前登录的用户。我应该怎么做?
我尝试使用@managedproperty 进行注入,但在LockedItem.constructor 中它为空(我认为这是正常的)然后我尝试了@PostConstruct 方法,但从未调用过该方法(为什么?即使我将其设为托管bean ... postconstruct 方法是否仅在“.xhtml”创建对象时调用?)或者我应该使用“java se”技巧,比如使用户静态?
澄清为什么不调用 @PostConstruct 的代码(“Seat”之一):
.xhtml
用户
车
座位
谢谢 !
java - 如何在 Eclipse RCP e4 应用程序的 postconstruct 方法中显示运行时异常?
我正在开发一个 Eclipse E4 RCP 应用程序,我使用依赖注入。
我注意到,当 postconstruct 中存在运行时异常时,我在控制台中看不到该异常(它被吞没了吗?)。我确实看到了一个无法注入该类的异常。
因此,例如以下代码:
给出以下输出:
有谁知道如何确保也显示运行时异常?
jsf - 具有 postconstruct 方法的 ApplicationScoped Bean
我有一个应用程序范围的 bean 来保存我的数据库中的信息。在实例化之后它应该获取数据,所以我用@PostConstruct 注释了这个方法。一旦我请求引用此 bean 的 jsf 页面,服务器日志就会爆炸!我认为它以某种方式递归,我得到的唯一堆栈跟踪是在 repBean.acceptVisitor(Visitor); 期间发生了系统异常;方法。然后服务器日志会变大几 GB,我必须手动删除它才能获得可用磁盘空间。如果我删除 @PostConstruct 注释,则没有例外。从另一个 bean 调用 update() 方法后,repositoryContent 变量会正确更新并包含信息。唯一的问题是我的 jsf 页面由于某种奇怪的原因没有显示内容。
jsf-2 - Can @ManagedPropery and @PostConstruct be placed in a base class?
I'm using a hierarchy of classes and what I would optimally try to do is have @ManagedBean
's that inherit a class that have @ManagedProperty
members and @PostConstruct
methods.
Specifically, will this work? :
Thanks in Advance!
jboss - @Startup @Singleton @PostConstruct 给出一个 RunTimeException (无法在新创建的 bean 实例上调用 PostConstruct)
我正在尝试构建一个在启动时启动的 bean,以对我们拥有的数据进行迁移。它被注释为@Singleton @Startup bean,但@PostConstruct 失败了,但我不知道为什么。
这是代码:
SearchInitializer 也是一个 @Startup @Singleton bean,在方法上带有 @PostConstruct 注释,并且运行良好(同样,在这个 bean 之前,所以 @DependsOn 工作正常)。SearchRepository 是一个@Stateless bean,它将进入数据库。
但是,如果我运行这段代码,我会得到这个异常:
有人知道我在做什么错吗?
编辑
附加信息:我怀疑“@Inject 私有 SearchRepository 存储库”是罪魁祸首。当我删除该存储库的注入时,它启动得很好。如果我不这样做,我会收到此错误:
如果我通过引导过程进行调试,我会看到存储库实际上是代理的(这也通过堆栈跟踪中对 AOP 的引用得到支持)。
但仍然没有运气弄清楚它!任何人?
jsf - JSF2 在页面加载时将属性传递给支持 bean
我有两个不同的 JSF2 页面和一个共享的支持 bean。如何将参数从页面传递到支持 bean(在页面加载时 - 使用 @PostConstruct 的方法),以便它知道当前正在使用哪个页面。
我知道可以使用<f:event>
like preRenderView
(like this),但它需要一个方法以及支持 bean 中的一个字段。这是否可以使用 f:attribute 或 f:param 之类的东西,而后备 bean 中没有任何额外的方法?
java - 如何在测试期间在 Spring 中禁用 @PostConstruct
在 Spring 组件中,我有一个@PostConstruct
声明。类似于下面:
在单元测试期间,我不想@PostConstruct
调用该函数,有没有办法告诉 Spring 不要进行后期处理?或者在非测试期间调用类的启动方法是否有更好的注释?
jsf-2 - 如何防止@PostConstruct 在回发时被调用
当页面第一次加载时,@PostConstruct
会调用,但是当我在这个页面上执行回发时,@PostConstruct
会再次调用。
我怎样才能让它只在初始请求时运行,而不是在每次回发时运行?
multithreading - CDI 构造后初始化字段
有谁知道在使用 PostConstruct 注释的方法中初始化实例字段是否被认为是线程安全的?我不太确定是否必须使我的 ApplicationScoped bean 的字段易失,以便其他线程可以真正看到这些值...
感谢您的任何提示或答案!