Missing HTTP or HTTPS transport port for an application server
 Technote (troubleshooting)
 
Problem(Abstract)
When specifying an admin_host port as a HTTP or HTTPS transport port for any other Application Server, the generated plugin-cfg.xml file does not contain the transport port entry for that Application Server.
 
Cause
The admin_host (virtual host) is defined with the same port as the Application Server HTTP or HTTPS transport ports
 
Resolving the problem
The ports defined in the virtual host, admin_host, are reserved for the WebSphere® Application Server administrative console. Therefore, the ports cannot be duplicated in any other Application Servers other than server1 and dmgr. Therefore, you do not want to expose these ports to any other Web servers through the plugin-cfg.xmlfile.
When you perform plug-in regeneration, WebSphere Application Server does not generate an admin_host (virtual host) entry in the plugin-cfg.xml file. This behavior is expected and is working as designed.

If you specify an admin_host (virtual host HostAlias) port as a HTTP or HTTPS transport port for any other Application Server (for example: MyAppServer), the generated plugin-cfg.xml file does not contain the transport port entry for that Application Server.

Simple Rule
Do not use the admin_host (virtual host HostAlias) port as a HTTP or HTTPS Transport port for any other application server.

Important
Changing admin_host (virtual host) and dmgr or server1 HTTP or HTTPS transport ports might cause your administrative console to fail. It is also important to use the backupConfig command to always backup your configuration before any configuration changes ().

Manual changes to any WebSphere Application Server configuration files are not supported or recommended. Always use the administrative tools (Web console or wsadmin) for any configuration changes.

Examples
  • For stand-alone Base or Enterprise Edition:
    In this stand-alone environment, the administrative console is hosted by Application Server server1.

    This server1 will have HTTP or HTTPS transport port settings like any other application servers, but there are two specific HTTP or HTTPS ports reserved for the administrative console.

    Example:
    In this example, the server.xml file for server1, located in the directory,

    $WAS_HOME\config\cells\cell_name\nodes\Base or EE node\
    servers\server1\


    has the following entries as HTTP or HTTPS transport ports:

    <transports xmi:type="applicationserver.webcontainer:HTTPTransport"
    xmi:id="HTTPTransport_1" sslEnabled="false">
      <address xmi:id="EndPoint_1" host=""
     port="9085"/>
    </transports>
    <transports xmi:type="applicationserver.webcontainer:HTTPTransport"
    xmi:id="HTTPTransport_2" sslEnabled="true"
    sslConfig="KenGBase/DefaultSSLSettings">
      <address xmi:id="EndPoint_2" host=""
    port="9444"/>
    </transports>
    <transports
    xmi:type="applicationserver.webcontainer:HTTPTransport"
    xmi:id="HTTPTransport_3" sslEnabled="false">
      <address xmi:id="EndPoint_3" host=""
    port="9091"/>
    </transports>
    <transports xmi:type="applicationserver.webcontainer:HTTPTransport"
    xmi:id="HTTPTransport_4" sslEnabled="true"
    sslConfig="KenGBase/DefaultSSLSettings">
      <address xmi:id="EndPoint_4" host=""
    port="9044"/>
    </transports>

    and in this example, the virtualhosts.xml file, located in $WAS_HOME\config\cells\cell_name directory, has the following entries as a HostAlias for admin_host:

    <aliases port="9091" hostname="*" xmi:id="HostAlias_4"/>
    <aliases
    port="9044" hostname="*" xmi:id="HostAlias_5"/>

    Above, 9091 and 9044 are the reserved ports for the administrative console and they can not be duplicated or used by any other application servers.

    The generated plugin-cfg.xml file does not have 9091 and 9044 as a transport port. The reason is you do not want to expose this reserved port to any Web servers through the plugin-cfg.xml file:

    <ServerCluster CloneSeparatorChange="false"
         LoadBalance="Round Robin"
         Name="server1_KenGBase_Cluster"
         PostSizeLimit="10000000"
         RemoveSpecialHeaders="true"
         RetryInterval="60">

       <Server ConnectTimeout="0"
            ExtendedHandshake="false"
            MaxConnections="0"
            Name="KenGBase_server1"

            WaitForContinue="false">
     
       <Transport Hostname="KenG"
               Port="9085"
               Protocol="http"/>
         <Transport Hostname="KenG"
               Port="9444"
               Protocol="https
    ">
     
          <Property Name="keyring"
               Value="C:\WebSphere\50X\Base\etc\plugin-key.kdb"/>
            <Property Name="stashfile"
               Value="C:\WebSphere\50X\Base\etc\plugin-key.sth"/>
            <Property Name="certLabel" Value="selfsigned"/>
         </Transport>
      </Server>
      <PrimaryServers>
         <Server Name="KenGBase_server1"/>
      </PrimaryServers>
    </ServerCluster>


  • For Network Deployment (ND):
    In this environment, the administrative console is hosted by Application Server, dmgr. This dmgr also has HTTP or HTTPS transport ports like any other Application Server and again is associated with admin_host (virtual host HostAlias).
Below, the server.xml for dmgr, located in the directory,

$WAS_HOME\config\cells\cell_name\nodes\ND_node\servers\dmgr

has the following entries as a HTTP or HTTPS Transport Port:

<transports xmi:type="applicationserver.webcontainer:HTTPTransport" xmi:id="HTTPTransport_1" sslEnabled="false">
          <address port="6091" host="" xmi:id="EndPoint_1"/>
        </transports>
        <transports xmi:type="applicationserver.webcontainer:HTTPTransport" xmi:id="HTTPTransport_1" sslEnabled="true" sslConfig="KenGManager/DefaultSSLSettings">
          <address port="6044" host="" xmi:id="EndPoint_2"/>
          <properties xmi:id="Property_9" name="MaxKeepAliveConnections" value="0" required="false"/>
</transports>

The virtualhosts.xml file located in the directory,

$WAS_ND_HOME\config\cells\cell_name

has the following entries as a HostAlias for admin_host:

<aliases xmi:id="HostAlias_4" hostname="*" port="6091"/>
<aliases xmi:id="HostAlias_5" hostname="*" port="6044"/>

The generated plugin-cfg.xml file does not have a transport port entry for dmgr. The reason is you do not want to expose this reserved port to any Web servers through the plugin-cfg.xml file.

<ServerCluster CloneSeparatorChange="false"
      LoadBalance="Round Robin"
     Name="
dmgr_KenGManager_Cluster"
     PostSizeLimit="10000000"
     RemoveSpecialHeaders="true"
     RetryInterval="60">

   <Server ConnectTimeout="0"
        ExtendedHandshake="false"

         MaxConnections="0"
        Name="KenGManager_dmgr"
        WaitForContinue="false"/>

   <PrimaryServers>
      <Server Name="KenGManager_dmgr"/>
   </PrimaryServers>
</ServerCluster>
 
 
Cross Reference information
Segment Product Component Platform Version Edition
Application Servers Runtimes for Java Technology Java SDK
 
 


Document Information


Product categories: Software > Application Servers > Distributed Application & Web Servers > WebSphere Application Server > HTTP Transport
Operating system(s): Windows
Software version: 5.0.2.5
Software edition:
Reference #: 1170471
IBM Group: Software Group
Modified date: May 29, 2004