2012-03-26 8 views
2

Ich habe zwei weblogic-verwaltete Instanzen auf einem Server bereitgestellt. Diese beiden Instanzen verwenden unterschiedliche Portnummern, sagen wir 7001 und 7002. Meine Frage ist, wie man die Portnummer in Runtime bekommt? Zum Beispiel, wenn inint1, ich will 7001, wenn in instance2, möchte ich 7002 bekommen.Wie Weblogic Managed Server erhalten Listen Port in Runtime?

Antwort

2

Verwenden Sie JMX.

können Sie ein Java-Programm schreiben, das die RuntimeService MBean nachschlägt

"com.bea: Name = RuntimeService, Type = weblogic.management.mbeanservers.runtime.RuntimeServiceMBean"

und daraus Sie kann alle Mitglieder des Clusters einschließlich des Administrators nachschlagen.

und ihre vollständigen IP-Adresse/DNS und Port-Nummern

Hier finden ist ein Starter Beispiel

http://middlewaremagic.com/weblogic/?p=210

5

Eine einfache Lösung ist WLST zu verwenden. Das folgende Skript erhält die Portnummern aller Server in Ihrer WebLogic-Server-Domäne.

HINWEIS: Wahrscheinlich müssen Sie die Leerzeichen am Anfang der vorletzten Zeile durch ein Tabulatorzeichen ersetzen.

Dieses Skript funktioniert gleichermaßen in Unix- oder Windows-Umgebungen.

an einer Eingabeaufforderung wlst script

Der Ausgang eines solchen Skript ähnelt:

Server   Port SSL 
AdminServer  7001 7002 
bam_server1  9001 9002 
osb_server1  7003 7004 
soa_server1  8001 8002 
4

Sie ein Skript wie dieses

verwenden können
export IDM_WLS_DOMAIN=IDMDomain 
export IDM_DOMAIN_HOME="$FMW_HOME/user_projects/domains/$IDM_WLS_DOMAIN" 
... 
export IDM_WLS_ADMIN_PORT=`cat $IDM_DOMAIN_HOME/bin/startManagedWebLogic.sh | grep 'ADMIN_URL="http' | cut -d '"' -f2 | cut -d ':' -f3` 

-> IDM_WLS_ADMIN_PORT wird gleich zu 7001 oder 7002, ...