API Reference

Overview

The goal of this section is to provide the developer with a reference of the APIs provided by the WEX Framework. All of the resources listed here can be included as dependencies by connecting with our online repository and are periodically updated. Make sure you use the latest version of our parent in order to get the most recent upgrades.

The EDK API can be separated in three types:

Type Description
Kernel The APIs that are in the Windchill class path and are the hooks used to add features to Windchill.
System WEX API that give access to the extensions that form the static permanent infrastructure of the WEX Platform.
Commons Libraries that are statically included in extensions. Access to these may depend on your license.

Kernel

Annotations

All annotations are provided in the com.wincomplm.wex.kernel.impl.annotations.WexComponent package. The primary purpose of an annotation is to make a feature visible to Windchill, so these classes can be used in the UI and be called as services and listeners.

Class Arguments Description Example
@WexComponent uid = String, description = String A standard declaration of a feature. all
@ConfigOption category = String, description = String, required = boolean Used to define a config option in the UI. config
@RBUUID String Used to declare the resource bundle name used in Windchill. helloworld, tables, tree, ui, wizard
@RBNameException None Used when defining a resource bundle. as above
@WexLocale The local e.g. WexLanguage.FRENCH Used in a resource bundle to indicate the locale. as above
@WexLanguage Language enum Used to define 1 of Windchill's 12 languages. as above
@WexDataUtility value = id, available = @WexAvailableAttribute(types = {... class list}, label = resource id) Adds a new data utility into the system. tree
@WexAvailableAttribute type = String[] list valid classes, label = String Used in a data utility declaration to make the utility appear in configurable views. Request an example
@WexConfigurableTable Windchill table id Must be associated with a class that extends PersistableResultTableView. Request an example
@ComponentBuilder Windchill table id The builder of a table. tables, tree
@WexBean The name of the bean Used to declare a JSTL bean in a JSP. tables, tree
@WexActionMethod Action method name The action method used in a wizard declaration e.g. Request an example
@WexClass None Declares a WEX class. Request an example
@WexMethod name = String, description = String Declares a method that can be accessed via a wexinvoke. config, diags, log, method, rest, ui
@WexMethodOption name = String, description = String An argument of a wex method. Request an example
@WexNmObjectUtility value = String[] list of table ids Used to annotation a DefaultNmObjectUtility class to make it visible to Windchill. Request an example
@WexSuggestable selectors = String[] list of items to select Used to annotate a Suggestable class for the UI. Request an example
@WexValidator keys = String[] list of actions to validate Used to annotate a DefaultUIComponentValidator class to hide or show UI elements such as menus. ui
@WexWtListener Events = WexWtEventKey[] event to listen for Used annotate a listener that extends IWexWtListener. listener
@WexWtEventKey Class eventClass() String generateMethod() default "generateEventKey"; String[] keys(); Class[] supported(); boolean fatal() default true; These events are declared in a WexWtListener and define the classes and events to be listened for, and whether or not the listener should throw a fatal exception and halt the calling thread. listener

Classes

Class Description
com.wincomplm.wex.kernel.impl.bootstrap.IWexBootstrap Used as the base class to create a bootstrap class that all extensions require. Defines the initialize and termination of the extension
package com.wincomplm.wex.kernel.impl.wki
Class Description
IWexCommandLine Used to declare a command line.
IWexKernelReadyListener Will fire implementing classes when the kernel is loaded.
IWexPackageListener On a package load into the kernel.
IWexWtListener A listener implementation.