Ich entwickle eine Webapp mit NetBeans und Glassfish 4.1.1. und ich verwende JSF und CDI, um die Backing-Beans für die Facelets zu verwalten. Seit ich etwas im Code ändere, erhalte ich immer einen internen Serverfehler mit dieser IllegalStateException, nachdem ich die App erfolgreich über den Browser bereitgestellt und ausgeführt habe:
%Vor%Ich kann es loswerden, indem ich eine saubere & amp; Erstellen und erneutes Bereitstellen. Aber NetBeans wird nach jedem Speichern automatisch erneut bereitgestellt. Also muss ich dann noch auf clean klicken und build und dann nach jeder kleinen Änderung IMMER neu einsetzen, es macht mich wahnsinnig!
Also gibt es irgendeine Einstellung, die ich auf Glassfish Server ändern kann, um dies zu vermeiden, oder kann ich NetBeans sagen, dass es sauber & amp; Build vor der automatischen Bereitstellung?
Es war nicht immer so, vor kurzem habe ich Glassfish aktualisiert, es könnte sein, dass es erst danach erschien, ich erinnere mich nicht mehr genau.
Vielen Dank im Voraus! Es kostet mich so viel Zeit.
Gelöst
Ich habe wieder stundenlang gegoogelt und die Lösung gefunden: Ich habe in Glassfish eine neue Systemeigenschaft eingestellt
org.jboss.weld.serialization.beanIdentifierIndexOptimization = false
um die auftretenden Inkonsistenzen zu vermeiden, wie in der WELD Referenz hier erklärt:
Deaktivieren Sie die BeanIdentifierIndexOptimization in GlassFish wie folgt:
org.jboss.weld.serialization.beanIdentifierIndexOptimization
false
Dies sollte bei der Passivierung helfen und den folgenden WELD-Fehler beheben:
WELD-000227: Bean-Index-Inkonsistenz erkannt.