Bei dem Versuch, die Administrationsoberfläche von Sun ONE Application Server gemeinsam mit dem Standard-Browser des Betriebssystems Solaris 9 12/02 zu verwenden, wird die folgende Fehlermeldung angezeigt:
Unsupported Browser: Netscape 4.78 It is recommended that you upgrade your browser to Netscape 4.79 or Netscape 6.2 (or later) to run the Sun One Application Server Administrative UI. Those who choose to continue and not upgrade may notice degraded performance or unexpected behavior. |
Lösung: Verwenden Sie /usr/dt/bin/netscape6 anstatt /usr/dt/bin/netscape.
In einigen Versionen von Netscape NavigatorTM ist die Bearbeitung von Sun ONE Application Server-ACLs (Zugriffskontrolllisten) nicht möglich. Wenn Sie versuchen, ACL-Einträge zu bearbeiten, während Netscape Navigator 6.x oder 7.x läuft, können kurzzeitige Probleme auftreten.
Zum Beispiel:
Das Browserfenster verschwindet.
Der ACL-Bearbeitungsbildschirm wird nicht angezeigt.
Lösung: Wählen Sie eine der folgenden Problemlösungen:
Verwenden Sie entweder die unterstützte Version 4.79 von Netscape Navigator oder Microsoft Internet Explorer 6.0.
Bearbeiten Sie die ACL-Datei von Hand. Einzelheiten zur Formatierung von ACL-Dateien finden Sie in Sun ONE Application Server 7 Administrator's Guide.
Wenn Sie mit einem Oracle 9.2-Client auf eine Oracle 9.1-Datenbank zugreifen und auf eine Zeitmarkenspalte eine Zahlenspalte folgt, kann es zur Beschädigung von Daten kommen.
Dies ist möglicherweise darauf zurückzuführen, dass die Datei ojdbc14.jar im Zusammenhang mit einer Oracle 9.1-Datenbank verwendet wird. Durch die Patch-Installation kann diese Situation auf 32-Bit-Solaris-Systemen mit Oracle 9.1-Datenbank verbessert werden. Dieser JDBCTM-Treiber ist auf den Betrieb von Oracle mit JDKTM 1.4 ausgerichtet.
Lösung: Installieren Sie den Patch für Fehler (Bug) 2199718, den Oracle voraussichtlich auf der Oracle-Website zur Verfügung stellen wird, auf Ihrem Server.
Bei einer Persistence Manager Factory-Ressource, die über die Befehlszeilenschnittstelle erzeugt wurde, wird ein Prüffehler gemeldet. Wenn die Ressource in der Sun ONE Application Server-Administrationsschnittstelle angezeigt wird, erscheint die folgende Fehlermeldung.
ArgChecker Failure: Validation failed for jndiName: object must be non-null |
Lösung: Erstellen Sie wie folgt eine neue Persistence Management Factory-Ressource.
Erzeugen Sie einen jdbc-Verbindungspool mit Datenquelleninformationen für die Herstellung einer Verbindung zu einer Datenbank.
Erzeugen Sie eine jdbc-Ressource, um den Verbindungspool über eine Java Naming and Directory InterfaceTM (J.N.D.I.)-Suche auffindbar zu machen.
Erzeugen Sie eine Persistence-Management-Ressource mit der jdbc-Ressource, die in Schritt 2 erstellt wurde.
Der Wert any im Adressenattribut des iiop-listener-Elements in der Datei server.xml lässt die Überwachung aller in einem System verfügbaren Schnittstellen zu. Dies gilt sowohl für IPv4- als auch für IPv6-Schnittstellen. In der Standatdkonfiguration von Sun ONE Application Server weist das iiop-listener-Element jedoch den Adresswert 0.0.0.0 auf. Diese Standardkonfiguration überwacht keine IPv6-Schnittstellen. Gemäß dieser Konfiguration werden lediglich alle IPv4-Schnittstellen eines Systems überwacht.
Lösung: Verwenden Sie den Wert :: im Adressenattribut des iiop-listener-Elements in der Datei server.xml, um alle IPv4- und IPv6-Schnittstellen eines Systems zu überwachen.
Der Versuch, Sun ONE Application Server nach der Installation eines Zertifikats und der Aktivierung des Sicherheitsmechanismus neu zu starten, schlägt fehl. Es wird gemeldet, dass der Server kein Passwort empfangen hat.
Wenn SSL nicht aktiviert ist, werden Passwörter nicht in den Cache gestellt, und deshalb schlägt ein Neustartversuch fehl. Der Befehl restart unterstützt den Übergang zum SSL-fähigen Modus nicht.
Dieses Problem tritt beim ersten Neustart des Servers auf. Nachfolgende Neustartversuche sind davon nicht betroffen.
Lösung: Wählen Sie eine der folgenden Problemlösungen:
Wenn sich dieses Problem stellt, klicken Sie auf die Schaltfläche ‟Start“.
Um dieses Problem zu vermeiden, nehmen Sie stattdessen die folgenden Schritte vor:
Klicken Sie auf die Schaltfläche ‟Stop“.
Klicken Sie auf die Schaltfläche ‟Start“.
Enthält eine Anwendung sehr viele Enterprise JavaBeansTM-Komponenten, so stürzt der Anwendungsserver beim dynamischen Neuladen der Anwendung unter Umständen ab. Die dynamische Neuladefunktion wird von Entwicklern gerne zum schnellen Testen kleinerer Änderungen in Anwendungen verwendet. Das Problem ist darauf zurückzuführen, dass mehr Dateideskriptoren benötigt werden, als verfügbar sind.
Lösung: Nehmen Sie diese Schritte vor:
Erhöhen Sie den Grenzwert für Deskriptoren, indem Sie in die Datei /etc/system Zeilen in folgendem Format einfügen:
set rlim_fd_max=8192
set rlim_fd_cur=2048
Je nach der Größe der Anwendung können Sie größere oder kleinere Werte wählen.
Starten Sie das System neu.
Ist die Standard-Codierung eines Systems nicht UTF-8, so werden Multibyte-Zeichen in der Ausgabe von Application Server unter Umständen nicht richtig angezeigt.
Lösung: Öffnen Sie die Datei server.log in Ihrem Browser.
Wenn Sie über Sun ONE Application Administration ein externes zertifikat installieren, tritt bei dem Versuch, SSL über das auf dem externen Verschlüsselungsmodul installierte Zertifikat für den http-Listener zu aktivieren, ein Problem auf. Die Installation des Zertifikats verläuft zwar erfolgreich, doch wird der Nickname des Zertifikats in der Administrationsoberfläche nicht angezeigt.
Lösung: Nehmen Sie die folgenden Schritte vor.
Melden Sie sich bei dem System, auf dem die Sun ONE Application Server-Software installiert ist, als Administrator an.
Verknüpfen Sie den http-Listener mithilfe des Befehls asadmin mit dem auf dem externen Verschlüsselungsmodul installierten Zertifikat. Weitere Informationen zum Befehl asadmin entnehmen Sie bitte der Man-Page asadmin(1AS).
# asadmin create-ssl --user Administratorname --password Passwort \ --host Hostname --port Anschluss --type http-listener \ --certname Beispiel@apprealm:Server-Cert --instance Instanz \ --ssl3enabled=true --ssl3tlsciphers +rsa_rc4_128_md5 http-listener-1 |
Dieser Befehl stellt die Verknüpfung zwischen Zertifikat und Serverinstanz her. Er dient nicht zum Installieren des Zertifikats. Das Zertifikat wurde über die Administrationsschnittstelle installiert.
Es besteht nun zwar eine Verknüpfung zwischen dem Zertifikat und dem http-Listener, der http-Listener überwacht aber trotzdem im Nicht-SSL-Modus.
Aktivieren Sie SSL für den http-Listener. Verwenden Sie dazu den folgenden Befehl:
# asadmin set --user Administratorname --password Passwort \ --host Hostname --port Anschluss \ server1.http-listener.http-listener-1.securityEnabled=true |
Durch diesen Befehl wechselt der Überwachungsstatus der Serverinstanz von Nicht-SSL zu SSL. Nach diesen Schritten wird das Zertifikat in der Administrationsschnittstelle angezeigt.
Nun können Sie die Administrationsschnittstelle dazu verwenden, den http-Listener nach Belieben zu bearbeiten.
Wenn Sie die Sun ONE Application Server-Software im Betriebssystem Solaris 9 12/02 ausführen und den Befehl flexanlg aus /usr/appserver/bin verwenden, wird ein Öffnen-Fehler gemeldet.
ld.so.1: /usr/appserver/bin/flexanlg: fatal: libplc4.so:open failed: No such file or directory killed |
Lösung: Nehmen Sie diese Schritte vor:
Fügen Sie den folgenden Eintrag in die Datei LD_LIBRARY_PATH ein.
/usr/lib/mps
Führen Sie den Befehl flexanlg aus.
% /usr/appserver/bin/flexanlg
Dieses Problem trifft nicht auf Netzwerke zu, die ohne IPv6 arbeiten.
Die Sun ONE Application Server 7- und Admin Server-Instanzen verwenden standardmäßig IPv4. IPv4 wird von allen Betriebssystemen unterstützt, in welchen Sun ONE Application Server verfügbar ist. Auf Plattformen mit Unterstützung für IPv6 sind Änderungen in der Konfiguration von Sun ONE Application Server aus Konformitätsgründen erforderlich.
Wenn diese Konfigurationsänderungen durchgeführt werden sollen, müssen Sie sicher sein, dass IPv6-Unterstützung vorhanden ist. Falls die für IPv6 erforderliche Konfiguration auf ein System angewendet wird, das lediglich IPv4 unterstützt, können die Application Server-Instanzen voraussichtlich nicht starten.
Lösung: Nehmen Sie die folgenden Konfigurationsänderungen vor:
Starten Sie Admin Server.
Starten Sie die Administrationskonsole, indem Sie über einen Suchdienst eine Verbindung zum Admin Server HTTP-Host oder -Port herstellen.
Wählen Sie die für IPv6 zu konfigurierende Serverinstanz, zum Beispiel server1.
Erweitern Sie den Knoten der HTTP-Listener in der Verzeichnisbaumansicht.
Wählen Sie den für IPv6 zu konfigurierenden HTTP-Listener, zum Beispiel http-listener1.
Ändern Sie den Wert des IP-Adressenfelds im allgemeinen Bereich in ANY.
Setzen Sie den Familienwert im Bereich der erweiterten Einstellungen auf INET6.
Dadurch wird die IPv4-Unterstützung, solange keine IPv6-Adresse als IP-Adresse gewählt wird, nicht deaktiviert. Der IP-Adressenwert ANY trifft auf sämtliche IPv4- oder IPv6-Adressen zu.
Klicken Sie auf ‟Sichern“.
Wählen Sie im linken Feld die Serverinstanz.
Klicken Sie auf ‟Änderungen anwenden“.
Klicken Sie auf ‟Stop“.
Klicken Sie auf ‟Start“.
Der Server startet neu und setzt die Änderungen ein.
Wenn mehrmals versucht wird, eine Beispielanwendung nach der Vornahme kleiner Änderungen und dem erneuten Packen der Anwendung bereitzustellen, wird der folgende Fehler gemeldet:
Already Deployed |
Dieses Problem betrifft die meisten Beispielanwendungen, da sie das Dienstprogramm Ant und die Datei common.xml mit dem Ziel deploy verwenden. Bei dieser Kombination wird die Bereitstellung von Anwendungen mit der Registrierung von Ressourcen vermischt.
Lösung: Wählen Sie eine der folgenden Problemlösungen:
Für die Mehrzahl der Beispielanwendungen, die mit den build.xml-Dateien des Dienstprogramms Ant und der darunter befindlichen Datei common.xml arbeiten, geben Sie den folgenden Befehl ein:
% asant deploy_common |
Für alle anderen Beispielanwendungen geben Sie die folgenden Befehle ein:
% asant undeploy % asant deploy |
Der Manager für lokale Transaktionen, Local Transaction Manager, unterstützt keine Transaktionen mit definierter Zeitüberschreitungseinstellung. Wenn Sie das Attribut für die Länge der Zeitüberschreitung in Sekunden (timeout-in-seconds) im Transaktionsdienst-Element auf einen Wert ungleich 0 setzen, werden sämtliche lokalen Transaktionen als globale Transaktionen verarbeitet. Ein Zeitüberschreitungswert von 0 bedeutet, dass der Transaktionsmanager bei ausbleibender Reaktion der beteiligten Datenquelle auf unbestimmte Zeit wartet.
Wenn der Treiber der Datenquelle keine globalen Transaktionen unterstützt, kann es mitunter zu einem Fehlschlag lokaler Transaktionen kommen.
Lösung: Setzen Sie den Wert für timeout-in-seconds auf den Standardwert 0 zurück.
Für die Verwendung von Oracle JDBC-Optimierungen mit Container-Managed Persistence (CMP)-Beans muss classes12.zip im classpath-Suffixattribut der Datei server.xml angegeben werden. Fügen Sie die Datei classes12.zip nicht in das Standardverzeichnis für Fremdhersteller-Bibliotheken, instance/lib/, ein.
Lösung: Fügen Sie die Datei classes12.zip in das classpath-Suffixattribut der Datei server.xml ein.
Beim dynamischen Neuladen und Aufruf von Anwendungen kann es dann zu Berechtigungsproblemen kommen, wenn root der Eigentümer von Admin Server und ein anderer Benutzer als root der Eigentümer der Serverinstanz ist.
Lösung: Ändern Sie nach der Bereitstellung und Wiederbereitstellung des Moduls oder der Anwendung (mit oder ohne Vorkompilierungsoption) den Eigentümer für die nachfolgenden Verzeichnisse von root auf den Nicht-root-Benutzer. Der Nicht-root-Benutzer ist der Eigentümer der Serverinstanz.
Die Änderung des Eigentümers sollte dabei auf Grundlage des Anwendungstyps auf jedes Verzeichnis in der nachstehenden Liste rekursiv angewendet werden:
Domain-root/Serverinstanz /applications/j2ee-apps/Anwendungsname
Domain-root/Serverinstanz /applications/j2ee-modules/Modulname
Domain-root/Serverinstanz /generated/ejb/j2ee-apps/Anwendungsname
Domain-root/Serverinstanz /generated/jsp/j2ee-apps/Anwendungsname
Domain-root/Serverinstanz /generated/jsp/j2ee-modules/Modulname
Melden Sie sich als Superuser an.
Geben Sie für jedes zutreffende Verzeichnis den folgenden Befehl ein:
# chown -R Instanzeigentümer Verzeichnisname |
Wenn eine DNS-Suche nach einer IPv6-Adresse fehlschlägt, können RMI-IIOP (Remote Method Invocation-Internet Inter-ORB Protocol)-Clients IPv6-Adressen nicht handhaben.
Lösung: Richten Sie DNS (Domain Name Service) für die Suche nach IPv6-Adressen auf dem Bereitstellungssystem ein.
Wenn Sie in das Feld Only show entries with Multibyte-Zeichen eingeben und das Ereignisprotokoll durchsuchen, wird der Wert im Feld Only show entries with bei der Anzeige des Suchergebnisses verfälscht. Die Ursache hierfür ist die Konvertierung des Meldungsformats von UTF-16 zu UTF-8.
Lösung: Keine.