Sun Java System Anwendungsserver Enterprise Edition 8.1 2005Q2 Update 2 ist ein mit der J2EE 1.4-Plattform kompatibler Server zur Entwicklung und Bereitstellung von J2EE-Anwendungen und auf Java-Technologie basierenden Webdiensten in umfangreichen Produktionsumgebungen.
Dieses Kapitel hat folgenden Inhalt:
Anwendungsserver Enterprise Edition 8.1 2005Q2 Update 2 enthält folgende Verbesserungen:
Verbesserte Verwaltung – Anwendungsserver unterstützt die sichere Remote-Verwaltung von bereitgestellten Anwendungen in komplexen Unternehmensnetzwerken. Die Verwaltung erfolgt entweder über eine browserbasierte Konsole oder eine skriptfähige Befehlszeilenschnittstelle. Das Programm stellt außerdem eine reichhaltige JMX-basierte API bereit, über die ein entfernter, sicherer, programmatischer Zugriff auf administrative Funktionen und Überwachungsfunktionen ermöglicht wird.
Message Broker – Anwendungsserver wird im Paket mit einem integrierten Message Broker der Enterprise-Klasse zur Verfügung gestellt, dessen Funktionen hochverfügbares, zuverlässiges, leistungsstarkes sowie skalierbares Messaging ermöglichen.
Erweiterte Plattformunterstützung – Es werden zusätzliche Betriebssysteme, Datenbanken, Umgebungen und Hardware unterstützt.
Sun Java Enterprise System – Als eine der Schlüsselkomponenten von Sun Java Enterprise System besteht ein enges Zusammenspiel zwischen Anwendungsserver und Portal- und Netzwerk-Identitätsdiensten.
Migrations- und Upgrade-Tools – Mit diesen Tools können J2EE-Anwendungen auf Übereinstimmung mit Standards sowie auf Portabilität geprüft werden. Sie erhalten Unterstützung bei der Migration von anderen J2EE Anwendungsserver-Instanzen (JBoss, WebLogic, WebSphere) und bei der Aktualisierung früherer Versionen von Sun ONE Application Server/iPlanet Application Server.
Java 2 Standard Edition 5.0-Unterstützung – Anwendungsserver unterstützt Java 2 Standard Edition 5.0 und bietet verbesserte Verwaltungs- und Überwachungsfunktionen sowie zahlreiche Verbesserungen im Bereich der Performance und Skalierbarkeit.
Plugin-Support für Java Web Services Developer Pack 1.6 (JWDSP) – Sämtliche JWSDP-Plugins werden jetzt unterstützt. JWSDP 1.6 kann nun kostenlos unter http://java.sun.com/webservices/downloads/1.6/index.html heruntergeladen werden.
JDBC-Treiber – Anwendungsserver wird im Bundle mit JDBC-Treibern von Sun angeboten.
Webservices-Sicherheit – Containermeldungs-Sicherheitsmechanismen stellen die Authentifizierung auf Meldungsebene (z. B. durch digitale XML-Signatur und Verschlüsselung) von SOAP-Webservices-Aufrufen unter Verwendung der X509- und Benutzername/Passwort-Profile des OASIS WS-Security-Standards bereit.
WS-I Basic Profile 1.11 – Entsprechend der J2EE 1.4-Spezifikation wird in dieser Version die Interoperabilität für Webservices-Anwendungen durch Web Services Interoperability (WS-I) Basic Profile 1.1 ermöglicht.
Back-End-Kommunikation mit iWay-Adaptern – Von Sun Microsystems werden inzwischen 22 iWay-Adapter für Back-End-Schlüsselsysteme (SAP, Siebel, Oracle, CICS und IBM MQ Series) weiterveräußert und unterstützt. Auf diese Weise können Kunden den vollen Nutzen aus vorhandenen IT-Anwendungen in der Anwendungsserver-Umgebung ziehen. Diese Adapter unterstützen die Spezifikation von J2EE Connector Architecture 1.5 und Webservices (SOAP)-Standards. Sie enthalten Entwicklertools, um die Zeit für den Verbindungsaufbau mit Back-End-Anwendungen zu verringern.
Aktuelles HADB-Managementsystem — Die UNIX™-Plattformen enthalten das neue hochverfügbare Datenbank (HADB)-Managementsystem (HADB-Version 4.4.2–7). Dieses System enthält einen Datenbankserver, einen Treiber für ODBC 2.5, einen Treiber vom Typ 4 für JDBC 3.0, clusql (ein interaktives Programm zum Eingeben und Ausführen von SQL-Anweisungen) sowie ein Managementsystem. Diese Version ist nicht mehr von SSH/RSH abhängig, erfordert aber, dass das Netzwerk für UDP-Multicast konfiguriert wird. Weitere Informationen zu den HADB-Anforderungen und -Beschränkungen finden Sie im Sun Java System Application Server Enterprise Edition 8.1 2005Q2 High Availability Administration Guide.
Solaris 10-Zonensupport – Anwendungsserver kann sowohl in einer globalen als auch in einer nicht globalen Zone auf Solaris 10-Systemen installiert werden. Weitere Informationen zu Solaris-Zonen finden Sie unter Solaris Zones.
Dieser Abschnitt listet die Anforderungen auf, die erfüllt werden müssen, bevor Sie das Produkt Sun Java System Anwendungsserver Enterprise Edition 8.1 installieren können.
In den folgenden Tabellen werden die Betriebssysteme aufgelistet, die das Produkt Sun Java System Anwendungsserver Enterprise Edition 8.1 2005Q2 unterstützen. Zusätzlich werden die jeweiligen minimalen und empfohlenen Speicheranforderungen für die Installation und das Ausführen von Anwendungsserver angegeben.
Tabelle 2–1 Plattform-Anforderungen für Sun Java System Anwendungsserver 8.1 2005Q2
Betriebssystem |
Mindest- Arbeitsspeicher |
Empfohlener Arbeitsspeicher |
Mindest- festplatten- speicher |
Empfohlener Festplattenspeicher |
JVM |
---|---|---|---|---|---|
Sun Solaris 8, 9, 10 (SPARC) Solaris 9, 10 (x86) |
512 MB |
1 GB |
250 MB frei |
500 MB frei |
J2SE 1.4.2_06, J2SE 5.0 |
Red Hat Enterprise Linux 2.1 Update 2, 3.0 Update 1 |
512 MB |
1 GB |
220 MB frei |
300 MB frei |
J2SE 1.4.2_06, J2SE 5.0 |
Windows Server 2000 SP4+ Windows 2000 Advanced Server SP4+ Windows Server 2003 Windows XP Pro SP1+ |
1 GB |
2 GB |
500 MB frei |
1 GB frei |
J2SE 1.4.2_06, J2SE 5.0 |
Unter UNIX können Sie die Version Ihres Betriebssystems anzeigen, indem Sie den Befehl uname ausführen. Um den Festplattenspeicherplatz anzuzeigen, führen Sie den Befehl df aus.
Eine aktuelle Liste der erforderlichen Patches für Sun Java System Anwendungsserver Enterprise Edition 8.1 finden Sie unter http://sunsolve.sun.com. Suchen Sie nach “app server 8.1 patch.”â Verwenden Sie die entsprechenden Links für Sun Java System Anwendungsserver Enterprise Edition 8.1. Wann immer sich die Anforderungen für Betriebssystem-Patches ändern und neue Patches für Java Enterprise System-Komponenten verfügbar sind, werden die Updates auf der SunSolve-Website bereitgestellt, zunächst in Form von Patch-Clustern.
Für Benutzer der Betriebssysteme Solaris 9, 10 (x86 SPARC) wird empfohlen, das “von Sun empfohlene Patch-Cluster” zu installieren. Dieses Patch-Cluster steht auf SunSolve unter Recommended and Security Patches zur Verfügung.
Um programmeigene Komponenten dieses Produkts, darunter den Installer, auszuführen, muss das folgende Paket, das nicht zum Standardumfang von RedHat Enterprise Linux 3.0 gehört, installiert werden: compat-libstdc++-7.3-2.96.118.i386.rpm
Das Paket kann von der Seite http://rpm.pbone.net/index.php3/stat/4/idpl/843376/com/compat-libstdc++-7.3-2.96.118.i386.rpm.html heruntergeladen werden.
Sun Java System Anwendungsserver wurde so konzipiert, dass eine Konnektivität mit jedem DBMS mit einem entsprechenden JDBC-Treiber unterstützt wird. In der folgenden Tabelle finden Sie eine Liste mit Komponenten, die laut Sun-Test zum Erstellen von J2EE-kompatiblen Datenbankkonfigurationen geeignet sind:
Tabelle 2–2 J2EE-kompatible JDBC-Treiber
JDBC-Hersteller |
JDBC-Treibertyp |
Unterstützte Datenbank-Server |
---|---|---|
i-net-Software |
Typ 4 |
Oracle (R) 8.1.7, 9i, 9.2.0.3 Sybase ASE 12.5.2 Microsoft SQL Server 2000 4.0 Service Pack 1 |
IBM |
Typ 2 |
IBM DB2 8.1 Service Pack 3+ |
PointBase |
Typ 4 |
PointBase Network Server 4.8 |
DataDirect |
Typ 4 |
Oracle (R) 8.1.7, 9i, 9.2.0.3 Sybase ASE 12.5.2 Microsoft SQL Server IBM DB2 8.1 Service Pack 3+ |
Sun Java System JDBC-Treiber für Oracle |
Typ 4 |
Oracle (R) 9.2.0.3, 10G |
Sun Java System JDBC-Treiber für DB2 |
Typ 4 |
IBM DB2 8.1 Service Pack 3+ |
Sun Java System JDBC-Treiber für Sybase |
Typ 4 |
Sybase ASE 12.5.2 |
Sun Java System JDBC-Treiber für Microsoft SQL Server |
Typ 4 |
Microsoft SQL Server 2000 4.0 Service Pack 1 |
Oracle |
Typ 4, Typ 2 |
Oracle (R) 9.2.0.3, 10G |
Weitere Informationen über i-net-Software finden Sie unter http://www.inetsoftware.de/.
Weitere Informationen über DataDirect-Technologien finden Sie unter http://www.datadirect.com/.
Oracle JDBC-Treiber müssen ordnungsgemäß konfiguriert werden, damit sie mit J2EE 1.4 kompatibel sind. Verwenden Sie die folgende Konfiguration für Treiber vom Typ 2 und Typ 4:
Verwenden Sie die JDBC-Treiberversion 9.2.0.3 oder höher.
In der Parameterdatei (init.ora) der Oracle-Datenbank muss der Eintrag compatible=9.0.0.0.0 oder höher vorhanden sein.
Verwenden Sie die Datei ojdbc14.jar.
Konfigurieren Sie Anwendungsserver, um die folgende JVM-Eigenschaft zu definieren:
-Doracle.jdbc.J2EE13Compliant=true |
Außerdem müssen für Treiber vom Typ 2 die Variablen ORACLE_HOME und LD_LIBRARY_PATH (die $ORACLE_HOME/lib enthalten müssen) definiert werden, und zwar in der Umgebung, in der Anwendungsserver gestartet wird. Fügen Sie die Variablen beispielsweise der Datei asenv.conf hinzu und stellen Sie sicher, dass die Variablen exportiert werden.
Der in Anwendungsserver enthaltene PointBase-Datenbankserver wird von zahlreichen Beispielanwendungen verwendet. Der PointBase-Datenbankserver muss für den Einsatz mit Anwendungsserver Enterprise Edition konfiguriert werden.
Sie können PointBase auf zwei Arten konfigurieren:
Geben Sie als Wert der Umgebungsvariable JAVA_HOME das J2SE-Installationsverzeichnis an. Verwenden Sie hierfür den für Ihr Betriebssystem und Ihre Shell erforderlichen Befehl. Beispiel: % setenv JAVA_HOME "/opt/SUNWappserver/jdk"
Bearbeiten Sie die PointBase-Konfigurationsdatei von Application Server wie folgt:
Auf Solaris- und Linux-Systemen bearbeiten Sie die Konfigurationsdatei install_dir /pointbase/tools/serveroption/pbenv.conf, indem Sie folgende Zeile ändern:
PB_JAVA=%%%PB_JAVA%%%
bis
PB_JAVA=J2SE_location
Auf Windows-Systemen bearbeiten Sie die Konfigurationsdatei install_dir\pointbase\tools\serveroption\pbenv.bat , indem Sie folgende Zeile ändern:
PB_JAVA=%%%PB_JAVA%%%
bis
PB_JAVA=J2SE_location
wobei J2SE_location das Installationsverzeichnis von J2SE ist. Wenn Sie J2SE mit Application Server installiert haben, ist das standardmäßige Installationsverzeichnis install_dir/jdk.
Nachdem Sie diese Änderung vorgenommen haben, starten Sie PointBase mit dem Skript startserver.
In diesem Abschnitt werden die Webserver aufgelistet, die für Sun Java System Anwendungsserver Enterprise Edition 8.1 2005Q2 unterstützt werden.
Tabelle 2–3 Unterstützte Webserver
Web Server |
Version |
Betriebssystem |
---|---|---|
Sun Java System Web Server |
6.1+ |
Solaris SPARC 8, 9, 10 Solaris x86 9, 10 Red Hat Enterprise Linux 2.1 Update 2, 3.0 Update 1 |
Apache Web Server |
1.3+, 1.4, 2.0 |
Solaris SPARC 9, 10 Solaris x86 10 Red Hat Enterprise Linux 2.1 Update 2, 3.0 Update 1 Windows Server 2003 Windows 2000 Advanced Server SP4+ Windows Server 2000 SP4+ Windows XP Pro SP1+ |
Microsoft IIS™ |
5.0+ |
Windows Server 2003 Windows 2000 Advanced Server SP4+ Windows Server 2000 SP4+ Windows XP Pro SP1+ |
In diesem Abschnitt werden die Browser aufgelistet, die von Sun Java System Anwendungsserver Enterprise Edition 8.1 2005Q2 unterstützt werden.
Tabelle 2–4 Unterstützte Webbrowser
Browser |
Version |
---|---|
Mozilla |
1.4, 1.5, 1.6, 1.7.x |
Netscape Navigator |
4.79, 6.2, 7.0 |
Internet Explorer |
5.5 Service Pack 2, 6.0 |
Neben den unter Hardware- und Softwareanforderungen aufgelisteten Anforderungen müssen Sie sicherstellen, dass Ihr System die unten zum Ausführen von HADB aufgelisteten Anforderungen erfüllt.
Die Java-Komponenten des Systems wurden mit JDK 1.4.2_02 erstellt und auf JDK 1.5 getestet.
Solaris (SPARC) – Solaris 8 MU7, Solaris 9 MU7, Solaris 10 RR.
Solaris (x86) – Solaris 9 MU7, Solaris 10 RR.
RedHat Enterprise Linux - 2.1 U5 (nur ext2-Dateisystem wird unterstützt, nicht ext3), 3.0 U4 (sowohl ext2 als auch ext3 werden unterstützt. Updates vor U4 werden aufgrund des exzessiven dynamischen Programmaustauschs nicht empfohlen). Beachten Sie, dass HADB auf diesen Betriebssystemversionen nur im 32-Bit-Modus getestet wird. Beachten Sie außerdem, dass HADB das Betriebssystem RedHat Enterprise Linux 3.0 bei Ausführung im 64-Bit-Modus nicht unterstützt. Ursache dafür ist ein Programmfehler im Betriebssystem [Details über die Auswirkungen auf HADB finden Sie unter dem bekannten Programmfehler (Bug) 6249685 im Abschnitt Hochverfügbarkeit].
Microsoft Windows – Microsoft Windows 2000 Advanced Server Service Pack 4 und Microsoft Windows 2003 Enterprise Edition. Beachten Sie, dass HADB keine der kommenden Betriebssystemversionen von Microsoft Windows im 64-Bit-Modus unterstützt.
Mindestens erforderlicher Speicher - 320 MB pro Knoten.
Mindestens erforderlicher freier Festplattenspeicher - 70 MB für HADB-Binärdateien pro Host. Darüber hinaus wird Festplattenspeicher für die Datengeräte benötigt, und zwar 512 MB für eine Testinstallation pro Knoten.
Empfohlener Speicher - 512 MB pro Knoten.
Empfohlener freier Festplattenspeicher - 70 MB für HADB-Binärdateien pro Host. Darüber hinaus wird Festplattenspeicher für die Datengeräte benötigt, und zwar 1200 MB für eine Testinstallation pro Knoten.
Stellen Sie sicher, dass das Schreibcaching auf Geräten deaktiviert ist, auf denen HADB-Daten- und Protokolldateien gespeichert werden. Das Schreibcaching ist auf einigen Solaris-Plattformen standardmäßig aktiviert; zum Beispiel Solaris x86.
Mindestens erforderlicher Speicher - 128 MB
Mindestens erforderlicher freier Festplattenspeicher - 70 MB für HADB-Binärdateien pro Knoten
Mindestens erforderlicher Speicher - 120 MB
Mindestens erforderlicher freier Festplattenspeicher - 20 MB
Das gegenwärtige Upgrade einer vorherigen Application Server-Version wird nicht unterstützt. Umfassende Anweisungen zum Upgraden von einer vorherigen Version von Anwendungsserver auf die aktuelle Version finden Sie im Anwendungsserver Enterprise Edition Upgrade and Migration Guide.
Wenn Sie PointBase mit Anwendungsserver verwenden möchten, laden Sie J2SE 1.4.2 herunter und verwenden Sie diese Version anstelle der im Bundle enthaltenen Version J2SE 5.0 JVM. Führen Sie dazu die folgenden Schritte aus:
Laden Sie J2SE 1.4.2 SDK (nicht JRE) herunter und installieren Sie diese Version auf Ihrem System, wenn Sie dies nicht bereits durchgeführt haben.
Eine Download-Version von J2SE 1.4.2 SDK finden Sie unter http://java.sun.com/j2se/1.4.2/.
Beenden Sie Anwendungsserver.
Von der Befehlszeile aus:
install_dir/bin/asadmin stop-domain |
Von Administration Console aus:
Bearbeiten Sie die Datei install_dir/config/asenv.conf (asenv.bat unter Windows), indem Sie den Wert für AS_JAVA ändern und somit auf das Home-Verzeichnis von J2SE 1.4.2 zeigen:
Bearbeiten Sie die Datei as-install/samples/common.properties , indem Sie die mit com.sun.aas.javaRoot... beginnende Zeile so ändern, dass sie auf das Home-Verzeichnis von J2SE 1.4.2 verweist.
Starten Sie Anwendungsserver neu.
Von der Befehlszeile aus:
install_dir/bin/asadmin start-domain |
Von Administration Console aus:
Die folgenden weiteren Anforderungen müssen erfüllt sein, bevor die Software Sun Java System Anwendungsserver installiert wird.
Freier Speicheplatz – Für die Sun Java System Anwendungsserver-Installation müssen dem temporären Verzeichnis mindestens 35 MB freier Speicherplatz zugewiesen sein; für die SDK-Installation werden 250 MB freier Speicherplatz benötigt.
Verwendung des Deinstallationsprogramms — Wenn Sie Anwendungsserver von Ihrem System entfernen müssen, sollten Sie unbedingt das mit der Software gelieferte Deinstallationsprogramm verwenden. Wenn Sie die Deinstallation auf eine andere Art vornehmen, entstehen Probleme bei der Neuinstallation derselben bzw. einer neueren Version.
Freie Ports — Es müssen sieben freie Ports zur Verfügung stehen.
Das Installationsprogramm erkennt automatisch bereits verwendete Ports und schlägt derzeit nicht verwendete Ports für die Standardeinstellungen vor. Die standardmäßig verwendeten Portnummern sind 8080 für HTTP, 8181 für HTTPS und 4849 für Administration Server.
Das Installationsprogramm erkennt verwendete Ports und weist zwei weitere zu: Sun Java System Message Queue (Standard-Portnummer 7676) und IIOP (Standard-Portnummer 3700 für IIOP und 1060 und 1061 für IIOP/SSL). Werden diese Standard-Portnummern bereits verwendet, wählt das Installationsprogramm eine zufällig ausgewählte dynamische Portnummer (beachten Sie, dass diese Nummer nicht die nächste verfügbare Portnummer ist).
Starten von vorher installierten Servern (UNIX) – Wenn Sie den vorher installierten Server nicht ersetzen möchten, müssen Sie ihn starten, bevor Sie mit dem Installationsprozess von Sun Java System Anwendungsserver 8.1 beginnen. Das Installationsprogramm erkennt dadurch verwendete Ports und weist diese Ports nicht neu zu.
Ersetzen von vorher installierten Servern (UNIX) — Wenn Sie eine ältere Version auf Sun Java System Anwendungsserver installiert haben, die Sie durch die aktuelle Version von Anwendungsserver ersetzen möchten, müssen Sie den Server beenden, bevor Sie den neuen Server installieren. Verwenden Sie den Assistenten des Installationsprogramms zum Aufrüsten des Servers.
Firewall beenden (Microsoft Windows) – Da die Firewall-Software standardmäßig alle Ports deaktiviert, müssen Sie die Software beenden, bevor Sie mit der Installation von Sun Java System Anwendungsserver beginnen. Das Installationsprogramm muss feststellen können, welche Ports tatsächlich verfügbar sind.
Weitere Kompatibilitätsinformationen finden Sie im Sun Java System Application Server Enterprise Edition 8.1 2005Q2 Upgrade and Migration Guide.
In diesem Abschnitt werden die vom Kunden festgestellten Probleme aufgeführt, die für das Produkt Sun Java System Anwendungsserver Enterprise Edition 8.1 behoben wurden.
Fehlernummer |
Beschreibung |
---|---|
4887079 |
Programm-APIs zum Bereitstellen/Aufheben der Bereitstellung und Herausfinden, welche Anwendungen bereitgestellt sind. |
4911462 |
Falschmeldung, wenn sich der Port außerhalb des verfügbaren Bereichs befindet. |
4918535 |
sun-appserv-deploy() nimmt kein Flag zur Unterstützung von createAndDropTables() |
4939749 |
xml:()lang() Wert sollte nicht automatisch durch das Bereitstellungstool eingefügt werden. |
4946914 |
Bereitstellungsunterstützung für Cluster. |
4979136 |
Verzeichnisbasierte Bereitstellung kopiert die Anwendung in ein Backup-Verzeichnis. |
4987274 |
Bereitstellung schlägt fehl, wenn die Remote-Schnittstelle für bean die Bezeichnung Util() trägt. |
4988818 |
Transparent Persistence-Laufzeittests schlagen fehl, wenn J2SE 1.5 verwendet wird. |
4992295 |
Die Bereitstellung einer Systemkomponente an der Befehlszeilenschnittstelle ist zwar erfolgreich, jedoch wird ein Fehler in der Protokolldatei des Servers eingetragen. |
4994790 |
Mit precompilejsp=true bereitgestelltes JSP verwendet in sun-web.xml keine Compilerflags. |
4996876 |
Verifier führt im Vergleich zur Bereitstellung mit verify=true zu verschiedenen Berichten. |
5003356 |
Die jüngsten Aktualisierungen der Datei server.policy werden vom Aktualisierungswerkzeug (Upgradetool) nicht berücksichtigt. |
5006854 |
Die Bereitstellung von asadmin deploy --virtualservers schlägt fehl. |
5007309 |
Ungeeigneter Standardwert für die Empfängerthreads des HTTP-Listeners. |
5008941 |
JSR88-Startvorgang schlägt fehl, wenn eine Anwendung erneut bereitgestellt wird, nachdem ihre Bereitstellung rückgängig gemacht wurde. |
5016848 |
Unter Windows werden durch das JDK-Caching der JAR-Datei sowie aufgrund von nicht geschlossenen Dateien einige Neubereitstellungen verhindert. |
5017956 |
list -m auf der Ebene des JAR-Moduls listet die EJBs nicht auf. |
5030425 |
Der Befehl deploydir ignoriert Änderungen von security-role-mapping . |
5041343 |
Keine Prüfung von servlet-mapping url-pattern- -directory. Immer durch "/" eingeschlossen. |
5046120 |
Protokollmeldungen der Stufe SEVERE (schwerwiegender Fehler) bei der Bereitstellung von großen Anwendungen. |
6041268 |
Kein Mechanismus zum Deaktivieren von HTTP TRACE. |
6062410 |
Das Aktualisierungsprogramm (Upgradetool) wird auf einem lokalisierten Computer auf Englisch gestartet. |
6067341 |
Der Befehl deploydir in einer Webanwendung mit ejb-refs schlägt bei rmic bezüglich der Remoteschnittstellen fehl. |
6152752 |
Der Ausnahmefehler outofbound wird bei SPEC J2004-Testläufen protokolliert. |
6154949 |
Die Verbindungsüberprüfung funktioniert nicht. |
6157310 |
Runtime lädt beim Beziehungsmanagement das Feld Collection neu. |
6165491 |
Fehler beim Starten einer Domäne, wenn diese in einem anderen Pfad als die Standarddomäne erstellt wurde. |
6171667 |
Die Eigenschaftselemente der Lebenszyklusmodule werden in domain.xml nicht erstellt. |
6171729 |
Die Non-String-Eigenschaften RA ActivationSpec führen bei der MDB-Bereitstellung zu einer IllegalArgumentException. |
6172178 |
OSS/J TT TCK konnte keinen JMS-Verbindungsbetrieb von einem Remote-Anwendungsserver bekommen. |
6172589 |
Die Optimierung (Optimize) ruft den Manager für die Sicherheit. |
6183492 |
[DataDirect] DB2: Einige transparente Persistence Application Server-Tests schlugen fehl, wobei ein Ausnahmefehler beim EJB-Aufruf ausgegeben wurde. |
6184864 |
Die EJB QL-Abfrage gibt unter Verwendung des OR-Operators keine Ergebnisse zurück und der Ausdruck enthält keine Einzelwert-CMRS. |
6197393 |
Das Bereitstellungstool (Deploytool) erstellt oftmals kein Nachrichtenzielelement im Implementierungsdeskriptor. |
6198796 |
In den EE-Sample-Befehlen asadmin muss beim Bereitstellen der Anwendung die Option availabilityenabled=true () enthalten sein. |
6198981 |
Aufgrund der fehlenden Datei xalan.jar in classpath entstehen leere Dropdowns und der Webservice-Assistent schlägt fehl. |
6199076 |
Fehler beim Ausführen des Duke Bookstore-Musterausfallsicherungstests mit dem asant -Skript. |
6202363 |
Cluster-Name fest programmiert in einem ant-Ziel in Musteranwendung mq-failover . |
6202606 |
JMS-Dienstkonfiguration kann für SSL JMS nicht zwischen JMS und Nachrichtenwarteschlange verwendet werden. |
6206176 |
Application Server 8.1 verlangt, dass startserv/stopserv 755-Genehmigungen besitzt. |
6207297 |
Der Zugriff auf Application Server ohne standardmäßige SSL-Portnummer (443) funktioniert nicht. |
6207862 |
asadmin create-domain --help führt zu verstümmelten Informationen. |
In diesem Abschnitt werden die vom Kunden festgestellten Probleme aufgeführt, die für das Produkt ProductBrand; AnwendungsserverEnterprise Edition 8.12005Q2Update 2 behoben wurden.
Fehlernummer |
Beschreibung |
---|---|
4842830 |
Der Ausnahmefehler “ComStream is closed” erreicht den JDBC-Client. |
4847716 |
Die Verwendung von execute/executeUpdate zum Einstellen des Festlegungsmodus wird nicht empfohlen, da dies zu unerwünschtem Verhalten führen kann. Verwenden Sie dazu den standardmäßigen JDBC-Befehl setAutocommit(). |
4861326 |
Der Anweisungspool erkennt CREATE SCHEMA nicht als implizites SET SCHEMA. |
4891060 |
Die Listener ignorieren die Adressanweisung, wenn sie Sockets abhören. |
5042351 |
Nach dem Hinzufügen von neuen Knoten werden neu erstellte Tabellen nicht auf die hinzugefügten Knoten verteilt. |
5061316 |
Abfragen bezüglich einer neu fragmentierten Tabelle mit HADB-E-01792 schlagen u. U. fehl: Replikation wurde gelöscht. Die Abfrage muss erneut durchgeführt werden. |
5063175 |
hadbm create sollte einen Fehler zurückgeben, wenn Host sowohl mit einzelnen als auch mit mehrfachen Netzen verwendet wird. |
5079029 |
Das Aufheben der Registrierung eines Pakets auf einem einzelnen Host kann fehlschlagen und folgenden Fehler ausgeben: “The software package is in use by a database instance and can not be removed” |
5094611 |
Managementoperationen, für die eine Schreibtransaktion im Administrations-Repository geöffnet werden muss, können das System in sehr seltenen Fällen zum Stillstand bringen, da sie darauf warten, dass die Transaktion geöffnet wird. |
5103186 |
Fehler beim Starten von NSUP, wenn unter Windows 2003 ein Netz ausgefallen ist. |
6225613 | |
6271063 |
Installation/Entfernen des HADB c-Pakets (Solaris: SUNWhadbc, Linux: sun-hadb-c), Version symlink /opt/SUNWhadb/ führt zu einem Fehler. |
6174781 |
Der Status des Befehls hadbm – Es ist möglicherweise zu erkennen, dass Knoten den Status nodestate gleich Unbekannt für kurze Zeit nach dem Neustart der Management-Agenten aufweisen. |
6175436 |
Wenn hadbm addnodes oder hadbm refragment fehlschlägt und den Fehler HADB-E-11747 aufweist: Die Knotengruppe all_nodes existiert bereits; führen Sie hadbm refragment erneut aus. |
61746766179084 |
Fehler beim Ausführen von configure-ha-cluster. |
6178228 6179010 |
Fehler bei configure-ha-cluster |
6181845 |
Es ist unter Windows nicht möglich, Datengeräte zu erstellen, die größer als 2 GB sind. |
6189189 |
export-http-lb-config erstellt nicht den Dateinamen loadbalancer.xml , wenn ein absoluter Pfad angegeben wird. |
6198225 |
Der QuickStart Guide enthält einen Druckfehler, d. h. eine Satzwiederholung. |
6195779 |
Die Werte der Optionen einiger Filter-Dropdown-Listen sind nicht internationalisiert. |
6196741 |
Das derzeitige Upgrade der im Bundle befindlichen J2SE-Komponente funktioniert nicht ordnungsgemäß, wenn ein Upgrade auf J2SE 1.4.x durchgeführt wird. |
6207616 |
Wenn ein Host ausgefallen ist, reagiert der Befehl hadbm u. U. minutenlang nicht mehr, wenn er eine Verbindung zum Management-Agenten herstellen muss. |
6212791 |
Beim Klicken auf einen Baumknoten werden in der rechten Fensterhälfte keine Elemente angezeigt. |
6216096 |
Eine nicht mehr reagierende Transaktion kann aufgrund des Fehlers “log buffer full” und einer Vielzahl von Transaktionsabbrüchen zu einem Knoten-Crash führen. |
6225613 |
Uneinheitliche LOB-Größe in executeUpdate() |
6227502 |
Initialisierungsfehler in EJB Timer Service sollten nicht als SEVERE protokolliert werden. |
6228789 |
Der Befehl hadbm delete schlägt fehl. |
6230415 |
HADB-E-21070: Der Vorgang konnte nicht innerhalb des Zeitlimits ausgeführt werden. Er wurde jedoch nicht abgebrochen und wird evtl. zu einem späteren Zeitpunkt beendet. |
6230792 |
hadbm:Fehler 22009: Der ausgegebene Befehl hatte in den letzten 300 Sekunden keinen Fortschritt. |
6232347 |
dropandcreatetables ist für asdamin deploy --help nicht ganz korrekt. |
6232838 |
Durch unnötige Protokollaufrufe wird die Skalierung des Anwendungsservers verhindert. |
6232974 |
Der Installer konnte keinen Knoten-Agent erstellen, als die Aktualisierung von Platform Edition 8.0 auf Enterprise Edition 8.1 durchgeführt wurde. |
6233142 |
Bei der Installation/Deinstallation von HADB sollte der Softlink /opt/SUNWhadb/4 immer beibehalten werden, aber dies war nicht immer der Fall. |
6233276 |
Die Formularautorisierung funktioniert nicht für den URL -pattern /*.jsp. |
6233469 |
Falscher Hilfetext in der asadmin-Hilfe. |
6233476 |
Falscher Hilfetext für update-file-user und ähnliche Befehle. |
6237567 |
Fehlender Schlüssel adminObjectStep2PageHelp im Fenster für die Erstellung der Ressourcen des Administrationsobjekts. |
6238477 |
Fehler beim Auflösen von EJB-Referenzen von "corba name" in derselben Anwendungsserver-Instanz. |
6239630 |
Fehler beim ordnungsgemäßen Zuweisen einer bestimmten Entity-Bean. |
6239837 |
Falsche Einheit und falscher Standardwert für Reconnect Interval in Administration für den JMS-Befehl server-config. |
6240661 |
Einige Meldungen bleiben im Gebietsschema auf Englisch. |
6241311 |
Der Hinweis für das Feld "Pool Idle Timeout" ist falsch. |
6241368 |
Der Login-Bildschirm und die Online-Hilfe von Admin Console beziehen sich nie auf die Browser-Sprache Englisch. |
6243395 |
Die Transaktionswiederherstellung funktioniert nicht mit einer JMS- und JDBC-Ressource. |
6245922 |
Application Server stürzt ständig ab. |
6246426 |
Durch die Erweiterung von JAR-Dateien in WEB-INF/lib werden Inhalte offengelegt, die verborgen sein müssten. |
6249637 |
Zur Änderung von Eigenschaften des JDBC-Verbindungspools ist ein Neustart erforderlich. |
6249662 |
Der Befehl Proxy-auth-cert ist nicht ordnungsgemäß formatiert. |
6250989 |
SOAP-Element.addChildElement fügt ein unvollständiges Element ohne Markups hinzu. |
6252187 |
Die Hochverfügbarkeits-Einzelanmeldung (High Availability) propagiert Principals zwischen verschiedenen Bereichen. |
6252810 |
configure-ha-persistence in Online-Dokumentation (Man Pages) ist nicht auf dem neuesten Stand. |
6253735 |
QuickStart enthält keine Hochverfügbarkeitsinformationen. |
6254393 |
QuickStart im Bundle enthält einen Link auf veraltete Versionshinweise. |
6254462 |
NPE wird durch Verbindungsvalidierungscode nach Datenbank-Neustart verworfen. |
6255253 |
Der Link "How to Buy" in der Bundle-Dokumentation enthält einen falschen URL. |
6255440 |
Performance-Verbesserung für die Synchronisation. |
6255458 |
Druckfehler in delete-virtual-server. |
6255524 |
Die ANT-Task UpdateTask funktioniert nicht mit ANT 1.6.2. |
6255564 |
Der durch Upgrade aktualisierte Domänenstart schlägt aufgrund eines Administrationsbenutzer-Authentifizierungsfehlers nach dem Upgrade der Platform Edition auf die Enterprise Edition fehl. |
6258844 |
Die Dateibereich-Benutzeranmeldung funktioniert nicht nach dem Upgrade auf 8.1, Update 1. |
6258997 |
Korrekte Beschreibung für die Option --secure in der Online-Dokumentation (Man Pages) der Befehlszeilenschnittstelle. |
6259125 |
Die Dokumentation für asadmin get ist inadäquat und verwirrend. |
6262564 |
PrivateKeyProcessor unterstützt kein Abrufen durch keyIdentifier. |
6262824 |
Solaris 10: Durch Stoppen eines Management-Agenten über das Skript ma-initd in einer globalen Zone wird ebenfalls der Management-Agent in der lokalen Zone gestoppt. |
6263684 |
Das Linux RPM-Patchgenerierungsskript erfordert manuelle Änderungen in der README. |
6263686 |
Die svr4-Patch-Erzeugung fügt in die README falsche Einträge ein. |
Das Skript package-appclient ist beschädigt. |
|
6264969 |
Die Einrichtung aller PointBase verwendenden AS-Samples ist fehlgeschlagen: Fehler beim Upgrade der Datenbank auf Version 5.1. |
6265687 |
Das Grafikabbild des Installers verfügt über die falsche Produktversion. |
6266183 |
High Availability-Testfehler: Der Bereichsname nach dem Neustart enthält den Wert null. |
6267410 |
Ausnahmefehler bei session.invalidate(), wenn die Protokollebene auf FINE eingestellt wurde. |
In diesem Abschnitt werden weitere wichtige Informationen zu der in Anwendungsserver 8.1 enthaltenen HADB-Implementierung erläutert.
Der neue Management-Befehl hadbm setadminpassword wurde bereitgestellt, um das zur Datenbankadministration verwendete Passwort ändern zu können. Der Befehl wird mit Optionen verknüpft, die angeben, welcher Management-Agent verwendet werden soll, und die das alte und neue Passwort enthalten. Weitere Informationen finden Sie in der Online-Dokumentation ( Man Page) hadbm setadminpassword.
Der vorhandene Management-Befehl hadbm listpackages wurde geändert. Vorher war der Befehl mit keinen Operanden verknüpft und hat alle Pakete in der relevanten Management-Domäne aufgelistet. Durch die Änderung wurde ein optionaler Paketnamen-Operand eingeführt, der lediglich Pakete mit dem betreffenden Namen auflistet. Wenn der Operand nicht angegeben wird, werden alle Pakete aufgelistet. Weitere Informationen finden Sie in der Online-Dokumentation ( Man Page) hadbm listpackages.
Der vorhandene Management-Befehl hadbm createdomain wurde geändert. Der Operand hostlist wurde erweitert. Er gibt jetzt auch die Portnummer des Management-Agenten an. Auf diese Weise wird die Domäne lediglich mithilfe des Operanden hostlist vollständig spezifiziert. Das alte Verhalten wird aus Gründen der Rückwärtskompatibilität immer noch unterstützt. Weitere Informationen finden Sie in der Online-Dokumentation (manpage) hadbm createdomain.
Einige Fehlermeldungen des Managementsystems wurden geändert. Die Änderungen dienen dazu, Verständlichkeit, Einheitlichkeit und Genauigkeit der Fehlermeldungen zu verbessern. Die eigentlichen Änderungen werden in diesen Versionshinweisen nicht aufgelistet.
Das Installations- und Deinstallationsverhalten wurde geringfügig geändert. Bei der Installation bzw. Deinstallation von HADB sollte immer der Softlink /opt/SUNWhadb/4 erhalten bleiben. Dies war jedoch nicht immer der Fall:
Die Möglichkeit zur Eingabe von Passwörtern in der Befehlszeile als Befehlsoption wurde verworfen. Dies ist für alle hadbm-Befehle relevant, die Passwörter als Befehlszeilenoptionen annehmen können. Für hadbm-Befehle gab es vorher folgende Methoden, um ein Passwort einzugeben:
als Passwortdatei
als Befehlszeilenoption
als interaktive Eingabe
Da Methode 2 (die Befehlszeilenoption) als unsicher erachtet wird, wurde sie verworfen. Eine Warnmeldung wird ausgegeben, wenn ein Passwort auf diese Weise eingegeben wird. Verwenden Sie stattdessen Methode 1 (Passwortdatei) oder Methode 3 (interaktive Ausgabe). Die Verwendung eines Passworts in der Befehlszeile wird in der nächsten Version überflüssig. Dies gilt für alle hadbm-Befehle, die eine Befehlszeilen-Passwortoption annehmen.
HADB wurde aktualisiert und kann jetzt JGroups Version 2.2 verwenden. Der Quellcode des Programms wird zusammen mit HADB verteilt. Zur Unterstützung von Online-Upgrades von vorherigen HADB-Versionen sind im Lieferumfang von HADB sowohl JGroups 2.1 als auch 2.2 vorhanden. Für JGroups 2.1 wird nur der Byte-Code mitgeliefert.
Wenn Sie HADB für eines der folgenden Dateisysteme konfigurieren möchten, müssen Sie einige wichtige Informationen beachten:
ext2 und ext3– HADB unterstützt ext2- und ext3-Dateisysteme für Red Hat Application Server 3.0. Für Red Hat Application Server 2.1 unterstützt HADB nur das ext2-Dateisystem.
Veritas– Wenn Sie das Veritas-Dateisystem unter Solaris einsetzen, wird die Nachricht “WRN: Direct disk I/O mapping failed“ in die Verlaufsdatei geschrieben. Die Meldung weist darauf hin, dass HADB kein direktes I/O für Daten- und Protokollgeräte aktivieren konnte. Direktes I/O ist eine Performance-Verbesserung, die die CPU-Kosten für das Schreiben von Diskseiten verringert. Das Prinzip führt auch dazu, dass weniger Verwaltungsaufwand für unreine Datenseiten im Betriebssystem erforderlich ist.
Um direktes I/O zusammen mit dem Veritas-Dateisystem zu verwenden, wählen Sie eine der folgenden Vorgehensweisen:
Erstellen Sie die Daten- und Protokollgeräte unter einem Dateisystem, für das die Option mincache=direct gilt. Die Option wird auf alle unter diesem Dateisystem erstellten Dateien angewendet. Weitere Informationen finden Sie in der Beschreibung des Befehls mount_vxfs(1M).
Verwenden Sie Toll Veritas Quick I/O, um direktes I/O auf die Dateien des Dateisystems anzuwenden. Weitere Informationen finden Sie im VERITAS File System 4.0 Administrator's Guide for Solaris.
Diese Konfigurationen wurden nicht mit Anwendungsserver 8.1 2005Q2 Update 2 getestet.
Informationen über Installation und Konfiguration von HADB mit der Anwendungsserver-Software finden Sie im Anwendungsserver Enterprise Edition High Availability Administration Guide.
Die Benutzer müssen HADB-Verlaufsdateien, Management-Agent-Konfigurationsdateien, Protokolldateien und Repository sowie alle Datengeräte außerhalb des Installationspfads abgelegt haben. Sollte dies nicht der Fall sein, muss dies noch vor dem Upgrade erfolgen. So verschieben Sie Management-Repository- und Konfigurationsdateien:
Beenden Sie alle alten Management-Agenten und führen Sie die HADB-Knoten weiter aus.
Verschieben Sie an jedem Host das Repository-Verzeichnis an den neuen Pfad.
Kopieren Sie auf jedem Host das Verzeichnis dbconfig an den neuen Pfad.
Aktualisieren Sie auf jedem Host die Datei mgt.cfg und wählen Sie den korrekten Pfad für dbconfig und das Repository-Verzeichnis.
Starten Sie die Management-Agenten unter Verwendung der aktualisierten Datei mgt.cfg.
Zur Aufrüstung von HADB-Version 4.4.x auf Version 4.4.2-7 gehen Sie wie folgt vor:
Führen Sie die oben genannten Tasks vor dem Upgrade nach Bedarf aus.
Installieren Sie HADB-Version 4.4.2-7 auf allen HADB-Hosts (in einem anderen Pfad als Version 4.4.x, zum Beispiel unter /opt/SUNWhadb/4.4.2-7).
Installieren Sie HADB-Version 4.4.2-7 auf den hadbm-Client-Hosts, wenn diese sich von den HADB-Hosts unterscheiden.
Beenden Sie alle Management-Agenten, die auf den HADB-Hosts ausgeführt werden.
Starten Sie die Management-Agent-Prozesse mithilfe der Software der neuen Version, jedoch mit den alten Konfigurationsdateien. Für die verbleibenden Schritte verwenden Sie den Befehl hadbm, der im bin-Verzeichnis der neuen Version zu finden ist.
Registrieren Sie das Paket in der Management-Domäne (der Standardpaketname lautet V4.4, sodass evtl. ein anderer Paketname erforderlich ist, um Konflikte mit vorhandenen Paketen zu vermeiden, die denselben Namen tragen):
hadbm registerpackage --packagepath=/opt/SUNWhadb/4.4.2-7 V4.4.2-7 |
Führen Sie den Befehl hadbm listpackages aus und prüfen Sie, ob das neue Paket in der Domäne registriert ist.
Starten Sie die Datenbank mit der neuen hadbm-Version 4.4.2-7 neu. Wenn es erforderlich ist, die Geräte- und Verlaufsdateien zu verschieben, führen Sie ein Online-Upgrade aus und legen dabei in einem Schritt neue Pfade für Geräte und Verlaufsdateien fest:
hadbm set packagename=V4.4.2-7,devicepath=new_devpath, historypath=new_histpath |
Wenn sich die Geräte und Verlaufsdateien anderenfalls bereits außerhalb des Installationsverzeichnisses befinden, führen Sie den folgenden Befehl aus, der lediglich einen Bilddurchlauf-Neustart der Knoten auslöst:
hadbm set packagename=V4.4.2-7 Datenbankname |
Prüfen Sie (mithilfe des Befehls hadbm status), ob der Datenbankstatus "running" lautet und ob die Datenbank normal funktioniert und die Client-Transaktionen übermittelt.
Wenn alles funktioniert, kann die alte Installation später entfernt werden. Bevor Sie die Registrierung des alten Pakets aufheben, entfernen Sie alle Verweise auf das alte Paket aus der maRepository. Anderenfalls schlägt der Befehl hadbm unregisterpackage fehl und gibt die Fehlermeldung "package in use" aus.Eine Dummy-Neukonfigurationsoperation, z. B. hadbm set connectiontrace= wie voriger Wert entfernt alle Verweise auf das alte Paket. Heben Sie jetzt die Registrierung des alten Pakets auf:
hadbm unregisterpackage [--hosts=Hostliste] alter Paketname |
Entfernen Sie die alte Installation aus dem Dateisystem.
Um unter Solaris zu testen, ob das Upgrade erfolgreich war, prüfen Sie, ob das Upgrade ordnungsgemäß durchgeführt wurde:
Vergewissern Sie sich, dass die laufenden Prozesse die neuen Binärdateien verwenden. Prüfen Sie in allen HADB-Knoten Folgendes:
neuer Pfad/bin/ma -v neuer Pfad/bin/hadbm -v |
Prüfen Sie, ob die Datenbank ausgeführt wird. Der folgende Befehl sollte zeigen, dass alle HADB-Knoten den Status “running” aufweisen.
neuer Pfad/bin/hadbm status -n |
Vergewissern Sie sich, dass Produkte mit Verwendung von HADB ihre Zeiger so geändert haben, dass sie auf den neuen HADB-Pfad verweisen.
Die Produkte mit Verwendung von HADB können ihre Upgrade-Tests ausführen, um zu prüfen, dass das HADB-Upgrade ebenfalls funktioniert.
Wenn nach einem Online-Upgrade die neue Version nicht ordnungsgemäß funktioniert, wechseln Sie wieder zur Verwendung der vorherigen HADB-Version. Wenn jedoch eine Änderung am Management-Agent-Repository durchgeführt wurde, kann die HADB selbst heruntergestuft werden. Allerdings muss der neue Management-Agent weiter ausgeführt werden.
In diesem Abschnitt werden zusätzliche Informationen über HADB-Bereitstellung und Upgrade aufgeführt.
Speichern Sie Geräte-, Protokoll- und Verlaufsdateien nur auf lokalen Festplatten. Verwenden Sie keine entfernt bereitgestellten Dateisysteme.
Wenn mehrere Knoten auf einem Host platziert wurden, wird empfohlen, dass die Geräte zu allen Knoten der verschiedenen Festplatten gehören. Anderenfalls würde die Leistung durch die Konkurrenzsituation zwischen den Festplatten herabgesetzt werden. Symptome für dieses Problem sind in den Verlaufsdateien anhand von Meldungen ersichtlich wie BEWARE - last flush/fputs took too long. Wenn ein Knoten über mehrere Datengerätedateien verfügt, wird empfohlen, separate Festplatten für diese Gerätedateien zu verwenden.
Verwenden Sie lokale Festplatten (möglichst eine andere als die für Datengeräte verwendete Festplatte), um HADB-Binärdateien auf HADB-Hosts zu installieren. NFS-Verzögerungen oder Zugriffskonflikte können zu Knotenneustarts mit der Warnung "Process blocked for nnn, max block time is nnn" in den Verlaufsdateien führen.
Legen Sie die HADB-Geräte, Verlaufsdateien, Management-Agent-Verzeichnisse und agent config-Dateien nicht im HADB-Paketpfad ab. Dies führt zu Problemen beim Upgrade auf neuere Versionen sowie beim Löschen des alten Paketpfads.
Diese HADB-Version wird offiziell für maximal 28 Knoten unterstützt, und zwar für 24 aktive Datenknoten mit 4 Ersatzknoten.
Es wird empfohlen, dieselbe Version für den JDBC-Treiber und den HADB-Server zu verwenden.
IPv6 wird nicht unterstützt, sondern lediglich IPv4.
Die Länge der Befehlszeile unter Windows ist auf 2048 Byte beschränkt.
Das Netzwerk muss für UDP Multicast konfiguriert sein.
Aufgrund des übermäßigen Swappings von RedHat Enterprise Linux 3.0, Updates 1 bis 3, empfehlen wir es nicht als Bereitstellungsplattform. Das Problem wurde in RedHat Enterprise Linux 3.0, Update 4 behoben.
Möglichkeit, NSUP mit Echtzeit-Priorität auszuführen.
Die Prozesse des Knoten-Supervisors (NSUP) (clu_nsup_srv ) stellen die hohe Verfügbarkeit von HADB mithilfe des termingemäßen Austauschs von "heartbeat"-Nachrichten sicher. Die zeitliche Koordinierung wird beeinträchtigt, wenn ein NSUP mit anderen Prozessen gemeinsam untergebracht wird, da dies zu einem Ressourcenschwund führt. Die Folge sind eine falsche Netzwerkpartitionierung und Knotenneustarts (vorher wird die Warnung “Process blocked for n seconds” in den Verlaufsdateien ausgegeben), die zu abgebrochenen Transaktionen und anderen Ausnahmefehlern führen.
Um dieses Problem zu lösen, muss für clu_nsup_srv (unter Installationspfad/lib/server zu finden) das suid-Bit gesetzt sein und Eigentümer der Datei muss der Benutzer "root" sein. Dies wird manuell durch folgende Befehle erzielt:
# chown root clu_nsup_srv # chmod u+s clu_nsup_srv |
Dadurch wird der Prozess clu_nsup_srv, wenn er gestartet wird, als Benutzer root ausgeführt. Dies wiederum ermöglicht dem Prozess, sich selbst automatisch Echtzeit-Priorität nach dem Start zuzuweisen. Zur Vermeidung von Sicherheitsproblemen bei Verwendung von setuid wird die Echtzeit-Priorität ganz am Anfang festgelegt und der Prozess kehrt zur effektiven UID zurück, sobald die Priorität geändert wurde. Andere HADB-Prozesse senken ihre Priorität auf Zeitteilungspriorität ab.
Wenn NSUP die Echtzeit-Priorität nicht setzen konnte, wird der Warnhinweis “Could not set realtime priority” (Unix: Fehler-Nr. wird auf EPERM gesetzt) ausgegeben, der in der Datei ma.log dargelegt ist, und der Prozess wird ohne Echtzeit-Priorität fortgesetzt.
Es gibt Fälle, in denen es nicht möglich ist, Echtzeit-Prioritäten festzulegen; beispielsweise in folgenden Situationen:
Bei Installation in nichtglobalen Zonen von Solaris 10
Wenn die Berechtigungen PRIV_PROC_LOCK_MEMORY (Ermöglichen, dass ein Prozess Seiten im physischen Speicher sperren kann) und/oder PRIV_PROC_PRIOCNTL in Solaris 10 aufgerufen werden.
Benutzer deaktivieren die Berechtigung setuid
Benutzer installieren die Software als tar-Dateien (Installationsoption nonroot für App.server)
Der Prozess clu_nsup_srv ist nicht CPU-konsumierend und sein Ressourcenbedarf ist gering. Wenn er mit Echtzeit-Priorität ausgeführt wird, beeinflusst er nicht die Leistung.
Konfiguration von IP-Netzwerk-Multipathing für HADB für Solaris (nur unter Solaris 9 getestet).
Sun empfiehlt, dass Solaris-Hosts, auf denen HADB ausgeführt wird, mit Netzwerk-Multipathing eingerichtet werden, um die höchstmögliche Netzwerkverfügbarkeit sicherzustellen. Die Einrichtung von Network-Multipathing wird in allen Einzelheiten im IP Network Multipathing Administration Guide behandelt. Wenn Sie sich dafür entscheiden, Multipathing mit HADB zu verwenden, lesen Sie im IP Network Multipathing Administration Guide den Abschnitt "Verwaltung von Netzwerk-Multipathing", um Multipathing einzurichten, bevor Sie mit dem Anpassen des Multipathing-Setups für HADB fortfahren (siehe unten). Der IP Network Multipathing Administration Guide gehört zur System Administrator Collection von Solaris 9 und kann von der Adresse http://docs.sun.com heruntergeladen werden.
Einrichten der Netzwerkschnittstellenfehler-Erkennungszeit
Damit HADB die Multipathing-Ausfallsicherung ordnungsgemäß unterstützt, darf die Netzwerkschnittstellenfehler-Erkennungszeit gemäß Spezifikation durch den Parameter FAILURE_DETECTION_TIME in /etc/default/mpathd 1000 Millisekunden nicht übersteigen. Bearbeiten Sie die Datei und ändern Sie den Wert dieses Parameters auf 1000, wenn der Originalwert höher ist:
FAILURE_DETECTION_TIME=1000 |
Damit die Änderung wirksam ist, geben Sie den folgenden Befehl aus:
pkill -HUP in.mpathd |
Mit HADB zu verwendende IP-Adressen
Gemäß Erläuterungen im Solaris IP Network Multipathing Administration Guide umfasst das Multipathing die Gruppierung physischer Netzwerkschnittstellen in Multipath-Schnittstellengruppen. Jede physische Schnittstelle in einer derartigen Gruppe ist mit zwei IP-Adressen assoziiert: einer physischen Schnittstellenadresse und einer Testadresse. Lediglich die physische Schnittstellenadresse kann zum Übertragen von Daten verwendet werden. Die Testadresse dient nur für interne Solaris-Zwecke. Wenn hadbm create --hosts ausgeführt wird, darf jeder Host mit nur einer physischen Schnittstellenadresse der Multipath-Gruppe spezifiziert werden.
Beispiel
Angenommen, Host 1 und Host 2 verfügen jeweils beide über zwei physische Netzwerkschnittstellen. Auf jedem Host werden diese beiden Schnittstellen als Multipath-Gruppe eingerichtet und beim Ausführen von ifconfig -a erhalten Sie Folgendes:
Host 1
bge0: flags=1000843<mtu 1500 index 5 inet 129.159.115.10 netmask ffffff00 broadcast 129.159.115.255 groupname mp0 bge0:1: flags=9040843<mtu 1500 index 5 inet 129.159.115.11 netmask ffffff00 broadcast 129.159.115.255 bge1: flags=1000843<mtu 1500 index 6 inet 129.159.115.12 netmask ffffff00 broadcast 129.159.115.255 groupname mp0 bge1:1: flags=9040843<mtu 1500 index 6 inet 129.159.115.13 netmask ff000000 broadcast 129.159.115.255 |
Host 2
bge0: flags=1000843<mtu 1500 index 3 inet 129.159.115.20 netmask ffffff00 broadcast 129.159.115.255 groupname mp0 bge0:1: flags=9040843<mtu 1500 index 3 inet 129.159.115.21 netmask ff000000 broadcast 129.159.115.255 bge1: flags=1000843<mtu 1500 index 4 inet 129.159.115.22 netmask ffffff00 broadcast 129.159.115.255 groupname mp0 bge1:1: flags=9040843<mtu 1500 index 4 inet 129.159.115.23 netmask ff000000 broadcast 129.159.115.255 |
Hier sind die physischen Netzwerkschnittstellen auf beiden Hosts, als bge0 und bge1 aufgelisteten Schnittstellen. Die als bge0:1 und bge1:1 aufgelisteten Schnittstellen sind Multipath-Testschnittstellen (sie werden daher im ifconfig-Output mit DEPRECATED gekennzeichnet). Siehe dazu auch den IP Network Multipathing Administration Guide.
Zum Einrichten von HADB in dieser Umgebung wählen Sie eine physische Schnittstellenadresse von jedem Host. In diesem Beispiel wählen wir 129.159.115.10 von Host 1 und 129.159.115.20 von Host 2. Zum Erstellen einer Datenbank mit einem Datenbankknoten pro Host verwenden Sie das folgende Argument für hadbm create:
--host 129.159.115.10,129.159.115.20 |
Zum Erstellen einer Datenbank mit zwei Datenbankknoten auf jedem Host verwenden Sie das folgende Argument:
--host 129.159.115.10,129.159.115.20,129.159.115.10,129.159.115.20 |
In beiden Fällen muss die Variable ma.server.mainternal.interfaces auf beiden Hosts auf 129.159.115.0/24 festgelegt werden.
Es ist nicht möglich, online von 4.2 oder 4.3 auf 4.4 upzugraden. Die Version 4.4 unterstützt jedoch Online-Upgrades für zukünftige Versionen. Zum Aufrüsten von 4.4.1 auf 4.4.2 gehen Sie wie folgt vor:
Installieren Sie 4.4.2 auf allen HADB-Hosts (in einem anderen Pfad als Version 4.4.1 – beispielsweise /opt/SUNWhadb/4.4.2-6).
Installieren Sie die neue Version auf den hadbm client-Hosts.
Beenden Sie alle Management-Agenten, die auf den HADB-Hosts ausgeführt werden.
Starten Sie die Management-Agent-Prozesse mithilfe der Software der neuen Version, jedoch mit den alten Konfigurationsdateien. Für die verbleibenden Schritte verwenden Sie den Befehl hadbm, der im bin-Verzeichnis der neuen Version zu finden ist.
Registrieren Sie das Paket in der Management-Domäne (der Standard-Paketname lautet hier V4.4, sodass evtl. ein anderer Paketname erforderlich ist, um Konflikte mit vorhandenen Paketen zu vermeiden, die denselben Namen haben):
hadbm registerpackage --packagepath=/opt/SUNWhadb/4.4.2-6 V4.4.2 |
Starten Sie die Datenbank mit der neuen Version neu (mit dem folgenden Befehl wird ein Bildlauf-Neustart der Knoten ausgeführt):
hadbm set packagename=V4.4.2 Datenbankname |
Prüfen Sie (mithilfe des Befehls hadbm status), ob der Datenbankstatus “running” lautet und ob die Datenbank normal funktioniert und die Client-Transaktionen übermittelt.
Wenn alles funktioniert, kann die alte Installation später entfernt werden:
Bevor Sie die Registrierung des alten Pakets aufheben, entfernen Sie alle Verweise auf das alte Paket aus der ma-Repository. Anderenfalls schlägt hadbm unregisterpackage fehl und gibt die Fehlermeldung "package in use" aus.Eine Dummy-Neukonfigurationsoperation, z. B. hadbm set connectiontrace=<wie voriger wert> entfernt alle Verweise auf das alte Paket. Heben Sie jetzt die Registrierung des alten Pakets auf:
hadbm unregisterpackage [--hosts=<host_list>] <old_package_name> |
Entfernen Sie die alte Installation aus dem Dateisystem (siehe HADB-Installationsanweisungen.
Es ist nicht möglich, einen sekundären Index einer Tabelle vom Typ UNIQUE zu erstellen.
Der Ausdruck (DISTINCT column) ist in einem Aggregatausdruck nicht zulässig; es sei denn, es handelt sich um den einzigen ausgewählten Ausdruck.
Alle Tabellen müssen mit einer Primärschlüssel-Spezifikation erstellt werden (d. h., Tabellen ohne Primärschlüssel werden nicht unterstützt).
FULL OUTER JOIN wird nicht unterstützt.
IN-Unterabfragen, bei denen es sich um Tabellenunterabfragen handelt, werden nicht unterstützt; beispielsweise:
SELECT SNAME FROM S WHERE (S1#,S2#) IN (SELECT S1#,S2# FROM SP WHERE P#='P2') |
Andere Beschränkungen als NOT NULL und PRIMARY KEY werden nicht unterstützt.
Es besteht die Möglichkeit, einer Ressource einen neuen Eigentümer zuzuweisen. Wenn dieser Schritt durchgeführt wird, werden jedoch die dem aktuellen Eigentümer gewährten Zugriffsrechte nicht auf den neuen Eigentümer übertragen.
Zwei oder mehr verschachtelte NOT EXISTS-Unterabfragen, bei denen die einzelnen Unterabfragen nicht (direkt) mit der äußeren Ebene der Abfragen in Wechselbeziehung stehen, werden nicht unterstützt.
Spalten-Zugriffsrechte werden nicht unterstützt.
Zeilenwert-Constructors sind nur in einer VALUES-Bedingung zulässig.
Unterabfragen werden in Zeilenwert-Constructors nicht als Wertausdrücke akzeptiert.
Die folgenden Datentypen können beim Erstellen von Primärschlüsseln nicht verwendet werden:
REAL
FLOAT
DOUBLE PRECISION
DECIMAL
NUMERIC
In Application Server ist Folgendes enthalten: Lastenausgleich für HTTP-, IIOP- und JMS-Clients, Failover-Unterstützung für HTTP-Sitzungen, Unterstützung für EJB-Clustererstellung und -Failover, hochverfügbare EJB-Timer, Wiederherstellung verteilter Transaktionen, Unterstützung für parallele Anwendungsaktualisierungen sowie eine Hochverfügbarkeitsdatenbank zur Speicherung des Übergangsstatus von J2EE-Anwendungen.
Die Hochverfügbarkeit ermöglicht den Failover-Schutz für Application Server-Instanzen in einem Cluster. Wenn eine Application Server-Instanz zusammenbricht, übernimmt eine andere Application Server-Instanz die Sitzungen des nicht mehr verfügbaren Servers. Sitzungsinformationen werden in der HADB gespeichert. Die HADB unterstützt Persistenzspeicherung für HTTP-Sitzungen, Stateful Session Beans und Single Sign On-Anmeldeinformationen.
Anwendungsserver wird auf verschiedene Weise geliefert. In der folgenden Tabelle wird das jeweilige Produkt aufgeführt, das für die verschiedenen Liefermechanismen ausgeliefert wird:
Application Server-Produktfreigabe |
Liefermechanismus |
---|---|
Anwendungsserver Enterprise Edition -Komponente innerhalb des Sun Java Enterprise-Systems. |
Dateibasierte Verteilung Erforderliche Patch-Installation durch Sunsolve |
Eigenständiges Produkt AnwendungsserverStandard und Enterprise Edition |
Dateigestützte und paketgestützte Verteilung |
In der nächsten größeren Version von Sun Java System Anwendungsserver Enterprise Edition werden die folgenden Inkompatibilitäten eingeführt:
Der HTTP-Dienst wird zwar weiterhin einen DNS-Cache für eine bessere Leistung verwenden, die Überwachung des DNS-Cache steht jedoch nicht mehr zur Verfügung.
Die Unterstützung des HTTP-Dateicachings wird mit neuen Funktionen ausgestattet, was zu Änderungen in der Konfiguration und Überwachung führt.
Das Format des Zugriffsprotokoll-Rotationssuffixes wird in das Format geändert, das von den Datums- und Uhrzeitobjekten, wie unter http://java.sun.com/j2se/1.5.0/docs/api/java/text/SimpleDateFormat.html angegeben, unterstützt wird. Der Standardwert dieser Freigabe, “%YYYY;%MM;%DD;-%hh;h%mm;m%ss;s ,” wird zwar weiterhin unterstützt, es werden jedoch keine anderen Variationen unterstützt.
Alle nicht mehr unterstützten Elemente, Attribute und Eigenschaften von domain.xml werden durch Warnhinweise im Serverprotokoll und in der Upgrade-Protokolldatei als verworfen markiert.
Der server.http-service.dns-Knoten steht in der Überwachungsansicht nicht mehr zur Verfügung.
Einige der Attribute des server.http-service.file-cache -Knotens werden entfernt. Folglich schlägt jeder asadmin-Überwachungsbefehl fehl, der versucht, auf die entfernten Attribute dieses Knotens zuzugreifen.
Das Bereitstellungswerkzeug (Deploytool) steht nicht mehr zur Verfügung. Eine entsprechende Funktion ist über die NetBeans-IDE verfügbar. Weitere Informationen und eine Planung einer Migration finden Sie im J2EE 1.4-Lernprogramm für NetBeans 4.1 unter http://www.netbeans.org/kb/41/j2ee-tut/index.html.
Der Verifizierer-GUI-Modus (aufgerufen durch verifier -u) steht nicht mehr zur Verfügung. Eine entsprechende Funktion ist über die NetBeans-IDE verfügbar.
Der Standardmodus für die Anwendungsprüfung ändert sich bei der Verwendung des Verifiziererwerkzeugs von "Verify J2EE rules" zu "Verify J2EE rules and Sun Application Server Configuration Rules".Der Verifier testet also standardmäßig, ob eine Anwendung den J2EE-Regeln entspricht und ob sie so konfiguriert ist, dass Sun Application Server ausgeführt werden kann. Der Verifizierer-Befehl verfügt über einen Befehlszeilenschalter, um eine Anwendung nur für J2EE-Regeln zu testen.
In der aktuellen Version stehen die JAR- und Verzeichniseinträge, die den Attributen classpath-prefix , server-classpath und classpath-suffix von domain.xml (Anwendungsserver-Konfigurationsdatei) hinzugefügt wurden, im JVM-Systemklassenpfad zur Verfügung. Eine Anwendung, die sich nach diesem Verhalten richtet, verwendet unter Umständen die folgenden Methoden der Klasse java.lang.ClassLoader, um auf Klassen oder andere Ressourcen aus dem JVM-Systemklassenpfad zuzugreifen:
getSystemClassLoader()
getSystemResource()
getSystemResourceAsStream()
getSystemResources
In der nächsten Version werden die JAR- und Verzeichniseinträge, die classpath-prefix, server-classpath und classpath-suffix hinzugefügt wurden, nicht mehr im JVM-Systemklassenpfad zur Verfügung stehen. Wenn eine Anwendung eine der oben beschriebenen Methoden verwendet, wird empfohlen, eine entsprechende Methode zu verwenden, bei der nicht davon ausgegangen wird, dass die Ressourcen im Systemklassenpfad zur Verfügung stehen. Die entsprechenden Methoden, die nicht vom JVM-Systemklassenpfad abhängig sind, stehen in java.lang.ClassLoader zur Verfügung und sollten gegebenenfalls verwendet werden; zum Beispiel:
java.net.URL url = ClassLoader.getSystemResource ("com/acme/tools/tools.properties");
java.net.URL url = this.getClass().getClassLoader().getResource ("com/acme/tools/tools.properties");
Falls es nicht möglich ist, den Code zu ändern, können Sie eine neue Konfigurationsoption verwenden, die in der nächsten Version hinzugefügt wird, um den JVM-Systemklassenpfad festzulegen.
Die Sicherheit für Webservices kann mit den Dateien wss-client-config.xml und wss-server-config.xml konfiguriert werden. Beachten Sie, dass der Inhalt und die Namen dieser Konfigurationsdateien instabil sind und sich wahrscheinlich ändern werden. Die entsprechende Funktionalität steht weiterhin zur Verfügung.
Sun Java System Anwendungsserver Enterprise Edition 8.1 2005Q2 unterstützt die J2EE 1.4-Plattform. In der folgenden Tabelle werden die erweiterten APIs beschrieben, die für die J2EE 1.4-Plattform verfügbar sind:
Tabelle 2–5 Auf der J2EE 1.4-Plattform verfügbare APIs
API |
Beschreibung |
Komponenten |
|
Anwendung und Anwendungsclient |
Implementierung von Standard-Bereitsstellungsdeskriptoren durch XML-Schemata. |
Enterprise JavaBeans (EJB) 2.1 |
Timer-Dienst und EJB-Webservice-Endpunkt |
Java Servlet 2.4 |
Webservice-Endpunktfilter |
JavaServer Pages (JSP) 2.0-Architektur |
Sprache für Ausdrücke und Tag-Bibliothek |
J2EE Connector Architecture 1.5 |
Eingangs-Ressourcenadapter und Erweiterungsfähigkeit für Java Message Service (JMS) |
Webdienste |
|
Java Web Services Developer Pack 1.5 |
Integrierte Tool-Sammlung für das Erstellen, Testen und Bereitstellen von XML-Anwendungen, Webservices und Webanwendungen. |
Java-API für XML-basiertes Remote Procedure Calls (JAX-RPC) 1.1 |
Mapping für WSDL- und Java-Technologie und Unterstützung für die Entwicklung von Webservice-Clients und -Endpunkten. |
WS-I Basic Profile 1.0 |
Ermöglicht die Interoperabilität für WSDL und SOAP. |
SOAP mit Anhangs-API für Java (SAAJ) 1.2 |
Eine API für SOAP-basiertes Messaging; unterstützt die Erstellung von SOAP-Nachrichten mit Anhängen |
Java-API für XML Registries (JAXR) 1.0 |
Eine einheitliche Standard-API für den Zugriff auf XML-Registrierungen, beispielsweise APIs für Universal Description Discovery and Integration (UDDI und ebXML). |
Weitere |
|
J2EE Deployment 1.1 |
Standard-APIs, die das Bereitstellen von J2EE-Komponenten und -Anwendungen ermöglichen. |
J2EE Management 1.0 |
Definitionen für das Informationsmodell zum Verwalten der J2EE-Plattform. |
Java Management Extensions (JMX) 1.2 |
Standard-Verwaltungs-API |
Java Authorization Contract for Containers (JACC) 1.0 |
Definitionen von Sicherheitsverträgen zwischen J2EE Application Server und dem Provider für Autorisierungsrichtlinien |
Java API for XML Processing (JAXP) 1.2 |
API für Anwendungen zum Parsen und Transformieren von XML-Dokumenten; unterstützt auch die Verarbeitung von XML-Schemata |
JMS 1.1 |
Ein Messaging-Standard, mit dem J2EE-Anwendungskomponenten Nachrichten erstellen, senden, empfangen und lesen können; trägt auch zur Unterstützung von einheitlichen APIs für Warteschlangen und Topics bei |
JavaMail 1.3 |
Eine Reihe von abstrakten Klassen, die ein Mailsystem modellieren; enthält außerdem kleine Updates für die APIs |
Application Server enthält einen EJB-Hochleistungs-Container sowie Webcontainer und Webservices und unterstützt die gleichzeitige Meldungszustellung mit der Sun Java System Message Queue-Software.
Application Server unterstützt die horizontale Skalierbarkeit mittels Clustering von Server-Instanzen und Anfrage-Lastenausgleich. Außerdem wird eine in dieser Klasse ungeschlagene vertikale Skalierbarkeit erreicht, wodurch Großcomputer mit mehreren Prozessoren unterstützt werden können. Der integrierte Nachrichtenvermittler kann zur besseren Skalierbarkeit und Verfügbarkeit in Cluster aufgeteilt werden. Die Zugriffslast durch HTTP-Clients, RMI/IIOP-basierte Rich Client-Anwendungen, Webservice-Clients und JRM-Clients kann durch die Application Server-Cluster ausgeglichen werden.
Sun Java System Anwendungsserver Enterprise Edition 8.1 unterstützt die JavaServer Faces 1.1-Technologie. Die JavaServer Faces-Technologie besteht aus einem Satz an serverbasierten APIs, die den Komponenten der Benutzeroberfläche entsprechen und den Status, das Ereignis, die Verarbeitung und Eingabebestätigung der jeweiligen Komponenten verwalten. Die APIs legen außerdem die Seitennavigation fest und unterstützen Internationalisierung und Verfügbarkeit. Sie können angepasste Benutzerschnittstellenkomponenten mit einer benutzerdefinierten JSP-Tag-Bibliothek hinzufügen.
Beim Entwicklungsprozess mit JavaServer Faces-Technologie kann sich jedes Mitglied eines Entwicklungsteams auf einen Teil des Prozesses konzentrieren. Ein einfaches Programmiermodell verknüpft dann diese Teile, was zu einem viel effizienteren und einfacheren Entwicklungszyklus führt.