Bei Sun GlassFishTM Enterprise Server handelt es sich um einen mit der JavaTM-Plattform, Enterprise Edition (Java EE) 6 kompatiblen Server zur Entwicklung und Bereitstellung von Java EE-Anwendungen und Java Web Services. Der Einsatz dieses Servers zu Produktionszwecken ist kostenlos. Sun GlassFish Enterprise Server steht zur kostenlosen Entwicklung, Bereitstellung und für den Weitervertrieb zur Verfügung. Wenn Sie als Kunde am Weitervertrieb interessiert sind, wenden Sie sich an den Sun OEM-Vertrieb, um eine Weitervertriebslizenz zu erhalten.
Die Versionshinweise zu Sun GlassFish Enterprise Server v3 enthalten wichtige Informationen über die Version Enterprise Server v3, einschließlich Informationen über neue Funktionen, Hardware- und Softwareanforderungen sowie bekannte Probleme mit Abhilfen, sofern verfügbar.
Ziehen Sie dieses Dokument zurate, bevor Sie die Software installieren und einrichten, und lesen Sie dieses Dokument, bevor Sie mit der Verwendung von Sun GlassFish Enterprise Server v3 beginnen. Rufen Sie dieses Dokument regelmäßig auf, um die aktuellste Dokumentation anzuzeigen.
Welche Neuerung gibt es in Sun GlassFish Enterprise Server, Version v3?
Funktionen, die nur im vollständigen Plattformprofil zur Verfügung stehen
Dieser Abschnitt enthält ein Protokoll der Änderungen, mit denen die Versionshinweise zu Sun GlassFish Enterprise Server v3 überarbeitet wurden.
Tabelle 1–1 Änderungsprotokoll
Datum |
Beschreibung der Änderungen |
---|---|
Dezember 2009 |
Ursprüngliche Version. |
Januar 2010 |
Zusätzliche Informationen zum Weitervertrieb Problem 11427 wurde zu Bekannten Problemen hinzugefügt. Problem 11428 wurde zu Bekannten Problemen hinzugefügt. Problem 11439 wurde zu Bekannten Problemen hinzugefügt. Problem 6852796 wurde zu Bekannten Problemen hinzugefügt. |
Sun GlassFish Enterprise Server v3 stellt einen Server für die Entwicklung und Bereitstellung von Java Platform, Enterprise Edition-(Java EE-Plattform-)Anwendungen und -Webtechnologien bereit, die auf der Java-Technologie beruhen.
Hier werden folgende neue Funktionen von Enterprise Server beschrieben:
Unterstützung für Web Services Interoperability Technologies (WSIT)
Verschiebung der HTTP-Diensteinstellungen zum Netzwerkdienst
Änderungen bezüglich Ant-Tasks und des Dienstprogramms asant
In Java EE 6 wird erstmals das Konzept der Profile verwendet. Ein Profil ist eine Sammlung von Java EE-Technologien und -APIs, die sich an bestimmte Entwickler-Communities und Anwendungstypen richten.
Die folgenden Profile werden durch die Distributionen von Sun GlassFish Enterprise Server v3 implementiert:
Vollständiges Plattformprofil (Full Platform Profile). Dieses Profil ist für Entwickler konzipiert, die den vollständigen Satz Java EE-APIs für die Entwicklung von Unternehmensanwendungen benötigen. Das vollständige Plattformprofil wird bei der Installation von Sun GlassFish Enterprise Server v3 installiert. Dieses Profil wird außerdem im Rahmen der Java EE 6 SKD-Installation installiert.
Webprofil (Web Profile). Dieses Profil enthält Webtechnologien, die Teil der vollständigen Plattform sind, und ist für Entwickler konzipiert, die nicht den vollständigen Satz Java EE-APIs benötigen. Das Webprofil wird bei der Installation von Sun GlassFish Enterprise Server v3 Web Profile installiert. Dieses Profil wird außerdem zusammen mit dem Java EE 6 Web Profile SKD installiert.
Java EE 6 SDK-Distributionen stehen auf der Java EE 6 SDK-Downloadseite zur Verfügung.
Eine Liste der in den einzelnen Profilen enthaltenen APIs finden Sie unter Java EE 6-Standards.
In Sun GlassFish Enterprise Server v3 wurde der GlassFish-Code in Module aufgeteilt, um eine höhere Flexibilität und eine verbesserte Laufzeitleistung zu bieten. Die modulare Architektur wurde über OSGi Alliance-Standards implementiert und gewährleistet die Wiederverwendbarkeit der Module von Enterprise Server v3 sowie anderer Module.
Dank dieses geänderten Aufbaus haben Sie nun die Möglichkeit, nur die Module zu verwenden, die Sie für die bereitgestellten Anwendungen benötigen. Laufzeit wird nur für Anwendungen verwendet, die sie auch zum Einsatz bringen, und Upgrades können ohne vollständige Neuinstallation des Systems implementiert werden. Durch diese Änderung werden die Anzahl der Neustarts, die Arbeitsspeicherauslastung und die Speicherplatzanforderungen minimiert.
Der modulare Aufbau bietet folgende Möglichkeiten:
Bereitstellen von OSGi-Paketen
Bereitstellen von Java Archive-(JAR-)Dateien für Bibliotheken
Ersetzen vorhandener Funktionen durch eine andere Implementierung
Eine neue Systemanbieterschnittstelle (SPI) für Sun GlassFish Enterprise Server v3-Container definiert Schnittstellen, die der Containerentwickler implementieren muss, damit Enterprise Server sie zu den entsprechenden Zeitpunkten aufrufen kann. Durch diese Änderung können Enterprise Server-Benutzer benutzerdefinierte Anwendungsserver erstellen, indem sie Verwaltungsbefehle und grafische Add-On-Komponenten hinzufügen.
Enterprise Server bietet außerdem rationalisierte Unterstützung neuer Modultypen, wie beispielsweise Ruby on Rails.
Update Tool ist jetzt in die Sun GlassFish Enterprise Server v3 Administration Console eingebettet. Dieses Tool vereinfacht die Verwaltung von Add-On-Komponenten und verwandten Anwendungen, die für die Erweiterung von Enterprise Server v3-Funktionen verfügbar sind.
Die Administration Console bietet über die Navigationsstruktur Zugriff auf die Update Tool-Seite. Auf der Update Tool-Seite stehen Registerkarten zur Anzeige folgender Elemente zur Verfügung:
Installierte Komponenten
Für installierte Komponenten verfügbare Aktualisierungen
Add-On-Komponenten, die verfügbar sind und installiert werden können
Die Integration von Update Tool in die Administration Console ermöglicht Administratoren die problemlose Erweiterung von Enterprise Server und die Anzeige verfügbarer Aktualisierungen. Eine eigenständige Update Tool-Version kann auch über den Befehl updatetool aufgerufen werden. Weitere Informationen zu Update Tool finden Sie im Abschnitt Update Tool in Sun GlassFish Enterprise Server v3 Administration Guide.
Vorhandene Komponenten können nicht mit der Update Tool-Oberfläche in der Administration Console aktualisiert werden. Zum Aktualisieren oder Entfernen installierter Komponenten müssen Sie die eigenständige Befehlszeilenversion oder den Befehl pkg verwenden.
Update Tool wurde im Rahmen des Update Center-Projekts entwickelt. Die Administration Console verwendet die Update Center 2.3-API, um eine Liste der verfügbaren Komponenten, Versionen und Daten anzuzeigen. Informationen zu Update Center 2.3 finden Sie in den Versionshinweisen zu Update Center 2.3 .
Update Tool und Upgrade Tool sind nicht identisch; letzteres dient zum Migrieren der Konfiguration und bereitgestellten Anwendungen aus einer früheren Version von Enterprise Server zur aktuellen Version. Weitere Informationen zu Upgrade Tool finden Sie im Sun GlassFish Enterprise Server v3 Upgrade Guide .
Um eine rasche Entwicklung und Bereitstellung von Anwendungen zu ermöglichen, unterstützt Sun GlassFish Enterprise Server v3 eine Vielzahl von Skriptsprachen. Durch die Verwendung von Skriptsprachen kann Enterprise Server auch über Bereitstellungen, die sich auf Java-Technologie konzentrieren, hinaus angewendet werden. Folgende Skriptsprachen werden unterstützt:
JRuby and Rails: Eine Skriptsprache und ein Framework zur Entwicklung von Webanwendungen.
Grails: Ein Webanwendungs-Framework, das die Programmiersprache Groovy nutzt und die Java-Webbereitstellung ergänzt.
Jython and Django: Eine Java-Implementierung der Python-Sprache und ein Web-Framework für Python und Python-Implementierungen (wie z. B. Jython).
jMaki: Ein Framework zur Erstellung von Ajax-Webanwendungen
Unterstützung für diese Skriptsprachen wird durch Komponenten bereitgestellt, die über Update Tool verfügbar sind.
Sun arbeitet eng mit Microsoft zusammen, um die Interoperabilität von Webdienst-Technologien der Enterprise-Klasse sicherzustellen (z. B. Nachrichtenoptimierung, zuverlässiges Messaging und Sicherheit). WSIT ist ein Produkt dieser gemeinschaftlichen Bemühungen. WSIT ist Teil von Metro 2.0, einem hochleistungsfähigen, erweiterbaren Webdienst-Stack, der Interoperabilität mit Microsoft .NET 3.5 bietet. Metro 2.0 ist in der vollständigen Distribution von Enterprise Server v3 enthalten.
WSIT ist eine Implementierung verschiedener Open Web-Dienstspezifikationen zur Unterstützung von Unternehmensfunktionen. Zusätzlich zu den genannten Technologien umfasst WSIT eine Bootstrapping- und Konfigurationstechnologie. Auf Grundlage der derzeit in die Java-Plattform integrierten XML-Basisunterstützung nutzt oder erweitert WSIT vorhandene Funktionen und fügt neue Unterstützung für interoperable Webdienste hinzu, z. B.:
Bootstrapping und Konfiguration
Technologie zur Nachrichtenoptimierung
Technologie für zuverlässiges Messaging
Sicherheitstechnologie
In dieser Version wurde das Dienstprogramm appclient wie folgt verbessert:
Das Dienstprogramm appclient akzeptiert eine andere Befehlszeilensyntax ähnlich der Syntax des Java-Anwendungsstartprogramms (java).
Die Option -targetserver wurde hinzugefügt, um die Angabe von Server und Portnummer des Ziels zu ermöglichen.
Begrüßungsbildschirme in Anwendungsclients werden unterstützt.
Weitere Informationen finden Sie in der Online-Dokumentation appclient(1M).
Sun GlassFish Enterprise Server v3 verwendet EclipseLink als Java Persistence API (JPA) 2.0-Anbieter. EclipseLink ist zudem die Referenzimplementierung für JSR 317. Aktuelle Informationen zur EclipseLink-Funktionalität finden Sie in den Versionshinweisen zu EclipseLink 2.0.
In Sun GlassFish Enterprise Server v3 wurden die meisten HTTP-Diensteinstellungen in die neue Netzwerkdienstkonfiguration verschoben. Weitere Informationen finden Sie im Sun GlassFish Enterprise Server v3 Upgrade Guide .
In Sun GlassFish Enterprise Server v3 werden Sie nicht standardmäßig zur Eingabe von Administrations-Credentials aufgefordert. Dies ist anders als in früheren Versionen.
Bei Installation von Enterprise Server mithilfe der ZIP-Datei werden Sie nicht zur Eingabe von Administrations-Credentials aufgefordert, wenn Sie die Administration Console starten oder das Dienstprogramm asadmin und Remote-Unterbefehle zur Durchführung von Administrationsaufgaben verwenden.
Bei Installation von Enterprise Server v3 mit der selbstextrahierenden Datei und dem grafischen Installationsprogramm werden Sie nur dann zur Eingabe von Administrations-Credentials aufgefordert, wenn Sie während der Installation auf der Seite "Administrationseinstellungen" einen Benutzernamen und ein Passwort angegeben haben. Falls Sie auf dieser Seite die Vorgaben akzeptiert haben, lautet der standardmäßige Administratorname admin, und das Passwortfeld ist leer.
Wenn nur ein Administrator ohne Passwort konfiguriert ist, sind nicht authentifizierte Anmeldungen zulässig. Weitere Informationen zur Administratorauthentifizierung finden Sie im Abschnitt To Log In to a Domain in Sun GlassFish Enterprise Server v3 Administration Guide.
Die Anforderungen für die Administratorauthentifizierung können nach der Installation von Enterprise Server geändert werden. Informationen darüber, wie Sie diese und verwandte Aufgaben mit der Administration Console durchführen, finden Sie in der Online-Hilfe zur Administration Console. Informationen zur Verwendung der Befehlszeilenschnittstelle finden Sie im Abschnitt Administering Passwords in Sun GlassFish Enterprise Server v3 Administration Guide.
Das Verhalten des Dienstprogramms asadmin wurde geändert, um den Unterschied zwischen Optionen für das Dienstprogramm asadmin selbst und Optionen für seine Unterbefehle deutlicher herauszustellen. Optionen für das Dienstprogramm asadmin selbst sind nun vor dem Unterbefehl zulässig. Aus Gründen der Kompatibilität mit anderen Versionen sind jedoch Optionen für das Dienstprogramm asadmin selbst nach wie vor auch nach dem Unterbefehl zulässig, diese Syntax ist allerdings veraltet.
Weitere Informationen finden Sie im Abschnitt Using the asadmin Utility in Sun GlassFish Enterprise Server v3 Administration Guide.
In Sun GlassFish Enterprise Server v3 wurden bezüglich des Dateilayouts die folgenden Änderungen gegenüber früheren Versionen vorgenommen:
Das standardmäßige Installationsverzeichnis lautet wie folgt:
Solaris-, Linux- und Mac OS X-Systeme: home-verzeichnis-des-benutzers/glassfishv3
Windows-Systeme: Systemlaufwerk:\glassfishv3
Ein Unterverzeichnis glassfish mit weiteren Unterverzeichnissen wurde hinzugefügt.
Produktbibliotheken wurden aus dem Verzeichnis glassfish/lib in glassfish/modules verschoben.
Das Verzeichnis osgi wurde hinzugefügt.
Ein spezielles Verzeichnis für rechtliche Dateien wurde hinzugefügt. Lizenz- und Copyright-Dateien sind nun im Verzeichnis glassfish/legal abgelegt.
Sun GlassFish Message Queue wird in einem Verzeichnis der obersten Ebene statt wie bisher in einem Unterverzeichnis installiert.
Java DB wird in einem Verzeichnis der obersten Ebene statt wie bisher in einem Unterverzeichnis installiert.
In Sun GlassFish Enterprise Server v3 stehen serverspezifische Ant-Tasks zur Verfügung, für die Ant installiert sein muss. Das Dienstprogramm asant ist in dieser Version nicht enthalten.
Enterprise Server ist mit Apache Ant ab Version 1.6.5 kompatibel. Sollte Ant nicht installiert sein, können Sie es mit Update Tool installieren.
Weitere Informationen zu Update Tool finden Sie im Abschnitt Update Tool in Sun GlassFish Enterprise Server v3 Administration Guide. Weitere Informationen zu Ant-Tasks finden Sie in Kapitel 3, Using Ant with Enterprise Server in Sun GlassFish Enterprise Server v3 Application Development Guide.
Aufgrund des modularen und erweiterbaren Aufbaus von Sun GlassFish Enterprise Server v3 kann die Datei domain.xml nicht anhand einer statischen DTD-Datei überprüft werden. Stattdessen wird die Datei domain.xml anhand von @Configured-Annotationen im Quellcode überprüft. Weitere Informationen zur Struktur der Datei domain.xml finden Sie in der Sun GlassFish Enterprise Server v3 Domain File Format Reference .
Zwischen Enterprise Server v3 und Enterprise Server v2 bestehen Unterschiede im Hinblick auf Anwendungen. In diesem Abschnitt werden einige dieser Unterschiede erläutert.
Der Standardwert der Option force für die Bereitstellung lautet in Enterprise Server v3 false. In Enterprise Server v2 lautete der Standardwert true. In Enterprise Server v3 müssen Sie die Option für die erneute Bereitstellung explizit auf true setzen. Diese Option wird während des Upgrade-Verfahrens nicht automatisch festgelegt. Diese Änderung wurde vorgenommen, um das versehentliche Überschreiben des Inhalts einer vorhandenen Anwendung zu verhindern. Dies gilt sowohl für die Administration Console als auch für das Befehlszeilendienstprogramm.
Der Befehl asadmin redeploy ist ebenfalls neu in Enterprise Server v3 und entspricht --force=true. Die Option force ist nur auf den Befehl deploy (Befehlszeilenschnittstelle) und den Bildschirm deploy (Konsole) anwendbar, nicht jedoch auf den Befehl redeploy und den Bildschirm redeploy.
Enterprise Server v2 enthielt zwei Unterverzeichnisse für das Anwendungs-Repository: applications/j2ee-apps und applications/j2ee-modules. Diese Unterverzeichnisse sind in Enterprise Server v3 nicht vorhanden (es gibt keine Ebene j2ee-apps oder j2ee-modules). Die Bereitstellung eines eigenständigen Moduls wie foo.war, das in Enterprise Server v2 in applications/j2ee-modules/foo gespeichert war, befindet sich in Enterprise Server v3 nun in applications/foo. Unternehmensanwendungen und eigenständige Module nutzen im Wesentlichen denselben Namensraum gemeinsam, sodass die Zwischenverzeichnisebene nicht benötigt wurde.
Elemente früherer Versionen wie web-module, ejb-module usw. sind in Enterprise Server v3 veraltet und wurden durch das neue Element application ersetzt. Weitere Informationen zum Element application finden Sie im Abschnitt application in Sun GlassFish Enterprise Server v3 Domain File Format Reference.
Während eines Upgrades werden Enterprise Server v2-Anwendungen am neuen Speicherort applications/ mit dem neuen Element application in der Datei domain.xml erneut bereitgestellt. Alle für Enterprise Server v3 bereitgestellten neuen Anwendungen werden mit der neuen Verzeichnisstruktur und dem neuen Element bereitgestellt.
In Java EE 6 gelten strengere Regeln für die JAR-Sichtbarkeit als in Java EE 5. Dies führt dazu, dass einige ältere Anwendungen möglicherweise nicht ausgeführt werden können.
Die Java EE 6-Spezifikation definiert strenge Regeln dafür, welche JAR-Dateien aus einer Enterprise Archive-(EAR-)Datei sichtbar sind. Lesen Sie insbesondere Abschnitt EE.8.3.3. Vor allem Anwendungsclient-Module sollten keinen Zugriff auf EJB-JAR-Dateien haben, es sei denn, das Manifest Class-Path der JAR-Datei des Anwendungsclients verweist explizit auf die EJB-JAR-Dateien.
Dies ist eine Änderung gegenüber Enterprise Server v2; in dieser Version hatten Anwendungsclients automatisch Zugriff auf alle EJB-JAR-Dateien in der EAR-Datei und alle JAR-Dateien auf der obersten Ebene der EAR-Datei. Um den strengeren Regeln der Spezifikationssprache zu entsprechen, kann Enterprise Server v3 Anwendungsclients des Zugriff auf diese JAR-Dateien nicht automatisch gewähren.
Diesem neuen, strengeren Verhalten, das von Java EE 6 gefordert wird, können Sie wie folgt begegnen:
Wenn die Anwendung für eine Enterprise Server v2-Domäne bereitgestellt wird, behält Upgrade Tool das Enterprise Server v2-Verhalten für diese Anwendung in dieser Domäne. Weitere Informationen zum Upgrade-Verfahren finden Sie im Sun GlassFish Enterprise Server v3 Upgrade Guide .
Ändern Sie das Manifest Class-Path des Clients so, dass es explizit auf die JAR-Dateien verweist, von denen es abhängt. Class-Path darf keine JAR-Dateien im Bibliotheksverzeichnis der EAR-Datei auflisten. Gemäß Spezifikation stehen alle JAR-Dateien in diesem Verzeichnis allen Modulen in der EAR-Datei zur Verfügung. Dieses Verzeichnis ist standardmäßig /lib; durch Verwendung von library-directory im Deskriptor von application.xml kann alternativ ein anderes Verzeichnis festgelegt werden.
Stellen Sie die EAR-Datei mit der optionalen Einstellung --property compatibility=v2 bereit. Dadurch bleibt das Enterprise Server v2-Verhalten für diese Anwendung erhalten, wenn sie für Enterprise Server v3 bereitgestellt wird.
Dieses geänderte Verhalten ist auch Thema in Kapitel 1, Application Server Compatibility Issues in Sun GlassFish Enterprise Server v3 Upgrade Guide.
In Sun GlassFish Enterprise Server v3 wird bei Ausführung der Befehle deploy --retrieve und get-client-stubs nicht länger nur eine JAR-Datei in das lokale Verzeichnis heruntergeladen, wie es in Enterprise Server v2 der Fall war. Zwar wird localdir/myAppClient.jar nach wie vor in Enterprise Server v3 erstellt und kann als Ziel im Befehl appclient verwendet werden; zusätzlich wird jedoch ein weiteres Verzeichnis (localdir/myAppClient ) erstellt, das seinerseits weitere Dateien enthalten kann.
Wenn Sie bisher die in Enterprise Server v2 heruntergeladene einzelne JAR-Datei kopiert haben, um die Anwendungsclient-Komponenten von einem Ort an einen anderen zu verschieben, können Sie in Enterprise Server v3 nicht mehr so vorgehen. Hierfür muss nun der Befehl asadmin get-client-stubs verwendet werden. Weitere Informationen zu diesem Befehl finden Sie unter get-client-stubs(1).
Sollten Sie sich dennoch für das Kopierverfahren entscheiden, müssen Sie nicht nur die Datei localdir/myAppClient.jar kopieren (wie in Enterprise Server v2), sondern auch den gesamten Inhalt des Verzeichnisses localdir/myAppClient.
In diesem Abschnitt werden die Anforderungen aufgelistet, die erfüllt sein müssen, damit das Produkt Sun GlassFish Enterprise Server v3 installiert werden kann.
Sun GlassFish Enterprise Server v3 erfordert mindestens 200 MB freien Festplattenspeicher zur Installation und 100 MB freien Festplattenspeicher für die Ausführung.
In der folgenden Tabelle werden die unterstützten Betriebssysteme aufgeführt, und es sind jeweils der Mindestarbeitsspeicher, der empfohlene Arbeitsspeicher, der Mindestfestplattenspeicher, der empfohlene Festplattenspeicher und die virtuelle Java-Maschine angegeben.
Wie unten angegeben, erfordert Enterprise Server JDKTM Version 6. Welche minimale (und zertifizierte) Version der JDK 6-Software erforderlich ist, hängt vom Betriebssystem ab. Plattformspezifische Anforderungen finden Sie unter Erforderliche JDK-Version.
Tabelle 1–2 Unterstützte Betriebssysteme
Betriebssystem |
Mindest- Arbeitsspeicher |
Empfohlener Arbeitsspeicher |
Mindest- festplatten- speicher |
Empfohlener Festplatten- speicher |
Virtuelle Java-Machine |
---|---|---|---|---|---|
Betriebssystem SolarisTM |
|||||
Solaris 10 (SPARCTM- Plattform) |
1 GB |
2 GB |
250 MB frei |
500 MB frei |
JDK 6 32- und 64-Bit |
Solaris 10 (x86-Plattform) |
1 GB |
2 GB |
250 MB frei |
500 MB frei |
JDK 6 32- und 64-Bit |
OpenSolarisTM 2009.06 |
1 GB |
2 GB |
250 MB frei |
500 MB frei |
JDK 6 |
Linux |
|||||
Red Hat Enterprise Linux 5.0 |
1 GB |
2 GB |
250 MB frei |
500 MB frei |
JDK 6 32- und 64-Bit |
Red Hat Enterprise Linux 4.0 |
1 GB |
2 GB |
250 MB frei |
500 MB frei |
JDK 6 32-Bit |
SUSE Linux Enterprise Server 10 |
1 GB |
2 GB |
250 MB frei |
500 MB frei |
JDK 6 32-Bit |
Ubuntu Linux 8.04 |
1 GB |
2 GB |
250 MB frei |
500 MB frei |
JDK 6 32-Bit |
Windows |
|||||
Windows 7 Professional |
1 GB |
2 GB |
250 MB frei |
500 MB frei |
JDK 6 32- und 64-Bit |
Windows XP Professional SP3 |
1 GB |
2 GB |
250 MB frei |
500 MB frei |
JDK 6 32-Bit |
Windows 2008 |
1 GB |
2 GB |
250 MB frei |
500 MB frei |
JDK 6 32-Bit |
Windows Vista Business |
1 GB |
2 GB |
250 MB frei |
500 MB |
JDK 6 32-Bit |
Mac OS |
|||||
Mac OS X 10.5 und 10.6 |
1 GB |
2 GB |
250 MB frei |
500 MB frei |
JDK 6 32-Bit |
Auf UNIX®-Plattformen können Sie die Version Ihres Betriebssystems mithilfe des Befehls uname überprüfen. Der Festplattenspeicherplatz kann mit dem Befehl df angezeigt werden.
Verwenden Sie anstatt FAT bzw. FAT32 das Dateisystem NTFS, wenn Sie Enterprise Server auf einer Microsoft Windows-Plattform ausführen.
Bei der Systemvirtualisierung handelt es sich um eine Technologie, mit der mehrere Instanzen eines Betriebssystems auf einer gemeinsam genutzten Hardware unabhängig voneinander ausgeführt werden können. Auf der Funktionsebene erkennt die auf einem Betriebssystem in einer virtualisierten Umgebung bereitgestellte Software im Allgemeinen nicht, dass die zugrunde liegende Plattform virtualisiert wurde. Sun testet seine Sun Java System-Produkte auf ausgewählten Systemvirtualisierungs- und Betriebssystemkombinationen, um sicherzustellen, dass diese Produkte in virtualisierten Umgebungen mit zulässiger Größe und Konfiguration weiterhin so arbeiten wie auf nicht virtualisierten Systemen. Informationen zur Sun-Unterstützung für Sun Java System-Produkte in virtualisierten Umgebungen finden Sie unter System Virtualization Support in Sun Java System Products .
Im temporären Verzeichnis muss genügend Speicherplatz für die Installation der folgenden Software frei sein:
Sun GlassFish Enterprise Server: mindestens 35 MB
SDK: mindestens 250 MB
Es werden sieben freie Ports benötigt.
Das Installationsprogramm erkennt automatisch bereits verwendete Ports und schlägt derzeit nicht verwendete Ports für die Standardeinstellungen vor.
Die ursprünglichen Standardportzuweisungen sind in der folgenden Tabelle aufgeführt. Wenn diese Standardportnummern verwendet werden, weist das Installationsprogramm eine zufällig ausgewählte Portnummer aus dem Bereich der dynamischen Ports zu. Die ausgewählte Portnummer ist nicht unbedingt die nächste verfügbare Portnummer.
Tabelle 1–3 Standardportzuweisungen für Enterprise Server v3
Portnummer |
Verwendung |
---|---|
4848 |
Administration Console |
8080 |
HTTP |
8081 |
HTTPS |
8686 |
Reine JMX-Clients |
3700 |
IIOP |
3820 |
IIOP/SSL |
3920 |
IIOP/SSL mit gegenseitiger Authentifizierung |
Wenn Sie das Betriebssystem Solaris 10 verwenden, müssen Sie das entsprechende Patch für Ihre Plattform anwenden, wie in der folgenden Tabelle angegeben.
Plattform |
Patch-Nummer |
---|---|
SPARC-Plattform |
119963-08 |
x86-Plattform |
119964-08 |
Sie müssen außerdem sicherstellen, dass das von Sun empfohlene Patch-Cluster angewendet wird.
Diese Patches und das Patch-Cluster stehen auf der SunSolveSM-Programm-Website zur Verfügung.
Zum Herunterladen eines Patches klicken Sie auf den PatchFinder-Link und suchen dann mit dem Feld "Patch ID" nach dem Patch.
Zur Herunterladen des Patch-Clusters klicken Sie im Bereich "Downloads" auf den Link "Patch Cluster & Patch Bundle Downloads" und dann auf den Link für empfohlene Patch-Cluster.
Für die Installation von Sun GlassFish Enterprise Server v3 ist JDK Version 6 erforderlich.
Welche minimale (und zertifizierte) Version der JDK-Software für Enterprise Server erforderlich ist, hängt vom Betriebssystem ab:
Für alle unterstützten Betriebssysteme mit Ausnahme von Mac OS X ist mindestens Version 1.6.0_17 erforderlich.
Für das Betriebssystem Mac OS X ist mindestens Version 1.6.0_15 erforderlich.
Die folgenden Binärdateien, die mit Enterprise Server verwendet werden, müssen aus der JDK-Software stammen, nicht aus der Java Runtime Environment-(JRETM-)Software:
java
keytool
Um diese Anforderung zu erfüllen, stellen Sie sicher, dass das Verzeichnis bin der JDK-Software im Pfad vor dem Verzeichnis bin der JRE-Software angegeben ist.
In der folgenden Tabelle sind die Datenbanken und Treiber aufgeführt, die in dieser Version unterstützt werden. Alle unterstützten Konfigurationen von Sun GlassFish Enterprise Server v3 müssen mindestens eine Datenbank/Treiber-Kombination aus dieser Tabelle enthalten, wie beispielsweise Java-Datenbank und -Treiber. Außerdem ist Enterprise Server so konzipiert, dass über die Java DataBase Connectivity-(JDBCTM-)Technologie Konnektivität mit jedem beliebigen zusätzlichen Datenbankverwaltungssystem (DBMS) unterstützt wird, das einen entsprechenden Treiber aufweist, der die JDBC-API unterstützt (JDBC-Treiber).
Tabelle 1–4 Unterstützte JDBC-Treiber und -Datenbanken
JDBC-Treiberhersteller |
JDBC-Treibertyp |
Unterstützte Datenbank-Server |
---|---|---|
MySQL Connector/J Driver 5.1 |
Typ 4 |
MySQL 5.1 |
Java DB 10.5.3.0 |
Typ 4 |
Java DB 10.5.3.0 |
Oracle 11 |
Typ 2 und Typ 4 |
Oracle 11 |
PostgreSQL 8.4 |
Typ 4 |
PostgreSQL 8.4 |
DB2 9.7 |
Typ 2 |
DB2 9.7 |
Sun, DataDirect 4.0 |
Typ 4 |
Sybase ASE 15 |
Sun, DataDirect 4.0 |
Typ 4 |
DB2 9.7 |
Sun, DataDirect 4.0 |
Typ 4 |
Microsoft SQL Server 2008 |
Sun, DataDirect 4.0 |
Typ 4 |
MySQL 5.1 |
In der folgenden Tabelle sind die unterstützten Browser und Versionen aufgelistet.
Tabelle 1–5 Unterstützte Webbrowser
Browser |
Version |
---|---|
Firefox |
2.0, 3.0 |
Internet Explorer |
7.0, 8.0 |
Safari |
3.2, 4.0 |
Sun GlassFish Enterprise Server v3 unterstützt mod_jk 1.2.x ab Version 1.2.26.
In diesem Abschnitt werden die bekannten Probleme in Sun GlassFish Enterprise Server v3 einschließlich ggf. verfügbarer Abhilfen erläutert.
[JDK-Problem] Leistungseinbuße durch Aufruf von setSoLinger oder setReuseAddress (Problem 7109)
[JDK-Problem] Null-Zeiger-Ausnahmefehler bei Neustart des Servers (Problem 8299)
[JDK-Problem] E/A-Ausnahmefehler: ungültiges Argument bei Langlebigkeitstest (Problem 7529)
[JDK-Problem] EPoll-Null-Zeiger-Ausnahmefehler bei Startvorgang (Problem 9472)
[JDK-Problem] Richaccess: java.io.IOException: ungültiges Argument von doSelect (Problem 8573)
Datei mit dem Windows-Installationsprotokoll ist nicht lesbar (Problem 4881)
com.sun.xml.wss.NonceManager.getInstance löst einen Null-Zeiger-Ausnahmefehler aus (Problem 11138)
Eigenständiges Update Tool schlägt unter Solaris mit Segmentierungsfehler fehl (Problem 11222)
Änderung am Speicherort der Protokolldatei erfordert einen Neustart des Servers (Problem 11142)
[Update Center] Zugriff auf Nichtbenutzerverzeichnis schlägt fehl (Update Center-Problem 1583)
[EclipseLink] Probleme mit ElementCollections von Embeddables (EclipseLink-Problem 296606)
Senden von JMS-Meldungen zwischen Systemen nicht möglich (Problem 11254)
Eingebettete ACC übermäßig strikt bei aktuellem Kontext-ClassLoader des Threads (Problem 11427)
Konfigurationsproblem des EJB-Zeitgeberdienstes für MySQL (Problem 11428)
Der Unterbefehl deploy schlägt über sicheren Server fehl (Problem 11439)
Bei Aufruf der Methode setSoLinger oder setReuseAddess verschlechtert sich die Leistung, und der folgende Ausnahmefehler wird ausgelöst:
[#|2009-01-26T00:33:56.325-0800|WARNING|sun-appserver9.1| javax.enterprise.system.container.web|_ThreadID=17; _ThreadName=SelectorReaderThread-8084; _RequestID=11ae0030-c392-4217-8408-cfa7efe0a879;|setSoLinger exception java.net.SocketException: Invalid argument |
Dieses Problem wird durch ein Problem mit der JDK-Software verursacht. Dieses Problem wird in JDK Version 7 behoben.
Weitere Informationen finden Sie im Problembericht.
Keine.
Beim Neustart von Enterprise Server wird manchmal ein Null-Zeiger-Ausnahmefehler ausgelöst.
SEVERE: doSelect exception java.lang.NullPointerException |
Dieses Problem wird durch ein Problem mit der JDK-Software verursacht. Dieses Problem wird in JDK Version 7 behoben.
Weitere Informationen finden Sie im Problembericht.
Keine.
Während eines HTTP-Langlebigkeitstests wird nach 42 Stunden der folgende Ausnahmefehler ausgelöst:
[#|2009-04-05T17:41:26.537-0700|SEVERE|glassfish|javax.enterprise.system.core| _ThreadID=15;_ThreadName=Thread-1;|doSelect exception java.io.IOException: Invalid argument |
Auf die Instanz und die Anwendung kann während der Ausführung weiterhin zugegriffen werden.
Dieses Problem wird durch ein Problem mit der JDK-Software verursacht. Dieses Problem wird in JDK Version 7 behoben.
Weitere Informationen finden Sie im Problembericht.
Keine.
Beim Startvorgang löst Enterprise Server einen Null-Zeiger-Ausnahmefehler aus:
java.lang.NullPointerException at sun.nio.ch.Util.atBugLevel(Util.java:326) at sun.nio.ch.SelectorImpl.<init>(SelectorImpl.java:40) at sun.nio.ch.EPollSelectorImpl.<init>(EPollSelectorImpl.java:47) |
Dies bezieht sich auf Grizzly und ist ein JDK 6-Problem. Dieses Problem wird in JDK 7 behoben.
Weitere Informationen finden Sie im Problembericht.
Keine. Grizzly versucht dieses Problem zu umgehen, der Fehler tritt jedoch möglicherweise trotzdem auf.
Der folgende Ausnahmefehler wird ausgegeben:
[#|2009-06-20T06:05:57.942-0700|SEVERE|glassfish| com.sun.grizzly.config.GrizzlyServiceListener| _ThreadID=21;_ThreadName=Thread-2;|doSelect IOException java.io.IOException: Invalid argument |
Dies ist ein JDK-Problem, dessen Behebung für JDK 1.6.0_18 geplant ist.
Weitere Informationen finden Sie im Problembericht.
Erhöhen Sie die maximale Anzahl an Dateideskriptoren auf 10.000 oder mehr (der Standardwert unter Solaris beträgt 64.000). Installieren Sie JDK 1.6.0_18, sobald diese Version verfügbar wird.
Wenn das Verzeichnis /applications einer Domäne den Zugriff beschränkt oder wenn Sie eine Verzeichnisbereitstellung aus einem Verzeichnis verwenden, das Beschränkungen unterliegt, kann der Server die Dateien im erweiterten Verzeichnis nicht lesen. Ein Fehler vom Typ NullProcessException wird während der Bereitstellung angezeigt.
Weitere Informationen finden Sie im Problembericht.
Ändern Sie die Dateizugriffseinstellungen für solche Verzeichnisse, um dem Server die Berechtigung zum Lesen der Verzeichnisinhalte zu erteilen.
Die Datei time-stamp-install.log kann nicht gelesen werden, da alle Zeilen, die in die Datei geschrieben wurden, zu einem einzigen langen String zusammengekettet wurden.
Weitere Informationen finden Sie im Problembericht.
Verwenden Sie einen anderen Editor und öffnen Sie die Datei mit dem Installationsprotokoll manuell im Verzeichnis %TEMP%.
Überwachungsstatistiken zu neu hinzugefügten virtuellen Servern sind erst nach dem Neustart des Servers verfügbar.
Weitere Informationen finden Sie in den Berichten zu Problem 6238 und Problem 6422.
Starten Sie nach dem Hinzufügen eines virtuellen Servers den Server neu, um Überwachungsdaten für den virtuellen Server anzuzeigen.
Die Option -l zum Verschieben von Protokolldateien wird ignoriert, wenn sie in Kombination mit den Optionen -a und -s verwendet wird, und die Protokolldateien werden im Standardverzeichnis erstellt.
Weitere Informationen finden Sie im Problembericht.
Keine.
Einige Features funktionieren unter Windows Vista nicht einwandfrei, wenn die Benutzerkontensteuerung (UAC) aktiviert ist. Ein Beispiel ist die Administration Console, die nicht gestartet werden kann.
Weitere Informationen finden Sie im Problembericht.
Deaktivieren Sie die UAC, und starten Sie den Computer neu.
Wenn beim Testen eines JAX-RPC-Webdiensts der GlassFish-Nachrichtensicherheitsanbieter aktiviert ist, wird in den Serverprotokollen der folgende Ausnahmefehler ausgelöst:
[#|2009-11-23T11:16:58.375+0005|SEVERE|glassfishv3.0| javax.enterprise.resource.webservices.rpc.server.http|_ThreadID=25;_ ThreadName=http-thread-pool-8080-(2);|caught throwable java.lang.RuntimeException: com.sun.enterprise.security.jauth.AuthException |
Der Standardwert der Eigenschaft nonce funktioniert nicht.
Weitere Informationen finden Sie im Problembericht.
Wenn Sie Nachrichtensicherheit mit JAX-RPC-Webdiensten verwenden möchten, deaktivieren Sie die Eigenschaft nonce in der Konfiguration. Ausführliche Schrittanweisungen für diese Abhilfe finden Sie im Problembericht.
Nach Abschluss der Installation wird die Startmenügruppe für Enterprise Server nicht angezeigt. Wenn Sie sich ab- und dann erneut anmelden, wird die Menügruppe zwar angezeigt, ist jedoch leer.
Weitere Informationen finden Sie im Problembericht.
Keine.
Der Befehl asadmin get -m "server.*" gibt alle Überwachungsdaten zurück, die sich auf den jeweiligen Server beziehen. Wenn viele Anwendungen bereitgestellt werden, handelt es sich dabei um eine ziemlich große Datenmenge, deren Rückgabe viel Zeit in Anspruch nimmt. Möglicherweise tritt auf dem Client eine Zeitüberschreitung mit der folgenden clientseitigen Fehlermeldung auf:
./asadmin get --monitor=true "server.*" I/O Error: Read timed out Command get failed. |
Weitere Informationen finden Sie im Problembericht.
Minimieren Sie die an den Client zurückgegebene Datenmenge.
Führen Sie den Befehl asadmin list -m "server.*" aus, der nur die Elemente der obersten Ebene zurückgibt.
Wählen Sie das übergeordnete Element aus, für das Details benötigt werden, und verwenden Sie dieses als Filter. Beispiel:
> ./asadmin list -m "server.*" ... server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-cache server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-methods server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-methods. create-int-int-[Lorg\.spec\.jappserver\.supplier\.helper\.ComponentOrder server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-methods. findByPrimaryKey-java\.lang\.Integer server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-methods.generateXml server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-methods.getEJBLocalHome ... >./asadmin get -m "server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-methods.*" ... server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-methods.remove. methodstatistic-name = MethodStatistic server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-methods.remove. methodstatistic-starttime = 1259604209775 ... |
Das eigenständige Update Tool, das mit dem Befehl updatetool gestartet wurde, schlägt unter Solaris mit einem Segmentierungsfehler fehl, wenn Add-On-Komponenten installiert werden.
Weitere Informationen finden Sie im Problembericht.
Stellen Sie sicher, dass Ihr System die Patch-Anforderungen für das eigenständige Update Tool erfüllt, wie in den Versionshinweisen zu Update Center definiert.
Die Update Tool-Funktionalität in der Administration Console verwendet eine andere Java-basierte Update Center-API und ist von diesem Problem nicht betroffen.
Wenn eine Ruby-Anwendung im Kontext-Root '/' bereitgestellt und dann die Administration Console aufgerufen wird, generiert die Ruby-Anwendung einen 404-Fehler.
Weitere Informationen finden Sie im Problembericht.
Keine.
Wenn Java Web Start zum Starten eines Anwendungsclients verwendet wird, werden die im Anwendungsclient vorhandenen verwalteten Beans sämtlich nicht erkannt.
Weitere Informationen finden Sie im Problembericht.
Starten Sie den Anwendungsclient mit dem Skript appclient. Verwaltete Beans im Anwendungsclient werden normal unterstützt.
Wenn Sie das appclient-Skript auf Mac OS X-Systemen aufrufen, auf denen Java von Apple installiert ist, wird das folgende Stackprotokoll zweimal angezeigt (hier sind nur die ersten paar Zeilen dargestellt):
Intentionally suppressing recursive invocation exception! java.lang.IllegalStateException: recursive invocation at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:1394) at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:1377) at sun.security.jca.ProviderConfig$1.run(ProviderConfig.java:64) ... |
Weitere Informationen finden Sie im Problembericht.
Keine erforderlich.
Trotz der Warnmeldungen wird der Client erfolgreich gestartet und normal ausgeführt. Diese Fehlermeldungen resultieren aus einem Problem in der Apple Java-Implementierung.
Ein Problem tritt auf, wenn alle folgenden Bedingungen zutreffen:
Bei der Anwendung handelt es sich um ein EAR, das einen Anwendungsclient enthält.
Das EAR wird in einem Verzeichnis bereitgestellt.
Das EAR enthält ein Anwendungsclient-Modul myAppClient.jar , das - da es sich um eine Verzeichnisbereitstellung handelt - vorab in myAppClient_jar erweitert wird. (In diesem Beispiel ist myApp der Name des EAR. Der Name ist beliebig.)
Versuche zum Starten des Anwendungsclients schlagen fehl, und es wird die folgende Fehlermeldung ausgegeben, da eine auf dem Server generierte Datei im falschen Serververzeichnis abgelegt wird und eine andere generierte Datei überschreibt:
java.lang.ClassNotFoundException:(main-class-for-the-client) |
Weitere Informationen finden Sie im Problembericht.
Ändern Sie den Namen des Anwendungsclients in einen anderen Namen als myAppClient.jar . Im Einzelnen:
Bearbeiten Sie die Datei myApp/META-INF/application.xml so, dass die Deklaration des Clients <java>myClient.jar</java> lautet. Sie können jeden beliebigen Namen mit Ausnahme von myAppClient.jar verwenden.
Benennen Sie das Verzeichnis myApp/myAppClient_jar in myApp/myClient_jar um. Beachten Sie, dass der Name des Client-Unterverzeichnisses mit dem Anwendungsclient-URI in der Datei application.xml identisch sein muss und .jar durch _jar ersetzt wird.
Stellen Sie die Anwendung bereit:
asadmin deploy --retrieve localdir myApp |
Führen Sie den Anwendungsclient aus:
appclient -client localdir/myAppClient.jar |
Änderungen, die an den Serverprotokollwerten auf der Registerkarte "Allgemein" der Seite "Einstellungen für Protokollierfunktion" vorgenommen werden, werden nicht sofort wirksam.
Weitere Informationen finden Sie im Problembericht.
Starten Sie den Server neu. Wenn an den Werten dieser Seite Änderungen vorgenommen werden, ist stets ein Neustart des Servers erforderlich.
Die bei der Installation erstellten Protokolldateien können nicht durch Klicken auf Links auf der Seite "Zusammenfassung" geöffnet werden, die nach Abschluss des Installationsvorgangs im grafischen Installationsprogramm angezeigt wird.
Weitere Informationen finden Sie im Problembericht.
Rufen Sie die Dateien manuell auf. Die Namen der Installationsprotokoll- und Zusammenfassungsdateien lauten timestamp-install.log und timestamp-install-summary.html. Auf Linux- und Mac-Systemen werden diese Dateien im Verzeichnis $TMP generiert.
Wenn Sie bei einer Neuinstallation von Enterprise Server (mit Update Tool) dasselbe Installationsverzeichnis und die gleichen Standardeinstellungen wie zuvor verwenden und Update Tool mit dem Befehl updatetool aufrufen, wird die Meldung ausgegeben, dass Update Tool nicht installiert ist, und Sie werden gefragt, ob das Tool installiert werden soll. Dieses Problem tritt nur auf Windows-Systemen auf.
Weitere Informationen finden Sie im Problembericht.
Entfernen Sie nach der Deinstallation das noch vorhandene Verzeichnis .org* manuell, bevor Sie die Neuinstallation durchführen.
Dieser Fehler tritt periodisch auf Windows- und Mac OS-Systemen auf. pkg(5) funktioniert auf bestimmten Systemen manchmal nicht.
Weitere Informationen finden Sie im Update Center-Problembericht.
Keine.
In der Inline-Hilfe und der CLI-Online-Dokumentation ist im Feld "XPowered-By" die Servlet-Version 2.4 angegeben. Die richtige Version ist Servlet 3.0.
Weitere Informationen finden Sie im Problembericht.
Keine.
Wenn embedded mit glassfish-embedded-all-3.0-b73.jar verwendet wird, schlägt die Bereitstellung mit folgender Fehlermeldung fehl:
SEVERE: WEB9051: Error trying to scan the classes at /private/var/folders/CV/CVhj8DvqEwGK5bdJKK9TaE TI/-Tmp- /gfembed6991712842235699248tmp/applications/xwiki-enterprise-web-2.0/ WEB-INF/lib/activation-1.1.jar for annotations in which a ServletContainerInitializer has expressed interest java.util.zip.ZipException: error in opening zip file |
Dieses Problem tritt auf, weil embedded einen Ordner mit Pluszeichen (+) verwendet und Pluszeichen in einem Pfad beim Decodieren des Pfads in Leerzeichen " " konvertiert werden.
Weitere Informationen finden Sie im Problembericht.
Es wurde eine Systemeigenschaft hinzugefügt, die Ihnen das Platzieren temporärer Verzeichnisse ermöglicht. Es handelt sich um die Eigenschaft glassfish.embedded.tmpdir; diese kann so festgelegt werden, dass das temporäre Domänenverzeichnis nicht im Benutzerverzeichnis platziert wird.
create-service kann unter Solaris keinen Dienst ohne AS_ADMIN_USER in passwordfile erstellen.
Weitere Informationen finden Sie im Problembericht.
Keine.
Enterprise Server verfolgt überwachbare Objekte mithilfe einer Baumstruktur. Innerhalb dieser Struktur steht die folgende Ansicht nicht zum Abrufen von statistischen Daten für Verbindungspools zur Verfügung:
server.connector-service.resource-adapter-name .connection-pool-name .* oder server.jms-service.connection-factories. connection-factory-name.* (für jms-ra-bezogene Pools).
Weitere Informationen finden Sie im Problembericht.
Verwenden Sie die Ansicht server.resources.*, um die statistischen Daten zu erhalten.
Weitere Informationen zu Monitoring finden Sie in Kapitel 8, Administering the Monitoring Service in Sun GlassFish Enterprise Server v3 Administration Guide.
Wenn Weaving aktiviert ist, kann es bei Aktualisierung einer Elementsammlung von Embeddables potenziell zur Auslösung eines Null-Zeiger-Ausnahmefehlers kommen.
Weitere Informationen finden Sie im EclipseLink-Problembericht.
Es gibt zwei Abhilfemaßnahmen:
Fügen Sie dem Embeddable die Annotation @ChangeTracking(DEFFERED) hinzu, und setzen Sie die Eigenschaft eclipselink.weaving.internal auf false, oder
Setzen Sie in Persistenz-XML die folgenden Eigenschaften auf false: eclipselink.weaving.changetracking und eclipselink.weaving.internal.
Nach dem Start der Domäne und dem Zugriff auf localhost:4848 werden die folgenden Meldungen im Serverprotokoll angezeigt:
[#|2009-11-27T16:21:57.091+1100|INFO|glassfishv3.0| javax.enterprise.system.container.web.com.sun.enterprise.web| _ThreadID=20;_ThreadName=Thread-1;|Created virtual server server|#] |
[#|2009-11-27T16:21:57.091+1100|INFO|glassfishv3.0| javax.enterprise.system.container.web.com.sun.enterprise.web| _ThreadID=20;_ThreadName=Thread-20;|Created virtual server server|#] |
Diese Meldungen erwecken den Eindruck, dass der virtuelle Server, server , zweimal gestartet wurde. Dies ist jedoch nicht der Fall. Virtuelle Server werden nur einmal gestartet, die Meldungen werden jedoch mehrmals protokolliert.
Weitere Informationen finden Sie im Problembericht.
Keine.
Das Debuggen von JPA ist schwierig, weil nur eingeschränkt Meldungen vom Server zur Verfügung gestellt werden.
Weitere Informationen finden Sie im Problembericht.
Fügen Sie die Eigenschaft org.eclipse.persistence.session.level=INFO zur Datei logging.properties hinzu. Dann können Sie die EclipseLink-Protokollfunktionen mit der Administration Console steuern.
Es ist keine EJB-Interoperabilität für Remote-EJBs möglich, wenn sich die Ziel-EJB auf demselben Host befindet (andere Enterprise Server-Domäne oder andere Enterprise Server v3-Instanz).
Weitere Informationen finden Sie im Problembericht.
Setzen Sie die folgende Eigenschaft in jvm-options:
-Dorg.glassfish.orb.iiop.orbserverid=:
Bei der Installation unter Windows Vista und Windows 7 reagiert das grafische Installationsprogramm von Enterprise Server bei 41 % nicht mehr. Dieses Problem tritt nicht bei jedem Installationsversuch auf.
Weitere Informationen finden Sie im Problembericht.
Dieses Problem hängt mit der automatischen Abstimmungsfunktion in Windows Vista und Windows 7 zusammen, die standardmäßig aktiviert ist.
Wenn das System bei der anfänglichen Installation von Enterprise Server oder beim Hinzufügen von Paketen oder Anwenden von Updates nicht mehr reagiert, schränken Sie die automatische Abstimmungsfunktion ein, oder deaktivieren Sie sie.
Standardmäßig ist localhost als Hostname für den JMS-Dienst auf Enterprise Server vorgegeben. Wenn Sie von einem anderen System aus auf den JMS-Dienst zugreifen möchten, müssen Sie den Hostnamen ändern. Sie können entweder den tatsächlichen Hostnamen oder 0.0.0.0 angeben.
Weitere Informationen finden Sie im Problembericht.
Führen Sie zum Vornehmen der Änderung einen der folgenden Schritte aus:
Erweitern Sie in der Administration Console die Knoten "Konfiguration", "Java Message Service" und "JMS-Hosts", wählen Sie default_JMS_host aus, und bearbeiten Sie das Feld "Host", oder
Verwenden Sie einen asadmin-Unterbefehl wie den folgenden:
asadmin set server-config.jms-service.jms-host.default_JMS_host.host="0.0.0.0" , oder
asadmin set server-config.jms-service.jms-host.default_JMS_host.host="hostname"
Wenn Enterprise Server mit dem grafischen Installationsprogramm installiert wird, wird die Installation zwar erfolgreich abgeschlossen, es wird jedoch nur der oberste GlassFish v3-Eintrag zum Windows-Systemmenü hinzugefügt, der zudem leer ist. Dieses Problem tritt sowohl mit dem englischsprachigen Installationsprogramm als auch mit den lokalisierten Versionen auf.
Weitere Informationen finden Sie im Problembericht.
Keine.
mysql wird in der Liste unterstützter Datenbanken in --dbvendorname auf der Man Page für den Befehl deploy nicht aufgeführt. Das ist nicht korrekt. MySQL ist eine unterstützte Datenbank und sollte aufgeführt werden.
Weitere Informationen finden Sie im Problembericht unter .
Keine.
Die ACC erwartet als aktuellen Kontext-Klassenladeprogramm des Threads einen ACCClassLoader. Dies ist übermäßig restriktiv. Diese Bedingung wird zwar für das Skript appclient sowie beim Start von Java Web Start erfüllt, aber möglicherweise nicht im Fall einer Einbettung. Andere Funktionen innerhalb der ACC erfordern als Klassenladeprogramm einen URLClassLoader (oder eine Instanz einer Unterklasse von URLClassLoader), aber das Ladeprogramm muss kein ACCClassLoader sein.
Weitere Informationen finden Sie im Problembericht unter .
Es gibt zwei Abhilfemaßnahmen:
Nehmen Sie die Einstellung -Djava.system.class.loader=org.glassfish.appclient.client.acc.ACCClassLoader vor, oder
instanziieren Sie in Ihrem Java-Programm einen ACCClassLoader und legen Sie ihn unter Verwendung von Thread.currentThread().setContextClassLoader als aktuelles Kontext-Klassenladeprogramm des Threads fest, bevor Sie die eingebetteten ACC-Klassen und -Oberflächen verwenden.
Erstellen und Speichern des EJB-Timers als Benutzer in MySQL ist möglich, aber beim Konfigurieren des EJB-Zeitgeberdienstes für MySQL tritt folgender Ausnahmefehler auf (SQLException beim Ausführen der Anweisung):
"CREATE TABLE EJB__TIMER__TBL (TIMERID VARCHAR(255) NOT NULL, BLOB BLOB(64000), INITIALEXPIRATIONRAW BIGINT, SCHEDULE VARCHAR(255), INTERVALDURATION BIGINT, OWNERID VARCHAR(255), STATE INTEGER, LASTEXPIRATIONRAW BIGINT, PKHASHCODE INTEGER, CREATIONTIMERAW BIGINT, CONTAINERID BIGINT, PRIMARY KEY (TIMERID))": com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'BLOB BLOB(64000), INITIALEXPIRATIONRAW BIGINT, SCHEDULE VARCHAR(255), INTERVALDU' at line 1|#] |
Weitere Informationen finden Sie im Problembericht unter .
Vergewissern Sie sich, dass der für den Zeitgeber-Pool angegebene datasource-classname eine XA-DataSource darstellt.
Für MySQL spezifische Schritte:
Entpacken Sie glassfishv3/glassfish/lib/install/applications/ejb-timer-service-app.war.
Fügen Sie Folgendes zu WEB-INF/classes/__ejb_timer_mappings.xml nach <persistence-unit-metadata> hinzu:
<persistence-unit-defaults> <delimited-identifiers/> </persistence-unit-defaults>
Verpacken Sie die Datei WEB-INF/classes/__ejb_timer_mappings.xml neu.
(Dieser Schritt ist nur erforderlich, wenn die aktuelle Installation den EJB-Zeitgeberdienst bereits verwendet hat.) Erstellen Sie EJB__TIMER__TBL manuell in der Datenbank und verwenden Sie dabei diese Anweisung:
CREATE TABLE `EJB__TIMER__TBL` (`TIMERID` VARCHAR(255) NOT NULL, `BLOB` BLOB(64000), `INITIALEXPIRATIONRAW` BIGINT, `SCHEDULE` VARCHAR(255), `INTERVALDURATION` BIGINT, `OWNERID` VARCHAR(255), `STATE` INTEGER, `LASTEXPIRATIONRAW` BIGINT, `PKHASHCODE` INTEGER, `CREATIONTIMERAW` BIGINT, `CONTAINERID` BIGINT, PRIMARY KEY (`TIMERID`))
Der Unterbefehl deploy schlägt über einen sicheren Server fehl, es sei denn, die Option --secure wird verwendet.
Weitere Informationen finden Sie im Problembericht unter .
Verwenden Sie die Option --secure beim Ausführen des Unterbefehls deploy über einen sicheren Server.
Eines der Berechtigungszertifikate im Enterprise Server-Truststore ist am 7. Januar 2010 abgelaufen. Das Zertifikat ist cacerts.jks Beim Start wird eine Fehlermeldung angezeigt, die auf den Ablauf des Zertifikats hinweist:
Version: V1 Subject: OU=Secure Server Certification Authority, O="RSA Data Security, Inc.", C=US Signature Algorithm: MD2withRSA, OID = 1.2.840.113549.1.1.2 Key: SunPKCS11-Solaris RSA public key, 1000 bits (id 17891456, session object) modulus: public exponent: Validity: [From: Tue Nov 08 19:00:00 GMT-05:00 1994, To: Thu Jan 07 18:59:59 GMT-05:00 2010] Issuer: OU=Secure Server Certification Authority, O="RSA Data Security, Inc.", C=US SerialNumber: [ 02ad667e 4e45fe5e 576f3c98 195eddc0] |
Weitere Informationen finden Sie im Problembericht unter .
Das abgelaufene Berechtigungszertifikat wurde mit Update 18 von Java SE 6 entfernt. Es wird bei einem zukünftigen Update auch aus dem Enterprise Server-Truststore entfernt.
Sie können die Fehlermeldungen ignorieren und das Update durchführen oder die Fehlermeldungen beseitigen. Damit Sie keine weiteren Fehlermeldungen erhalten, entfernen Sie das Zertifikat mit dem Schlüsseltool aus dem Entreprise Server-Truststore:
=> cd domains/domainX/config => cp cacerts.jks cacerts.jks.save => keytool -delete -keystore cacerts.jks -alias verisignserverca Enter keystore password: |
Um zu verhindern, dass das abgelaufene Zertifikat in später erstellten Domänen wieder auftaucht, sollten Sie es auch aus dem Vorlagen-Truststore entfernen.
=> cd glassfish/lib/templates => cp cacerts.jks cacerts.jks.save => keytool -delete -keystore cacerts.jks -alias verisignserverca Enter keystore password: |
Weitere Informationen über das Schlüsselspeicherpasswort finden Sie in den Informationen über Master-Passwörter und Schlüsselspeicher unter Authentication in Sun GlassFish Enterprise Server v3 Administration Guide.
In diesem Abschnitt werden die folgenden Einschränkungen beschrieben, die für Sun GlassFish Enterprise Server v3 gelten:
In der Hilfe zu asadmin-Befehlen werden einige Optionen beschrieben, die nicht von Sun GlassFish Enterprise Server v3 unterstützt werden. Beispiel:
Optionen, die sich auf Cluster und Instanzen mit mehreren Servern beziehen, wie beispielsweise die Option --target
Optionen, die sich auf Profile beziehen, wie beispielsweise die Option --profile
Wenn Sie eine nicht unterstützte Option angeben, wird kein Syntaxfehler ausgegeben. Stattdessen wird der Befehl erfolgreich ausgeführt und die nicht unterstützte Option wird stillschweigend ignoriert.
Standardmäßig verwendet Enterprise Server die Client-VM, um die bestmögliche Start- und Bereitstellungsleistung zu erzielen. Bei Verwendung von Windows AMD64 bearbeiten Sie die Datei domain.xml , und entfernen Sie die Zeile <jvm-options>–client<jvm-options> . In diesem Fall wählt die JVM-Ergonomie die geeignete Art von VM für die jeweilige Plattform aus.
Weitere Informationen zur Plattformunterstützung finden Sie unter Ergonomics in the 5.0 Java Virtual Machine.
In der folgenden Tabelle finden Sie Titel und Kurzbeschreibungen von Büchern im Enterprise Server-Dokumentationssatz.
Tabelle 1–6 Bücher im Enterprise Server-Dokumentationssatz
Buchtitel |
Beschreibung |
---|---|
Bietet aktuelle Informationen zu Software und Dokumentation. Enthält eine umfassende, tabellarische Zusammenfassung zu unterstützter Hardware, zum Betriebssystem, zu Java Development Kit ( JDKTM) und Datenbanktreibern. |
|
Bietet grundlegende Informationen zum Arbeiten mit dem Produkt Enterprise Server. |
|
Erläutert die Installation der Software und der zugehörigen Komponenten. |
|
Erläutert das Verfahren zum Upgrade auf die neueste Version von Enterprise Server. In diesem Handbuch sind ferner die Unterschiede zwischen aufeinanderfolgenden Produktversionen und Konfigurationsoptionen beschrieben, die zu Inkompatibilitäten mit den Produktspezifikationen führen können. |
|
Erläutert die Konfiguration, Überwachung und Verwaltung von Enterprise Server-Subsystemen und -Komponenten über die Befehlszeile unter Verwendung des Dienstprogramms asadmin(1M). Anweisungen zur Ausführung dieser Aufgaben über Administration Console finden Sie in der Online-Hilfe zu Administration Console. |
|
Erläutert die Assemblierung und Bereitstellung von Anwendungen für Enterprise Server und enthält Informationen zu Bereitstellungsbeschreibungen. |
|
Bietet ein kurzes Lernprogramm für Java EE-Programmieranfänger, in dem das vollständige Verfahren zum Entwickeln einer einfachen Unternehmensanwendung erläutert wird. Als Beispiel dient eine Webanwendung, die aus einer Komponente auf Basis der Enterprise JavaBeansTM-Spezifikation, einem JAX-RS-Webdienst und einer JavaServerTM Faces-Komponente für das Web-Frontend besteht. |
|
Erläutert die Erstellung und Implementierung von Java Platform, Enterprise Edition-(Java EE-Plattform-)Anwendungen, die für die Ausführung auf Enterprise Server gedacht sind. Diese Anwendungen entsprechen dem Open Java-Standardmodell für Java EE-Komponenten und APIs. In diesem Handbuch finden Sie Informationen zu Entwicklertools, Sicherheit und Debugging. |
|
Erläutert die Verwendung veröffentlichter Schnittstellen von Enterprise Server zur Entwicklung von Add-On-Komponenten für Enterprise Server. In diesem Dokument wird ausschließlich die Ausführung von Aufgaben erläutert, die sicherstellen, dass die Add-On-Komponente für Enterprise Server geeignet ist. |
|
Erläutert die Ausführung von Anwendungen in embedded Enterprise Server sowie die Entwicklung von Anwendungen, in die Enterprise Server eingebettet ist. |
|
Erläutert die Entwicklung von Skriptanwendungen in Sprachen wie Ruby on Rails und Groovy on Grails für die Bereitstellung für Enterprise Server. |
|
Beschreibt häufige Probleme, die bei der Verwendung von Enterprise Server auftreten können, sowie Maßnahmen zu deren Behebung. |
|
Beschreibt Fehlermeldungen, die bei der Verwendung von Enterprise Server möglicherweise ausgegeben werden. |
|
Bietet Referenzinformationen in Form von Man Pages für Enterprise Server Verwaltungsbefehle, Dienstprogrammbefehle und verwandte Konzepte. |
|
Beschreibt das Format der Enterprise Server-Konfigurationsdatei, domain.xml . |
|
Erläutert die Verwendung der Java EE 6-Plattformtechnologien und -APIs zum Entwickeln von Java EE-Anwendungen. |
|
Beschreibt neue Funktionen, Kompatibilitätsprobleme und bestehende Bugs für Sun GlassFish Message Queue. |
|
Erläutert die Einrichtung und Verwaltung eines Sun GlassFish Message Queue-Messaging-Systems. |
|
Beschreibt die Anwendungsprogrammierschnittstelle (API) in Sun GlassFish Message Queue zur programmatischen Konfiguration und Überwachung von Message Queue-Ressourcen in Übereinstimmung mit den Java Management Extensions (JMX). |
|
Bietet eine Zusammenfassung des Sun-Supports für Sun Java System-Produkte, wenn diese in Kombination mit Produkten und Funktionen zur Systemvirtualisierung verwendet werden. |
Die folgenden Funktionen von Sun GlassFish Enterprise Server v3 stehen nur im vollständigen Plattformprofil zur Verfügung:
EJB-Funktionen, die zur vollständigen EJB 3.1-API gehören, wie Remote-EJB-Komponenten, meldungsgesteuerte Beans, EJB-Endpunkte von Webdiensten sowie der EJB-Zeitgeberdienst
Die EJB 3.1 Lite-Spezifikation wird im Webprofil unterstützt. Diese Spezifikation unterstützt Enterprise Beans in Webanwendungen und beinhaltet Unterstützung für lokale Session-Beans ohne Status, Session-Beans mit Status und Singleton-Session-Beans.
Anwendungsclient-Container
JMS-Ressourcen
Webdienste
Im Webprofil kann ein Servlet oder eine EJB-Komponente nicht als Webdienst-Endpunkt verwendet werden. Die Elemente sun-web.xml und sun-ejb-jar.xml, die sich auf Webdienste beziehen, werden ignoriert.
Nachrichtensicherheit
JavaMail-Ressourcen
Verbindungsmodule, die nur Funktionen für abgehende Kommunikation nutzen, und Arbeitsverwaltung, die keine Funktionen für eingehende Kommunikation umfasst, werden im Webprofil unterstützt. Andere Konnektorfunktionen werden nur im vollständigen Plattformprofil unterstützt.
Sun GlassFish Enterprise Server v3 implementiert die in der folgenden Tabelle aufgeführten Java EE-Standards. Die Tabelle gibt auch die Distributionen an, in denen die Implementierung eines Standards zur Verfügung steht.
X zeigt an, dass die Implementierung in der Distribution verfügbar ist.
- zeigt an, dass die Implementierung in der Distribution nicht verfügbar ist.
Java EE-Standard |
Java Specification Request (JSR) |
Sun GlassFish Enterprise Server v3 - Vollständiges Plattformprofil |
Sun GlassFish Enterprise Server v3 - Webprofil |
---|---|---|---|
X |
X |
||
X |
X |
||
X |
X |
||
Expression Language 2.2 |
X |
X |
|
Debugging Support for Other Languages 1.0 |
X |
X |
|
X |
X |
||
X |
X |
||
Common Annotations for the Java Platform 1.1 |
X |
X |
|
X |
X |
||
X |
X |
||
X |
X |
||
Managed Beans 1.0 |
X |
X |
|
Interceptors 1.1 |
X |
X |
|
Dependency Injection for Java 1.0 |
X |
X |
|
X |
X |
||
Contexts and Dependency Injection for Java EE 1.0 |
X |
X |
|
X |
X |
||
Bean Validation 1.0 |
X |
- |
|
X |
- |
||
X |
- |
||
X |
- |
||
Implementing Enterprise Web Services 1.3 |
X |
- |
|
Web Services Metadata for the Java Platform 2.1 |
X |
- |
|
X |
- |
||
X |
- |
||
X |
- |
||
Java Authentication Service Provider Interface for Containers 1.1 |
X |
- |
|
X |
- |
||
X |
- |
||
X |
- |
||
Java API for XML-Based Registries (JAXR) 1.0 |
X |
- |
Auf der Grundlage dieser Standards bietet Enterprise Server v3eine Reihe von Erweiterungen, darunter folgende:
Ajax (Asynchronous JavaScript and XML): Empfängt und zeigt neue Daten für einen Bereich einer Webseite an, ohne Einfluss auf den Rest der Seite.
Metro: Ein Webdienste-Stack, der Java Architecture for XML Binding (JAXB) und Java APIs for XML Web Services 2.1 (JAX-WS 2.1) implementiert.
Grizzly: Ein Framework zur Erstellung skalierbarer und robuster Server mithilfe von New I/O (NIO) APIs, die eine Skalierung auf Tausende Benutzer ermöglichen. Es besteht die Möglichkeit zur Einbettung von Komponenten, die HTTP, Bayeux Protocol, Java Servlet API und Comet unterstützen.
Enterprise Server v3 ist als Teil des Java EE 6 SDK verfügbar. Folgende Versionen des Java EE 6 SDK stehen zur Verfügung:
Java EE 6 SDK. Diese Version beinhaltet Sun GlassFish Enterprise Server v3. Diese Version ist für Entwickler konzipiert, die den vollständigen Satz Java EE-APIs für die Entwicklung von Unternehmensanwendungen benötigen.
Java EE 6 Web Profile SDK. Diese Version beinhaltet Sun GlassFish Enterprise Server v3 Webprofil. Diese Version enthält Webtechnologien, die Teil des vollständigen Plattformprofils sind, und ist für Entwickler konzipiert, die nicht den vollständigen Satz Java EE-APIs benötigen.
Java EE 6 SDK-Distributionen stehen auf der Java EE 6 SDK-Downloadseite zur Verfügung.
Wenn Sie Probleme mit Sun GlassFish Enterprise Server v3 haben, können Sie das Problem über einen der folgenden Mechanismen melden:
GlassFish-Verteilerlisten – Eine Vielzahl von GlassFish-Community-Verteilerlisten mit verschiedenen Interessenschwerpunkten und Möglichkeiten zum Übermitteln von Feedback.
GlassFish-Forum – Ein Forum für Diskussionen über das GlassFish-Projekt.
Nützliche Informationen über Sun finden Sie unter den folgenden Adressen:
Diese Dokumentation nimmt Bezug auf URLs zu Produkten von Drittanbietern und bietet weitere relevante Informationen.
Sun ist nicht für die Verfügbarkeit der in diesem Dokument erwähnten Websites anderer Hersteller verantwortlich. Sun haftet nicht für den Inhalt oder Werbung auf diesen Websites oder für die auf diesen Websites angebotenen Produkte und Materialien. Sun übernimmt keine Verantwortung oder Haftung für tatsächliche oder angebliche Schäden oder Verluste, die im Zusammenhang mit den auf diesen Websites angebotenen Informationen, Waren oder Dienstleistungen entstanden sind.
Um Eingabehilfen zu erhalten, die nach der Veröffentlichung dieses Dokuments auf den Markt gekommen sind, lesen Sie Abschnitt 508 der Produktbewertungen, die Sie bei Sun anfordern können, um zu ermitteln, welche Versionen am besten geeignet sind. Aktualisierte Versionen von Anwendungen finden Sie unter: http://sun.com/software/javaenterprisesystem/get.html.
Informationen für das Engagement von Sun zur Optimierung der Zugänglichkeit finden Sie unter http://sun.com/access.