Sun Java System Application Server Enterprise Edition 8.1 2005Q2 Versionshinweise

Beispiele

In diesem Abschnitt werden die bekannten Probleme zum Beispielcode der Anwendungsserver 8.1-Software und ihre Lösungen beschrieben.

Bug-ID 

Zusammenfassung 

6195092 

Unter Windows reagiert setup-one-machine-cluster nicht mehr, funktioniert aber unter Solaris; für mqfailover muss Strg+C gedrückt werden, um den Prozess abzubrechen. Dieser muss anschließend erneut ausgeführt werden.

In install_dir\samples\ee-samples\failover\apps\mqfailover\docs\index.html, wenn Sie folgende Befehle ausführen:

  • Konsole 1


    cd Installationsverzeichnis\samples\ee-samples asant start-mq-master-broker1
  • Konsole 2


    cd Installationsverzeichnis\samples\ee-samples asant start-mq-cluster-broker1
  • Konsole 3


    cd Installationsverzeichnis\samples\ee-samples asant start-mq-cluster-broker2
  • Konsole 4


    cd Installationsverzeichnis\samples\ee-samples asadmin start-domain domain1

Wenn Sie für ein anderes EE-Beispiel bereits asant setup-one-machine-cluster-without-ha oder asant setup-one-machine-cluster-with-ha ausgeführt haben, führen Sie asant configure-mq aus. Führen Sie anderenfalls asant setup-one-machine-cluster-and-configure-mq aus. Die Meldung zeigt an, dass der Befehl erfolgreich ausgeführt wurde:


start_nodeagent: [echo] Starten des Knoten-Agenten cluster1-nodeagent
[exec] Befehl start-node-agent erfolgreich ausgeführt.

Das System bleibt jedoch hängen und reagiert nicht mehr. 

Lösung

Zu diesem Zeitpunkt steht keine Lösung zur Verfügung. Dieses Problem beeinträchtigt auf ähnliche Weise alle Enterprise Edition-Beispiele, die dieses ant-Ziel unter Windows verwenden. Zur Problemlösung drücken Sie Strg+C, um den nicht mehr reagierenden Prozess zu beenden, und führen Sie ihn dann erneut aus.

6198003 

In der Dokumentation ist nicht ausdrücklich angegeben, dass Sie JMS-Ressource erstellen müssen, bevor die Beispielanwendung für das MQ-Failover im Anschluss an die asadmin-Bereitstellungsanweisungen ausgeführt wird.

Folgender Fehler wird ausgegeben:  


/opt/SUNWappserver/domains/domain1/config/sun-acc.xml -name
MQFailoverTestClient -textauth -user j2ee -password j2ee
Nov 18, 2004 10:50:17 PM com.sun.enterprise.naming.NamingManagerImpl
bindObjects
SEVERE: NAM0006: JMS-Zielobjekt nicht gefunden: jms/durable/TopicA
Nov 18, 2004 10:50:18 PM com.sun.enterprise.naming.NamingManagerImpl
bindObjects
SEVERE: javax.naming.NameNotFoundException
javax.naming.NameNotFoundException

In der Dokumentation wird nicht ausdrücklich erwähnt, dass bei einer manuellen Bereitstellung mit den Befehlen asadmin deploy JMS-Ressourcen manuell erstellt und die vorgegebenen ant-Ziele für das Bereitstellen derselben Software verwendet werden müssen.

Lösung

Verwenden Sie für das Skript build.xml das Ziel asant-Bereitstellung. Das Skript erstellt die für die Ausführung der Anwendung erforderlichen JMS-Ressourcen.

6198239 

Unter Linux wird bei der Zertifikaterstellung von Beispielen in webservices/security ein Laufzeitfehler angezeigt. 

Wenn Sie das Beispiel install_dir/samples/webservices/security sample (basicSSl) unter Linux bereitstellen, wird das Zertifikat nicht erstellt und ein Fehler ausgegeben, der etwa dem Folgenden entspricht:


generate_certs: [echo] ***Export des Zertifikats von der NSS-Datenbank
[exec] Ergebnis: 1 [echo] ***Erzeugen eines Java-Schlüsselspeichers anhand
des generierten Zertifikats [exec] Keytool-Fehler: java.lang.Exception: Input kein
X.509-Zertifikat [exec] Ergebnis: 1 [echo] ***Erzeugen eines Java-
Vertrauensspeichers anhand des generierten Zertifikats [exec] Keytool-Fehler:
java.lang. Ausnahmefehler: Input kein X.509-Zertifikat [exec] Ergebnis: 1
.
.
.
generate_certs: [echo] ***Export des Serverzertifikats von der NSS-Datenbank in
eine PKCS12-Zertifikatdatei [exec] /opt/sun/appserver/lib/pk12util: /usr/lib/
libnss3.so: Version `NSS_3.9' nicht gefunden (von /opt/sun/appserver/lib/
pk12util gefordert) [exec] /opt/sun/appserver/lib/pk12util: /usr/lib/libnss3.so:
Version `NSS_3.6' nicht gefunden (von /opt/sun/appserver/lib/pk12util gefordert)
[exec] /opt/sun/appserver/lib/pk12util: /usr/lib/libnss3.so: Version
`NSS_3.7' nicht gefunden (von /opt/sun/appserver/lib/pk12util gefordert) [exec]
Ergebnis: 1

Das Problem besteht darin, dass sich NSS-Bibliotheken bei Linux-Installationen in anderen Pfaden befinden als bei Solaris-Installationen. Bei der Bereitstellung unter Linux müssen Sie sicherstellen, dass LD_LIBRARY_PATH auf die richtigen NSS-Bibliotheken verweist. Setzen Sie die Variable LD_LIBRARY_PATH entweder in Ihrer Umgebung oder im Shell-Wrapper-Skript Installationsverzeichnis/bin/asant.

Lösung

Gehen Sie folgendermaßen vor: 

  • Setzen Sie die Variable wie folgt: LD_LIBRARY_PATH=/opt/sun/private/lib.

  • Fügen Sie dem Skript install_dir /bin/asant folgende Zeile hinzu:


    LD_LIBRARY_PATH=$AS_NSS:$LD_LIBRARY_PATH;export LD_LIBRARY_PATH