In diesem Abschnitt werden die bekannten Probleme der Lifecycle-Verwaltung sowie ihre Lösungen beschrieben.
Nachdem Sie die ejb-timer-service-Eigenschaft minimum-delivery-interval auf 9000 gesetzt haben, führt der Versuch, die ejb-timer-service-Eigenschaft redelivery-interval-in-mills auf 7000 zu setzen, zum Fehlschlagen des set-Befehls mit dem folgenden Fehler:
[echo] Doing admin task set [exec] [Attribute(id=redelivery-interval-internal-in-millis) : Redelivery-Interval (7,000) should be greater than or equal to Minimum-delivery-interval- in-millis (9,000)] [exec] CLI137 Command set failed. |
minimum-delivery-interval ist das minimale Zustellungsintervall zwischen den Zustellungen innerhalb einer Timer-Periode.
redelivery-interval-in-mills ist die Zeit, die der Timer-Dienst wartet, bis er nach einem fehlgeschlagenen ejbTimeout eine Neuzustellung startet.
Die Logik, die zwischen dem Neuzustellungsintervall und dem minimalen Zustellungsintervall besteht, ist nicht korrekt, sodass Sie weder über die Benutzeroberfläche noch über die Befehlszeilenschnittstelle die Werte so setzen können, dass der minimale Zustellungsintervall größer ist als der Neuzustellungsintervall.
Der Wert der Eigenschaft minimum-delivery-interval-in-millis muss immer höher oder gleich dem Wert der Eigenschaft redelivery-interval-in-millisdes ejb-Timer-Dienstes sein. Das Problem wird durch eine fehlerhafte Validierung in aerver verursacht, bei der überprüft wird, ob der Wert für redelivery-interval-in-millis größer ist als der Wert für minimum-delivery-interval-in-millis.
Verwenden Sie für diese Eigenschaften folgende Standardwerte:
minimum-delivery-interval(default)=7000 redelivery-interval-in-millis(default)=5000 |
Die Verwendung anderer Werte verursacht einen Fehler.
Beim Versuch, die physischen JMS-Ziele unter Verwendung von default-config anzuzeigen, wird eine Fehlermeldung angezeigt.
Dies ist das erwartete Verhalten. In Enterprise Server ist default-config eine Vorlage für Konfigurationsoptionen, daher können JMS-Operationen (wie list und create) nicht für die Standardkonfiguration (default-config) ausgeführt werden. Diese JMS-Operationen können jedoch für die Konfigurationen Ihrer Cluster- oder eigenständigen Instanzen ausgeführt werden.
(Nur Windows 2003) Die Verwendung von umfangreichen Zugriffsfunktionen auf Systemen unter Windows 2003 führt zu Speicherlecks. Das Problem tritt auf, da der nicht ausgelagerte Win32-Speicherpool kontinuierlich erweitert wird und dies letztendlich zum Fehlschlagen des gesamten TCP/IP-Stacks führt. Nach dem Fehlschlagen weist der TCP/IP-Stack einen nicht wiederherstellbaren Status auf. Die einzige Möglichkeit, den Stack wiederherzustellen, ist der Neustart des Windows 2003-Systems.
Das Problem kann auf zwei verschiedene Arten umgangen werden.
Verwenden Sie den Grizzly-Sperrmodus, indem Sie das domain.xml http-listener-Attribut blocking-enabled="true" konfigurieren oder die folgende http-listener-Eigenschaft hinzufügen:
<property name="blocking" value="true"/> |
Verwenden Sie Windows Vista oder Windows XP.