我正在開發一個NetBeans和Glassfish 4.1.1的Web應用程序。我使用JSF和CDI來管理facelets的後臺bean。因爲在代碼中進行任何更改後不久,我總是得到一個內部服務器錯誤與「成功」的部署,並通過瀏覽器中運行的應用程序後,這IllegalStateException異常:org.jboss.weld.exceptions.IllegalStateException:代碼中每次更改後的WELD-000227
org.jboss.weld.exceptions.IllegalStateException: WELD-000227: Bean
identifier index inconsistency detected - the distributed container
probably does not work with identical applications
我可以做一個乾淨的&構建擺脫它並重新部署。但NetBeans無論如何都會在每次保存後自動重新部署。因此,我仍然需要點擊清理和構建,然後重新部署自己總是在任何一點點改變後,它讓我發瘋!
那麼有什麼設置可以在glassfish服務器上更改以避免這種情況,或者我可以告訴NetBeans在自動部署之前清理&構建嗎?
它並不總是這樣,最近我更新了glassfish它可能只是在那之後纔出現,我不記得了。
在此先感謝!它花費了我這麼多時間..
解決
我再次小時一派,找到了解決辦法:我設置在GlassFish中
org.jboss.weld.serialization.beanIdentifierIndexOptimization新系統屬性= 假
避免出現不一致如WELD參考這裏解釋:
相關:http://stackoverflow.com/q/28713747 – BalusC
感謝您的鏈接,你是對的,其同樣的問題.. – BenSkeleton
你是如何設置這個屬性?我正在努力解決同樣的問題。 (http:// localhost:4848 /)轉到「服務器(管理服務器)」 - >「屬性」 - >「系統屬性」並添加一個新屬性「org.jboss.weld」中的 –