100% found this document useful (2 votes)
671 views39 pages

Windchill Customization Basics Guide

This document provides an overview and introduction to customizing Windchill. It discusses the Windchill development environment, customization points, properties, actions, and the URL structure. It also covers setting up Eclipse for Windchill development and compiling a basic "Hello World" program.

Uploaded by

Vindya Prasad
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (2 votes)
671 views39 pages

Windchill Customization Basics Guide

This document provides an overview and introduction to customizing Windchill. It discusses the Windchill development environment, customization points, properties, actions, and the URL structure. It also covers setting up Eclipse for Windchill development and compiling a basic "Hello World" program.

Uploaded by

Vindya Prasad
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
  • Introduction and Basics
  • Windchill Client Architecture
  • Configuration Options
  • Customization Points
  • Windchill Development Environment
  • Property Files
  • Property and Action Report
  • Windchill URL Construction
  • Development Environment Setup
  • Windchill Design Patterns
  • Resource Info (.rbInfo) Files
  • Windchill Utilities
  • Action and Action Models
  • Define a New Action
  • New Action – Navigation Menu
  • Tab Models
  • Action Report

Windchill Customization Intro and Basic

Day 01

1
Takeaway
At the end of this session you should be able to
Overview of Customization
Windchill Development Environment
Windchill Design Patern
RBInfo : State and Team
Windchill Utilities
Action and Action Models

22
Windchill Client Architecture Overview
The Windchill Client Architecture provides a framework for building Customization Basics
pages easily and consistently by providing a standard set of Configuration Options
components and services that are configurable and customizable. Windchill Customization
The set of components includes, but is not limited to, a table, a tree, Points
an information page, a wizard, and a dynamic javascript menu. At a
Windchill Directory
lower level, these container components use other common Structure
components, called actions, action models and GUI components, to
display data inside of them Properties and Property
Files
The Windchill Client Architecture is Model-View-Controller based.
Example Overview
There are two MVC based paths available for use, a Java Builder
based approach and a JSP based approach Windchill IDE
Setup
Windchill documents are used to contain and manage files (such as
Microsoft Office documents), links, and external content not
electronically accessible

33
Windchill Client Architecture Overview

44
Configuration Options
Properties and Preferences : Windchill provides an extensive set of options that control
how the system behaves, how the user interacts with the system, or how the system
presents itself to the user. These options are either properties or preferences.
Properties : Properties are created in text files in the Windchill codebase and control
overall system configuration. For example, the [Link] property contains the path to the
installation directory. Properties are stored in files with the .properties extension.
Changing most properties requires a restart of the Windchill method server.
Preferences : Preferences are set through the Windchill user interface and do not
require a server restart. They control application behavior (for legacy reasons, some
Properties also control application behavior). Preferences can be implemented on
different levels of detail. Preferences can be configured to control the whole Windchill
installation, or can be used more narrowly to control an organization’s or an application
container’s (e.g. Product, Library), or a specific user’s setup.

55
Configuration Options
Service Customizations
Windchill supported server-side customizations to enable certain business processes or
enforce business constrained. Any kind of customization can be performed. The most
common types of customizations falls into one of the following categories:
Process form data submitted through the user interface
Validate data - (e.g. Do not allow the user to enter a Need Date for a Change Request that is more
than 30 days into the future)
Implement service listeners - (e.g. Create a listener that waits for any data to be checked in and
populate an MRP system with appropriate data)
Get/Put data in an external systems - (e.g. when the user navigates to a part’sdetails, get the cost
of the part from the ERP system and display it in the same UI)

66
Customizations Points
Data Model Customizations
Windchill Information Modeler is one of the Windchill development components that can
be used to customize your Windchill environment. Information Modeler contains the
Windchill modeling files and source code that you will use to develop your customizations.
Custom Java Annotations are used to model business objects. Windchill then uses this
model to generate code that is used in server and client development.
User Interface Customizations
The Windchill Client Architecture is a Windchill-aware JSP framework. It provides very
high-level building blocks known as common components which make Windchill UI
development a very efficient process done with ease.

77
Windchill Development Environment
Directory Structure : The image shows the Windchill
directory structure after you install all available components.
If Windchill was installed as recommended to follow this
structure, go to the home directory where Windchill is
installed and navigate through this structure as it is
described here

88
Windchill Development Environment
Codebase Directory : In general, the codebase directory
contains executable class files, property files, and other
files that contain information needed by the runtime
environment for Java and Web processing. The codebase
directory can be expanded to show the following directories

99
Windchill Development Environment
Src Directory : In general, the src directory contains the source files
needed for application development. The src directory can be expanded to
show the following directories.
The wt and com\ptc directories contains the source files for the packages
supplied by Windchill (only a subset of which are shown in this illustration).
In the wt directory and its package subdirectories, you will see the following
kinds of files:
Localizable ResourceBundles (.rbInfo and .java) files, which contain customizable
display text for EnumeratedTypes and business lements and UI strings.

10
10
Property Files
Windchill uses standard Java property files to determine runtime configuration
properties.
The codebase directory contains:
[Link] : Contains properties used for general Java system configuration and
Windchill
[Link] : Contains properties used by the Windchill service delegate
mechanism.
[Link] : Contains user overrides used by resource bundle and sql script
generation
[Link] : Contains properties used by the Windchill database connection layer to
access the database.

11
11
Property and Action Report
Property Report
Property report provides the detail of validate attribute lists for customization
[Link]
Action Report
The Action Report is a search page that returns the details of actions matching the
search criteria.
The Report can be accessed at:
[Link]

12
12
Windchill URL Construction
The Windchill URL actually consists of two URL’s concatenated together in the following format ../Windchill/app/#ptc1/content?queryString...
app/ : address of the shell which is used to render the header, navigator and a blank content area.
# : the # marks the end of the URL for the shell and the beginning of the URL for the content that will be displayed within the content area
ptc1/content/
After the # token is the URL to the content page. It is loaded via AJAX into the content area. This is a logical content address, not a physical location. The
URL after the # token is normally an MVC path to a controller, for example: ptc1/comp/[Link]
comp — Used in the URL to specify that the builder to look up is not type based.
tcomp — Used in the URL to specify that the builder to look up is type based.
The URL after the # token can also take the form ptc1/<objecttype>/<action name>, which mirrors the action mappings in [Link], e.g.
ptc1/report/listUpdates
queryString
After the question mark is the query-string as in any other URL. It is possible to have two query strings in the URL. When the ? is before the # token the
query string parameters will be passed to the shell. When the query string is after the content address after the # token the parameters will be passed to
the page in the content area.

13
13
Windchill Development Environment
Download Latest Eclipse
Install and Configure Eclipse
Set Java path for Eclipse Add Java path $WT_INSTALL_PATH/Java/bin to system path e.g.
c:\ptc\Windchill_10\Java\bin
Install FileSync Help > Install New Software , Enter the following URL
[Link]
Window > Preferences , Java > Compiler > Building
Unselect Output folder > Scrub output folders when cleaning projects
Create Java Project and add Jar’s
Exercise – How to setup and Compile first Windchill Hello World.

14
14
Windchill Development Environment
FileSync Preference
For annotation, compile before using the ant-
based annotation class that was deployed on
Windchill class path.
This configuration will be effected when you
create new modeling within the annotation,
and the system will automatically synchronize
to Windchill.
It means, Eclipse will also update registry files
(should be kept in mind)
If you do not want to automatically update,
please do not set this option.

15
15
Create Project Using Command Line
Windchill support one command for making eclipse project automatically.
1. Open Windchill shell
2. Execute “ant -f bin/[Link] eclipse_project”
3. The workspace project will be created on “$Windchill_LoadPoint/eclipse/cust_Windchill_src”
Ex.) c:\ptc\Windchill_10.0\eclipse\cust_Windchill_src
4. Open eclipse
5. Import created project “File > Import… > General > Existing Projects into Workspace”
A. Select created root directory
If you want to see help message on how to use the command:
1. Open Windchill shell
2. Execute “ant -f bin/[Link] eclipse_project.help”

16
16
Windchill Design Patterns
The Object Reference Design Pattern
This pattern essentially encapsulates details concerning
persistable objects and their unique database query key. The
pattern asserts that an object is a derived attribute aggregated by
reference and is not persisted. The object’s unique database
query key is aggregated by value, is persisted, and is write-
protected against the attempt of any other package class to set its
value.
In cases where database performance and storage are issues,
object references persist only their object identifiers, and can be
used in place of actual objects and acted upon via their identifiers.
However, when the actual object is required, it can be gotten from
the object reference which may or may not be currently holding
the object. If the object reference does not hold the object and the
object is asked for, the object is refreshed via its query key from
the database

17
17
Windchill Design Patterns
The Business Service Design
Pattern
This pattern has the following
major kinds of abstractions:
Type
Cookie
Helper
Service
ServiceEvent
ServiceException
ServiceFactory

18
18
Windchill Design Patterns
The Master-iteration Design Pattern : This pattern
typically establishes two objects that work in concert with
one another. Without one, the other should not exist and is
certainly invalid. At the root are the basic abstractions:
Mastered
Iterated
The Mastered interface provides an abstraction of a plug-
and-play component in conjunction with the Iterated
interface. The intent is that, in a business model, an object
would assert that it is a master by inheriting the Mastered
interface. With this assertion, the business object can then
be mastered through the version control service’s API. The
business object must assert itself as being a kind of
mastered object in order for its instance to be iterated
The Iterated interface provides an abstraction of a plug-
and-play component in conjunction with the Mastered
interface

19
19
Resource Info (.rbInfo) Files
value
Resource Info files are an
The internal value, which is persisted.
alternative to storing localizable
display
text in ListResourceBundle The localizable display text.
source code files. They are comment
structured properties files that An optional comment describing the
value.
facilitate easy manipulation by
order
automated tools Provides an explicit sort order for the
value.
EnumeratedType represents a
defaultValue
type whose possible values are Specifies the value that is the default
constrained to a set. value for the type.
selectable
Specifies if the value should be allowed
to be selected.

20
20
Resource Info (.rbInfo) Files
Resource Info files are an value
alternative to storing localizable The internal value, which is persisted.

text in ListResourceBundle display


source code files. They are The localizable display text.

structured properties files that comment


facilitate easy manipulation by An optional comment describing the
value.
automated tools
order
EnumeratedType represents a Provides an explicit sort order for the
type whose possible values are value.

constrained to a set. defaultValue


Specifies the value that is the default
Exercise : Create a new state : value for the type.
Training selectable
Specifies if the value should be allowed
to be selected.

21
21
Windchill Utilities
The xconfmanager is a command line utility that you can run to add, remove, or
modify properties in Windchill property files that are used for your defining your
system.
The xconfmanager utility saves your changes in the [Link] file and provides an
option to generate updated property files using the updates in the [Link] file. The
[Link] file contains the changes made to Windchill property files starting with the
installation and continuing with each use of the xconfmanager utility.
Before executing the xconfmanager command, set up your environment by using
the windchill shell.
Exercise : Create a new entry in WT property . [Link]=Hello

22
22
Action and Action Models
The action framework provides a way to define actions and action models within the system. A service, called the
StandardNmActionService manages the set of actions and action models in the system.
Actions and action models are defined via xml files referred to as [Link] and xxxactionmodels. xml. There is
one default [Link] and [Link] file that is delivered with the system. However, each functional area may
also have its own xml file as well which is also managed by the action service.
For customization purposes, a [Link] and [Link] is delivered with the product and are
found in codebase/config/actions relative to the Windchill installation directory.
All other out of the box [Link] and [Link] files are also located in /codebase/config/actions.
The default [Link] and [Link] files contain commonly used actions, such as copy, cut, and commonly
used action models such as wizard buttons.
Additional actions*.xml and actionmodels*.xml files contain actions. and action models related to their functional areas.
(e.g. ChangeManagementactions. xml contains actions related to change management, [Link]
contains actions related to part management).
In general, as a developer you would not have to directly make calls to the StandardNmActionService. These calls are
done via the components that support display of actions and action models, for example tables, trees, information
pages.

23
23
Define a New Action
Actions in the system are uniquely identified by the name of the action and the
object type. They should be defined in an xml file that follows the structure based on
the codebase/config/actions/[Link].
Here is an example of an action definition for the New Document wizard.
<objecttype name="document" class="[Link]" resourceBundle="[Link]">
<action name="create" uicomponent="CREATE_DOC" dtiUpload="true">
<command class="[Link]“ method="execute" windowType="popup"
onClick="validateCreateLocation(event)"/>
<includeFilter name="projectM4D" />
</action>

</objecttype>

24
24
Define a New Action
Objecttype tag
The objecttype name is a way to create a name space as well as packaging for actions related to a specific
object or functional area. In the above example, the name “document” creates a unique name space for
actions that apply to [Link]. WTDocuments.
Naming conventions for the name of an objecttype can be any combination of alpha-numeric characters.
Most objecttypes are an alias for the persistable object to which the actions relate. Actions that apply to any
object type, such as copy, can be put within the objecttype of “object”. It is recommend that all custom
objecttypes have a prefix specific to the company to prevent collisions with object types delivered with the
product.
Parameters
Name The name used to reference this object-type
Class Object class for the enclosed actions
resourceBundle Class name for the default resource bundle to use for the properties of the actions that are
to be localized

25
25
Define a New Action
Action tag
The action name is a unique identifier for an action within the context of the object type. The object type in conjunction with the action name make
the action unique within the system. The URL attribute of the command subtag of the action tag can be used to specify the location of the jsp
associated with the action. The value should be the path of the jsp relative to ,WT_HOME>/codebase
By default, the action name corresponds to the name of a jsp within the package named for the objecttype. The packaging is relative to
codebase/netmarkets/jsp. For example, the action name in the xml above, called create, within the objecttype of document corresponds to
codebase/netmarkets/jsp/document/[Link]. For further details see Windchill Customizers Guide
[Link] includes a design of menu lists
[Link] includes activity of action model menu
Localisation
The [Link] file contains an entry as follows:
[Link]=My New Document
[Link]=My New Document
[Link]=Add a new document with or without attached content
[Link]=[Link]
[Link]=height=100,width=80
Note that icons for actions in the menus will only be displayed for actions that also display in the toolbar:

26
26
New Action – Navigation Menu
Register New XML Files
We can directly change the original XML, but it is not the best way because it can be changed when updating or
deploying patches for Windchill. So, we try to use expanded XML files.
OOTB has [Link] and [Link]
Add new training XML in custom environment
Add the following sentence in WT_HOME%\codebase\config\actions\[Link]
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE listofactions SYSTEM "[Link]“>
<listofactions> <include href="config/actions/train/[Link]"/> </listofactions>

Add the following sentence in WT_HOME%\codebase\config\actions\[Link]


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE actionmodels SYSTEM "[Link]">
<actionmodels> <include href="config/actions/train/[Link]"/>
</actionmodels>

27
27
Create a New Action
Create registered action file on the correct directory. Action and ActionModel files are in different
format, so you have to watch out while making a new file.
Create and modify %WT_HOME%\codebase\config\actions\train\[Link]

<?xml version="1.0" encoding="UTF-8"?>


<!DOCTYPE listofactions SYSTEM "[Link]">
<listofactions>
<objecttype name="navigation" class="“ resourceBundle="[Link]">
<action name = “train" uicomponent="TAB_ADMIN"/>
</objecttype>
</listofactions>

For Action file, you must add DTD configuration line such as line-2.
Action-type file whose name is “navigation” is already assigned by Windchill, so we will just reuse
the object-type action.
If you want to add top menu (button), it is enough.

28
28
Create new Action Model
Create registered action file on correct directory. Action and ActionModel files are in different
format, so you have to watch out while creating new file.
Create and modify %WT_HOME%\codebase\config\actions\train\[Link]
<?xml version="1.0" encoding="UTF-8"?>

<actionmodels>
<model name="main navigation">
<description>Main navigation (tabs)</description>
<action name="home" type="navigation"/>
<action name="program" type="navigation"/>
<action name="product" type="navigation"/>
<action name="project" type="navigation"/>
<action name="change" type="navigation"/>
<action name="library" type="navigation"/>
<action name="org" type="navigation"/>
<action name="site" type="navigation"/>
<action name="supplier" type="navigation"/>
<!-- entry for customization tab -->
<action name="customization" type="navigation"/>
<action name=“train" type="navigation"/>
</model>

<model name=“train navigation">


<description>
For Training navigation
</description>
</model>
</actionmodels>

29
29
Add Resource Bundle
The resource bundles of menu which is displayed on the UI are managed the other way
comparing it with original OOTB resource bundle architecture.
The resource file is managed on “$WT_HOME/codebase/action_[Locale code].properties
All of locale character must be changed UTF-8 format except on English
Also you must update default property file. ([Link])

Update %WT_HOME%\codebase\action_LOCALE.properties and [Link]


[Link]=Training
[Link]=help_32x32_manual.gif

Finally, you must restart all Windchill services.


If you want to adapt your configuration without the restart service, use the following Windchill command:
windchill [Link]

30
30
Sub-Navigation Menu
Designing sub-menu using actions on
WT_HOME%\codebase\config\actions\csc\[Link]
Sub-model name is created by a rule which combines name and type values of the
main navigation’s action.
<model name=“train navigation" defaultActionName="tableSamples" defaultActionType=“train">

<action name="tableSamples" type=“train" />


<action name="treeSamples" type=“train" />
</model>

Action is generated to find action from [Link]. Type is objecttype name, and
name is an element name of objecttype

31
31
Sub-Navigation Menu
Adding designed action for sub-menus on
%WT_HOME%\codebase\config\actions\train\[Link]
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE listofactions SYSTEM "[Link]">
<listofactions>
<objecttype name="navigation" class=""
resourceBundle="[Link]">
<action name = “train”>
</action>
</objecttype>
<objecttype name=“train" class="" resourceBundle="[Link]">
<action name="tableSamples">
<component windowType="page" name="[Link]"/>
</action>
<action name="treeSamples">
<command windowType="page" url="wtcore/jsp/train/jca/tree/[Link]"/>
</action>
</objecttype>
</listofactions>`

WC10 was added a MVC architecture, so, in the action, you can call MVC builder using
<component> tag instead of <command> tag. (MVC will be explained in the next phase.)
<action name="tableSamples">
<component windowType="page" name="[Link]"/>
</action>

32
32
Sub-Navigation Menu
Modify [Link] for Display
Set display text to [Link]. If you don’t set this property, the menu will not show text description
such as the navigation icon.
The resource file is managed on “$WT_HOME/codebase/action_[Locale code].properties
All locale characters except English must be changed to UTF-8 format
Also you must update default property file ([Link])

Modify to %WT_HOME%\codebase\action_LOCALE.properties
########### NEW ADDED
#### TOP MENU
[Link]=Train

#### SUB MENU (Train)


[Link]=Table Samples
[Link]=Tree Samples

33
33
Tab Models
The tabs rendered in navigator are nothing
but actions in action lists just like any other
actions in the system. Adding tabs and
tabs under them is very much like adding
any other action into the system, but there
are some additional special
considerations.
The tabs in the red circle are the navigator
tabs, the tabs in the blue circle are the first
level navigation tabs, and the items in the
green circle are the second level
navigation. The following sections will
detail how to add tabs at different levels.

34
34
Tab Models
To add a navigator tab complete the following steps:
Create an action in [Link] to register the actions for the tab to be added e.g.
<objecttype name="training" class="" resourceBundle=”[Link]">
<action name="tab1" > <command url=”/netmarkets/jsp/training/[Link]” windowType="page"/> </action>
</objecttype>
Create an action model in [Link] to define the required actions e.g.
<model name=”trainingNavigatorTab navigation”> <action name=”tab1” type=”training” /> </model>
Add new action model to existing navigator definition by copying the existing “navigator” definition in [Link] to custom-
[Link] e.g.
<model name="navigator">
<submodel name=”search navigation” />
<submodel name=”main navigation” />
<submodel name=”trainingNavigatorTab navigation” />
</model>
Define resource bundle entries to support the new actions

35
35
Create Resource Bundle for Tab
Create new resource bundle using annotation. If you want to use other languages, you have to create target
language's resource bundle.
package [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
@RBUUID("[Link]")
public final class navigationRB extends WTListResourceBundle {
@RBEntry(“Train")
@RBComment(“Train tab on Navigator.")
public static final String PRIVATE_CONSTANT_364 = "[Link] [Link]";
}
The constant value must include tab model name. For example, “[Link] [Link].”
Resource Bundle must be created using Windchill annotation.
Resource Bundle must be extended from WTListResourceBundle.

36
36
Action Report
Action reports provide details on the actions used in the Windchill UI to launch wizards and
execute operations. Such details include the action label, action name, the Java class used to
validate whether the action is available to the user, the file in which the action is defined, and many
others.
Action reports also enable you to modify the label and tool tip of an action.
Action reports can be accessed by browsing to Customisation>Tools>Action and entering suitable
search criteria to locate the action of interest, navigating via the information icon for an action will
provide additional details for the action e.g. label, where used, definition file etc..
Note that this screen can be used to update the Label and Tool Tip attributes of the action
Action reports can be accessed by browsing to Customisation>Tools>Action and entering
suitable
search criteria to locate the action of interest

37
37
Action Report

38
38
Action Report

39
39

Common questions

Powered by AI

Customizing a data model within Windchill using the Information Modeler involves using Windchill's modeling files and source code to develop custom business objects. Developers use custom Java annotations to model these business objects, and Windchill utilizes this model to generate code necessary for both server and client development. A critical consideration in this process is to ensure that customizations align with business requirements and do not interfere with existing Windchill functionality. It is important to follow the best practices of using prefixes for custom object types to prevent collisions with out-of-the-box (OOTB) components provided by Windchill .

In Windchill, 'objecttype' is used as a namespace to categorize actions related to specific objects or functional areas, such as defining actions for documents. It includes attributes like name, class, and resourceBundle, which localize the properties of actions. Using prefixes for custom objecttypes is crucial to avoid potential naming collisions with out-of-the-box object types provided by Windchill. This practice ensures that customizations are distinct and do not interfere with the default system components, maintaining system integrity and easing updates and maintenance .

In Windchill, properties differ from preferences in that properties are system-level settings stored in text files within the Windchill codebase, requiring a server restart to take effect after changes. They control the overall system configuration, such as the installation path specified by the 'wt.home' property. Preferences, on the other hand, are settings configured through the user interface that do not require a server restart and can control the application behavior at different levels, such as for an entire organization, a specific application container, or an individual user .

Action reports in the Windchill user interface provide detailed information about the actions used to launch wizards and execute operations. They include details such as the action label, name, the Java class used for validation, and the file where the action is defined. Developers can use action reports to modify the label and tooltip attributes of an action, thus ensuring that the action remains relevant and correctly presented to users. Action reports can be accessed through Customisation>Tools>Action .

The Model-View-Controller (MVC) architecture in Windchill's client system provides a standard framework for building pages in a consistent manner by separating the data (model), user interface (view), and control logic (controller). This architecture allows developers to build applications that are easier to manage and adapt over time due to the clear separation of concerns. In Windchill, there are two MVC-based paths available for implementation: a Java Builder-based approach and a JSP-based approach .

The Windchill Action and ActionModel documentation outlines the structure and methods for defining new actions and extending UI functionalities, making it possible to tailor the user interface to better meet organizational needs. By defining custom XML files for actions and action models, developers can introduce new interface components, such as tabs or menus, without altering core files that might be modified during system updates. This ensures custom actions remain intact and compatible with new system versions. Additionally, Action and ActionModel files allow systematic inclusion of new components via design patterns, promoting a scalable and maintainable customization approach in the UI .

When managing resource bundles in Windchill for localization, it is essential to ensure that all non-English locale characters are changed to UTF-8 format. This guarantees correct character display across different language settings. Resource bundles are typically managed in the format $WT_HOME/codebase/action_[Locale code].properties, along with the default action.properties file, which must be updated accordingly. Proper management ensures that UI elements are presented correctly in various languages, enhancing user accessibility and experience. Ensuring resources are correctly localized across these bundles helps maintain uniformity and usability across different locales .

To configure Windchill's Eclipse IDE for Java development, developers must set the Java path by adding the $WT_INSTALL_PATH/Java/bin to the system path and possibly install additional tools like FileSync for synchronization needs. FileSync can be configured to automatically synchronize modeling annotations with Windchill, providing a seamless development experience when creating new models. Annotations, once compiled within the IDE, ensure that the system is updated in real-time. This configuration helps maintain consistency and accuracy in development while reducing redundant actions such as restarts or manual synchronization processes .

URL construction in Windchill involves concatenating two parts: a shell URL and a content URL. The shell URL renders the header, navigator, and a blank content area up to the '#' mark, while the content URL specifies the location for the content to be displayed, typically in an MVC path to a controller. This construction allows the system to load the content dynamically into the content area via AJAX, facilitating a seamless navigation experience. The design enables queries to be managed efficiently, as query-string parameters can be directed to either the shell or content page depending on their position relative to the '#' token .

Windchill property files serve as a mechanism for defining runtime configuration properties that impact various aspects of the system's operation. Examples include wt.properties for general Java system configurations, service.properties for the Windchill service delegate mechanism, user.properties for user-specific overrides, and db.properties for database connection properties. These files ensure that the system is configured correctly at runtime, affecting how services interact, how users experience the system, and how external resources are accessed and controlled .

1 
Windchill Customization Intro and Basic 
Day 01
2 
 Takeaway 
At the end of this session you should be able to  
Overview of Customization 
Windchill Development Environment
3 
Windchill Client Architecture Overview 
The Windchill Client Architecture provides a framework for building 
pages easily
4 
Windchill Client Architecture Overview 
4
5 
Configuration Options 
Properties and Preferences : Windchill provides an extensive set of options that control 
how the s
6 
Configuration Options 
Service Customizations 
Windchill supported server-side customizations to enable certain business p
7 
Customizations Points 
Data Model Customizations  
Windchill Information Modeler is one of the Windchill development compo
8 
Windchill Development Environment 
Directory Structure : The image shows the Windchill 
directory structure after you inst
9 
Windchill Development Environment 
Codebase Directory : In general, the codebase directory 
contains executable class file
10 
Windchill Development Environment 
Src Directory : In general, the src directory contains the source files 
needed for ap

You might also like