我正在使用NetBeans和Glassfish 4.1.1开发一个webapp.我正在使用JSF和CDI来管理facelets的后台bean.在更改代码中的任何内容后不久,在通过浏览器"成功"部署和运行应用程序后,我总是会遇到此IllegalStateException的内部服务器错误:
org.jboss.weld.exceptions.IllegalStateException: WELD-000227: Bean
identifier index inconsistency detected - the distributed container
probably does not work with identical applications
Run Code Online (Sandbox Code Playgroud)
我可以通过干净,构建和重新部署来摆脱它.但无论如何,NetBeans在每次保存后都会自动重新部署.所以我仍然需要点击清洁和构建,然后重新部署自己总是在任何小改变后,它让我疯了!
那么我可以在glassfish服务器上更改任何设置以避免这种情况,或者我可以告诉NetBeans在自动部署之前清理和构建吗?
它并不总是这样,最近我更新了玻璃鱼,它可能只是在那之后出现,我不记得了.
提前致谢!这花了我很多时间..
解决了
我再次谷歌搜索了几个小时,找到了解决方案:我在glassfish中设置了一个新的系统属性
org.jboss.weld.serialization.beanIdentifierIndexOptimization = false
为了避免出现不一致,如WELD参考文献中所述:
小智 15
在GlassFish中禁用beanIdentifierIndexOptimization,如下所示:
org.jboss.weld.serialization.beanIdentifierIndexOptimizationfalse这应该有助于钝化并解决以下WELD错误:
WELD-000227:检测到Bean标识符索引不一致.
| 归档时间: |
|
| 查看次数: |
4065 次 |
| 最近记录: |