Jsf 2 Weblogic 12c JSF don';t调用(忽略)@PostConstruct
总之,JSF不会在托管bean的WebLogic12c上调用带有@PostConstruct的方法 我有一个非常基本的应用程序 使用的技术: JSF2.0 应用服务器: WebLogic12C 爪哇 XHTMLJsf 2 Weblogic 12c JSF don';t调用(忽略)@PostConstruct,jsf-2,weblogic,postconstruct,weblogic12c,Jsf 2,Weblogic,Postconstruct,Weblogic12c,总之,JSF不会在托管bean的WebLogic12c上调用带有@PostConstruct的方法 我有一个非常基本的应用程序 使用的技术: JSF2.0 应用服务器: WebLogic12C 爪哇 XHTML Facelet标题 试验 #{beanTest.hola_mundo} 当托管bean是JSF的实例时, 托管bean bean测试是create(在普通构造函数中输入) 但是不要用PostConstruct输入(忽略,不要调用)方法 使用WebLogic显示的文本:输入以构造
Facelet标题
试验
#{beanTest.hola_mundo}
当托管bean是JSF的实例时,
托管bean bean测试是create(在普通构造函数中输入)
但是不要用PostConstruct输入(忽略,不要调用)方法
使用WebLogic显示的文本:输入以构造
预期文本,但不随WL一起显示:输入以构造-输入以后构造
该应用程序已部署在其他应用程序服务器上:
玻璃鱼3.1.1
有人有什么想法吗?嗯,问题解决了。 这是一个报告的bug,并且已经有了补丁 错误:13703600
补丁:SU-Patch[UXPH]:WLS12C-POSTCONSTRUCT未在JSF应用程序中的@MANAGEDBEAN bean上调用
我应用了补丁,问题得到了解决…此问题是Weblogic特有的。我无法从自己的经验中判断,但我从前面的文章/参考文献中读到,每当JSF库随web应用程序一起提供时(在
/web-INF/lib
文件夹中),Weblogic都无法在JSF工件上调用@PostConstruct
相反,web应用程序使用Weblogic自己提供的JSF库。这很有趣,因为实际上我的应用程序不使用web-INF/lib
中的库,而是指示您使用应用程序服务器。WebLogic12c现在为我提供了JSF库(我使用的就是这些库),以避免以前版本的Weblogic(10.3g和11g)中出现的问题。我也做了测试,在WEB-INF/lib
中添加了库,但没有观察到好的结果。很抱歉,我不能提供更多的帮助。我从来没有真正使用过Weblogic。真的,这是真的。WebLogic的行为与其他应用程序服务器不同。感谢您的帮助。首先,从Oracle下载修补程序。我想你必须有一个甲骨文帐户来做这件事。然后,确保weblogic已关闭,在路径“:C:\Oracle\Middleware\utils\bsu\cache\u dir”中解压缩修补程序。运行bsu.cmd或bsu.sh,打开智能更新窗口,选择出现的修补程序,然后按照de说明(下一步…下一步…下一步…接受等)操作。。。启动weblogic服务器,并准备就绪。已应用修补程序。。。更多信息请参见第3.3.1节,了解解压缩补丁,以及第4节,了解应用补丁。。。
@ManagedBean
@ViewScoped
public class BeanTest implements Serializable {
private String hola_mundo = "";
public BeanTest(){
this.init();
}
private void init(){
hola_mundo +=" Enter to construct - ";
}
@PostConstruct
public void initPostConstruct(){
hola_mundo +=" Enter to PostConstruct - ";
}
public String getHola_mundo() {
return hola_mundo;
}
public void setHola_mundo(String hola_mundo) {
this.hola_mundo = hola_mundo;
}
}
<h:head>
<title>Facelet Title</title>
</h:head>
<h:body>
Test
<br/>
#{beanTest.hola_mundo}
</h:body>