+

Search Tips   |   Advanced Search

Running wsadmin.sh remotely in a Java 2 Platform, Standard Edition environment

The thin administrative client adds JAR files that support administrative client functions that we can use with IBM Developer Kits For the Java Platform.

Be aware of the following limitations:

For tracing and logging information for the thin administrative client, see the Enable trace on client and stand-alone applications topic .

  1. Obtain the thin administrative client JAR file and other required files required when security is on from the WAS Network Deployment installation. Refer to the topic Using the administration thin client for details about the files that we need to perform this task.

  2. Generate the wsadmin.sh or the wsadmin.bat file from the server machine.

  3. Copy the Java directory from the server installation to your thin client environment.

  4. Start wsadmin.sh in a non-OSGi environment. Examples of the wsadmin.bat file and the wsadmin.sh file are as follows:

    Example: wsadmin.bat

    @REM wsadmin launcher  @echo off  @REM Usage: wsadmin arguments setlocal  @REM was home should point to whatever directory you decide for the thin client environment   set WAS_HOME=c:\MyThinClient  set USER_INSTALL_ROOT=%WAS_HOME%   @REM Java home should point to where you installed java for the thinclient  set JAVA_HOME="%WAS_HOME%\java"  set WAS_LOGGING=-Djava.util.logging.manager=com.ibm.ws.bootstrap.WsLogManager -Djava.util.logging.configureByServer=true
    set THIN_CLIENT=-Dcom.ibm.websphere.thinclient=true
     if exist "%JAVA_HOME%\bin\java.exe" (
        set JAVA_EXE="%JAVA_HOME%\bin\java" )   else (      set JAVA_EXE="%JAVA_HOME%\jre\bin\java" )    @REM CONSOLE_ENCODING controls the output encoding used for stdout/stderr  @REM console - encoding is correct for a console window  @REM file - encoding is the default file encoding for the system  @REM other - the specified encoding is used.  e.g. Cp1252, Cp850, SJIS  @REM SET CONSOLE_ENCODING=-Dws.output.encoding=console   @REM For debugging the utility itself  @REM set WAS_DEBUG=-Djava.compiler=NONE -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=7777    set CLIENTSOAP=-Dcom.ibm.SOAP.ConfigURL=file:"%USER_INSTALL_ROOT%"\properties\soap.client.props  set CLIENTSAS=-Dcom.ibm.CORBA.ConfigURL=file:"%USER_INSTALL_ROOT%"\properties\sas.client.props  set CLIENTSSL=-Dcom.ibm.SSL.ConfigURL=file:"%USER_INSTALL_ROOT%"\properties\ssl.client.props  set CLIENTIPC=-Dcom.ibm.IPC.ConfigURL=file:"%USER_INSTALL_ROOT%"\properties\ipc.client.props   set JAASSOAP=-Djava.security.auth.login.config=%USER_INSTALL_ROOT%\properties\wsjaas_client.conf
     
    @REM the following are wsadmin property  @REM we need to change the value to enabled to turn on trace  set wsadminTraceString=-Dcom.ibm.ws.scripting.traceString=com.ibm.*=all=disabled  set wsadminTraceFile=-Dcom.ibm.ws.scripting.traceFile="%USER_INSTALL_ROOT%"\logs\wsadmin.traceout  set wsadminValOut=-Dcom.ibm.ws.scripting.validationOutput="%USER_INSTALL_ROOT%"\logs\wsadmin.valout   @REM this will be the server host that you will connecting to  set wsadminHost=-Dcom.ibm.ws.scripting.host=myhost.austin.ibm.com    @REM make sure the port number is the server SOAP port number to connect to, in this  example the server SOAP port is 8887  set wsadminConnType=-Dcom.ibm.ws.scripting.connectionType=SOAP  set wsadminPort=-Dcom.ibm.ws.scripting.port=8887    @REM make sure the port number is the server RMI port number to connect to, in this example  the server RMI Port is 2815  @REM set wsadminConnType=-Dcom.ibm.ws.scripting.connectionType=RMI  @REM set wsadminPort=-Dcom.ibm.ws.scripting.port=2815    @REM make sure the port number is the server JSR160RMI port number to connect to,  in this example the server JSR160RMI Port is 2815  @REM set wsadminConnType=-Dcom.ibm.ws.scripting.connectionType=JSR160RMI  @REM set wsadminPort=-Dcom.ibm.ws.scripting.port=2815    @REM make sure the port number is the server IPC port number to connect to,  in this example the server IPC Port is 9632 and the host for IPC should be localhost  @REM set wsadminHost=-Dcom.ibm.ws.scripting.ipchost=localhost  @REM set wsadminConnType=-Dcom.ibm.ws.scripting.connectionType=IPC  @REM set wsadminPort=-Dcom.ibm.ws.scripting.port=9632    @REM specify what language to use with wsadmin  set wsadminLang=-Dcom.ibm.ws.scripting.defaultLang=jacl  @REM set wsadminLang=-Dcom.ibm.ws.scripting.defaultLang=jython    set SHELL=com.ibm.ws.scripting.WasxShell    :prop set WSADMIN_PROPERTIES_PROP=  if not defined WSADMIN_PROPERTIES goto workspace  set WSADMIN_PROPERTIES_PROP="-Dcom.ibm.ws.scripting.wsadminprops=%WSADMIN_PROPERTIES%"    :workspace set WORKSPACE_PROPERTIES=  if not defined CONFIG_CONSISTENCY_CHECK goto loop  set WORKSPACE_PROPERTIES="-Dconfig_consistency_check=%CONFIG_CONSISTENCY_CHECK%"    :loop  if '%1'=='-javaoption' goto javaoption  if '%1'=='' goto runcmd  goto nonjavaoption    :javaoption  shift  set javaoption=%javaoption% %1  goto again    :nonjavaoption  set nonjavaoption=%nonjavaoption% %1    :again  shift  goto loop     :runcmd    set C_PATH="%WAS_HOME%\properties;%WAS_HOME%\com.ibm.ws.admin.client_8.0.0.jar;%WAS_HOME%\com.ibm.ws.security.crypto.jar"   set PERFJAVAOPTION=-Xms256m -Xmx256m -Xj9 -Xquickstart    if "%JAASSOAP%"=="" set JAASSOAP=-Djaassoap=off    "%JAVA_EXE%" %PERFJAVAOPTION% %WAS_LOGGING% %javaoption% %CONSOLE_ENCODING% %WAS_DEBUG% "%THIN_CLIENT%"  "%JAASSOAP%" "%CLIENTSOAP%" "%CLIENTSAS%" "%CLIENTIPC%" "%CLIENTSSL%" %WSADMIN_PROPERTIES_PROP%  %WORKSPACE_PROPERTIES% "-Duser.install.root=%USER_INSTALL_ROOT%" "-Dwas.install.root=%WAS_HOME%"  %wsadminTraceFile% %wsadminTraceString% %wsadminValOut% %wsadminHost% %wsadminConnType% %wsadminPort%
     %wsadminLang% -classpath %C_PATH% com.ibm.ws.scripting.WasxShell %*    set RC=%ERRORLEVEL%    goto END    :END    @endlocal  set MYERRORLEVEL=%ERRORLEVEL% if defined PROFILE_CONFIG_ACTION exit %MYERRORLEVEL% else exit /b %MYERRORLEVEL%

    Example: wsadmin.sh

    #!/bin/bash # example wsadmin launcher
    # WAS_HOME should point to the directory for the thin client  WAS_HOME="/MyThinClient"
    USER_INSTALL_ROOT="/MyThinClient"
     # JAVA_HOME should point to where java is installed for the thin client JAVA_HOME="$WAS_HOME/java"
     WAS_LOGGING="-Djava.util.logging.manager=com.ibm.ws.bootstrap.WsLogManager -Djava.util.logging.configureByServer=true"
     if [[ -f ${JAVA_HOME}/bin/java ]]; then    JAVA_EXE="${JAVA_HOME}/bin/java"
    else
       JAVA_EXE="${JAVA_HOME}/jre/bin/java"
    fi
     # For debugging the utility itself
    # WAS_DEBUG=-Djava.compiler="NONE -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=7777"
     CLIENTSOAP="-Dcom.ibm.SOAP.ConfigURL=file:${USER_INSTALL_ROOT}/properties/soap.client.props"
    CLIENTSAS="-Dcom.ibm.CORBA.ConfigURL=file:${USER_INSTALL_ROOT}/properties/sas.client.props"
    CLIENTSSL="-Dcom.ibm.SSL.ConfigURL=file:${USER_INSTALL_ROOT}/properties/ssl.client.props"
    CLIENTIPC="-Dcom.ibm.IPC.ConfigURL=file:${USER_INSTALL_ROOT}/properties/ipc.client.props"
     # the following are wsadmin property  # we need to change the value to enabled to turn on trace wsadminTraceString=-Dcom.ibm.ws.scripting.traceString=com.ibm.*=all=enabled
    wsadminTraceFile=-Dcom.ibm.ws.scripting.traceFile=${USER_INSTALL_ROOT}/logs/wsadmin.traceout
    wsadminValOut=-Dcom.ibm.ws.scripting.validationOutput=${USER_INSTALL_ROOT}/logs/wsadmin.valout
     # this will be the server host that you will be connecting to wsadminHost=-Dcom.ibm.ws.scripting.host=myhost.austin.ibm.com
     # make sure the port number is the server SOAP port number to connect to,  in this example the server SOAP port is 8875
    wsadminConnType=-Dcom.ibm.ws.scripting.connectionType=SOAP
    wsadminPort=-Dcom.ibm.ws.scripting.port=8875
     # make sure the port number is the server RMI port number to connect to,  in this example the server RMI port is 2811
    #wsadminConnType=-Dcom.ibm.ws.scripting.connectionType=RMI
    #wsadminPort=-Dcom.ibm.ws.scripting.port=2811
     # make sure the port number is the server JSR160RMI port number to connect to, in this example the server JSR160RMI port is 2811
    #wsadminConnType=-Dcom.ibm.ws.scripting.connectionType=JSR160RMI
    #wsadminPort=-Dcom.ibm.ws.scripting.port=2811
     # make sure the port number is the server IPC port number to connect to, in this example the server IPC port is 9630
    #wsadminHost=-Dcom.ibm.ws.scripting.ipchost=localhost
    #wsadminConnType=-Dcom.ibm.ws.scripting.connectionType=IPC
    #wsadminPort=-Dcom.ibm.ws.scripting.port=9630
     # specify what language to use with wsadmin wsadminLang=-Dcom.ibm.ws.scripting.defaultLang=jacl
    #wsadminLang=-Dcom.ibm.ws.scripting.defaultLang=jython
     SHELL=com.ibm.ws.scripting.WasxShell
     # If wsadmin properties is set, use it if [[ -n "${WSADMIN_PROPERTIES+V}" ]]; then      WSADMIN_PROPERTIES_PROP="-Dcom.ibm.ws.scripting.wsadminprops=${WSADMIN_PROPERTIES}"
    else
         # Not set, do not use it      WSADMIN_PROPERTIES_PROP=
    fi
     # If config consistency check is set, use it if [[ -n "${CONFIG_CONSISTENCY_CHECK+V}" ]]; then      WORKSPACE_PROPERTIES="-Dconfig_consistency_check=${CONFIG_CONSISTENCY_CHECK}"
    else
         WORKSPACE_PROPERTIES=
    fi
     
    # Parse the input arguments isJavaOption=false
    nonJavaOptionCount=1
    for option in "$@" ; do   if [ "$option" = "-javaoption" ] ; then      isJavaOption=true
      else
         if [ "$isJavaOption" = "true" ] ; then         javaOption="$javaOption $option"
            isJavaOption=false
         else
            nonJavaOption[$nonJavaOptionCount]="$option"
            nonJavaOptionCount=$((nonJavaOptionCount+1))
         fi
      fi
    done  DELIM=" "
    C_PATH="${WAS_HOME}/properties:${WAS_HOME}/com.ibm.ws.admin.client_8.0.0.jar:${WAS_HOME}/com.ibm.ws.security.crypto.jar"
     #Platform specific args...
    PLATFORM=`/bin/uname`
    case $PLATFORM in   AIX | Linux | SunOS | HP-UX)
        CONSOLE_ENCODING=-Dws.output.encoding=console ;;
      OS/390)
        CONSOLE_ENCODING=-Dfile.encoding=ISO8859-1
        EXTRA_X_ARGS="-Xnoargsconversion" ;;
    esac
     # Set java options for performance PLATFORM=`/bin/uname`
    case $PLATFORM in   AIX)
          PERF_JVM_OPTIONS="-Xms256m -Xmx256m -Xquickstart" ;;
      Linux)
          PERF_JVM_OPTIONS="-Xms256m -Xmx256m -Xj9 -Xquickstart" ;;
      SunOS)
          PERF_JVM_OPTIONS="-Xms256m -Xmx256m -XX:PermSize=40m" ;;
      HP-UX)
          PERF_JVM_OPTIONS="-Xms256m -Xmx256m -XX:PermSize=40m" ;;
      OS/390)
          PERF_JVM_OPTIONS="-Xms256m -Xmx256m" ;;
    esac   if [[ -z "${JAASSOAP}" ]]; then      JAASSOAP="-Djaassoap=off"
    fi
     "${JAVA_EXE}" \
        ${PERFJAVAOPTION} \
        ${EXTRA_X_ARGS} \
        -Dws.ext.dirs="$WAS_EXT_DIRS" \
        ${EXTRA_D_ARGS} \
        ${WAS_LOGGING} \
        ${javaoption} \
        ${CONSOLE_ENCODING} \
        ${WAS_DEBUG} \
        "${CLIENTSOAP}" \
        "${JAASSOAP}" \
        "${CLIENTSAS}" \
        "${CLIENTSSL}" \
        "${CLIENTIPC}" \
        ${WSADMIN_PROPERTIES_PROP} \
        ${WORKSPACE_PROPERTIES} \
        "-Duser.install.root=${USER_INSTALL_ROOT}" \
        "-Dwas.install.root=${WAS_HOME}" \
        "-Dcom.ibm.websphere.thinclient=true" \
        "-Djava.security.properties=${WAS_HOME}/properties/java.security" \
        ${wsadminTraceFile} \
        ${wsadminTraceString} \
        ${wsadminValOut} \
        ${wsadminHost} \
        ${wsadminConnType} \
        ${wsadminPort} \
        ${wsadminLang} \
        -classpath \
        "${C_PATH}" \
        com.ibm.ws.scripting.WasxShell \
        "${nonJavaOption[@]}"
     exit $?

  5. (zos) For the z/OS environment, the wsadmin.sh script should have all the properties specified in the wsadmin.bat example listed in Step 4.

    Example

    %JAVA_EXE%  -classpath "%C_PATH%"  -Dcom.ibm.websphere.thinclient=true  -Duser.install.root=%USER_INSTALL_ROOT% -
    Dcom.ibm.SSL.ConfigURL=file:%WAS_HOME%/properties/ssl.client.props %SOAPURL% your_class_file
     ${JAVA_EXE}  -classpath "${C_PATH}"  -Dcom.ibm.websphere.thinclient=true
     -Duser.install.root=${USER_INSTALL_ROOT}
     -Dcom.ibm.SSL.ConfigURL=file:${WAS_HOME}/properties/ssl.client.props ${SOAPURL} your_class_file


Related tasks

  • Use wsadmin scripting
  • Enable trace on client and stand-alone applications
  • Start the wsadmin scripting client
  • Use the Administration Thin Client