Initial Install Locations

All extension files are held in a single directory located in the Windchill folder.

Directory Description
wex All Windchill Extension files are located here.
wex/codebase/kernel.jar The WEX kernel that will be loaded into the Windchill classpath.
wex/packages The WEXes deployed in the system are organized into folders in this directory.
wex/deploy Windchill Extensions to be installed by the deployer on system start-up must be placed here.

Server Startup Procedure

Server Configuration

Every Method Server in the system, including the background server, will load the kernel on startup. This is because the platform added the wex.xconf file into the Windchill declaration.xconf.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Configuration SYSTEM "xconf.dtd">
<Configuration xmlns:xlink="http://www.w3.org/1999/xlink">
   ...
   <ConfigurationRef xlink:href="wex/packages/com.wincomplm/wex-kernel/wex.xconf"/>
</Configuration>

If it is required to prevent the kernel loading on startup, then this entry may be removed from the declaration.xconf file.

Automatic Deployment

The servers will deploy any extensions that finds in the deploy area. In the case of a multi-Method Server machine, the first server to be initialized will perform all the deployments. Once it is complete, the other servers will register the new extensions.

The WEX uses a lock file to signal to the other servers that it is the master during initialization.

wex/wex.lock

If the master crashes or is aborted during startup, this may cause a temporary pause in the WEX initialization sequence. The slave servers will verify (using an id stored in the lock file) whether the master is still alive or if it is down: if after 3 attempts there is no response from the master, one of the slave servers will gain the lock and become the new master.

Logging

One of the most important tools for resolving issues is logging. Logging is dynamic and can be enabled and disabled from the console. It will turn on logging across this system in all servers including the Background Server.

Note: Logging should not be left on for any length of time on a system, as it will slightly negatively affect performance.

Diagnostics

System Diagnostics

The Extension Diagnostics provides a set of tools to assist in troubleshooting issues.

1616706024689

Action Description
Display Servers Displays a list of the servers in the system, including the cluster servers.
Reinstall All Extensions Reinstalls (removes and reinjects all touch points) all extensions currently in the system. It can be used to correct issues such as double menu entries.
System Status Shows the status of the current server and prints in the logs of all servers the status of the kernel.
Update Kernels Forces the kernel to reload all extensions.
Update Menus Forces the system to reload the menu system.

Extension Diagnostics

Some extensions may have a specially developed diagnostics page to allow the admin to run tests. It can be accessed through the Extension Manager as seen in the screenshot below.

1616706874101