Disallowed Customization
* 
Avoid using APIs that are not marked as supported in the Javadoc.
Avoid using APIs that are not a part of the Java SE library or that conflict with the Windchill+ guidelines.
Transition your code from any deprecated API to a suitable alternate that is marked as supported.
For a list of deprecated APIs, see Deprecated API.
For information on elements that are allowed for use in customization, see Allowed Customization.
The following table lists the elements that are not allowed for use in customization, along with their respective error codes. These error codes are displayed in the consolidated reports available on the Customization Analysis dashboard in Windchill Performance Advisor (WPA) or generated as a result of CloudWave execution. For more information, see Consolidated Report in the WPA help center.
Element
Details
Error Code
Out-of-the-box (OOTB) files
Modifications to OOTB files, except the ones listed in Allowed Customization, are not allowed.
Modification to OOTB file or package
Windchill classes
Implementing or extending the following classes is not allowed:
wt.templateutil.processor.DefaultTemplateProcessor
wt.enterprise.BasicTemplateProcessor
wt.enterprise.TemplateProcessor
com.ptc.cat.gxt.client.AbstractEntryPoint
wt.services.ServiceEventListenerAdapter
com.infoengine.object.factory.AdapterWebject
com.infoengine.SAK.ObjectWebject
com.infoengine.SAK.ActionWebject
Use of unauthorized windchill class implementation
Java packages
java.lang.reflect
java.rmi
java.lang.invoke
java.sql
java.nio.channels
java.nio.file
Use of unauthorized Java packages
Java network calls
TrustManager
TrustManagerFactory
X509TrustManager
CertPathTrustManagerParameters
HandshakeCompletedEvent
HandshakeCompletedListener
Use of unauthorized Java packages
Database customization
Custom modeled objects
Database extensions for tables, stored procedures, triggers, and others
Unauthorized hard modelling
Custom UIs or customization of OOTB UIs
UIs built using the following:
OOTB JavaServer Pages (.jsp)
AngularJS
GWT
Template processor
Use MVC Builders for building UIs.
Use of unauthorized JSP tags or AngularJS
Overwriting OOTB UI, actions, services
Create custom UIs using actions and action models. For more information, see Windchill Action Framework.
Modification to OOTB file or package
Third-party libraries
Third-party libraries, including OOTB third-party libraries, are not allowed during customization. However, there are a few exceptions. See Allowed Customization for information on allowed third-party libraries.
Use of unauthorized third-party libraries
Access to server command line
Customization that requires access to the command line on the server is not allowed.
Use of main method
Remote file server customization
Example: Custom content virus scanner
JDBC access to Windchill database
Use only Windchill supported APIs to connect to and query the Windchill database.
Use of unauthorized Java packages
JNDI connection to LDAP user store
LDAP is not supported.
The External System Integration category in Windchill Performance Advisor displays Adapter Integration.
Info*Engine
Custom Info*Engine tasks or webjects
Custom Info*Engine web services
Custom Info*Engine adapters
Use Windchill REST Services to fetch Windchill data for generating reports and other requirements.
Unauthorized hard modelling
Use of unauthorized windchill class implementation
JNI customization
Native API calls are not allowed.
Use of unsecure code
Annotations
com.ptc.windchill.annotations.metadata.GenAsBinaryLink
com.ptc.windchill.annotations.metadata.GenAsDatastoreArray
com.ptc.windchill.annotations.metadata.GenAsDatastoreSequence
com.ptc.windchill.annotations.metadata.GenAsDatastoreStruct
com.ptc.windchill.annotations.metadata.GenAsObjectMappable
com.ptc.windchill.annotations.metadata.GenAsPersistable
com.ptc.windchill.annotations.metadata.GenAsPrimitiveType
com.ptc.windchill.annotations.metadata.GenAsUnPersistable
com.infoengine.object.factory.WebjectDef
Unauthorized hard modelling
JSP Tag Classes
com.ptc.core.components.tags.components.DescribeTableTag
com.ptc.core.components.tags.components.DescribeColumnTag
com.ptc.core.components.tags.components.SetComponentPropertyTag
com.ptc.core.components.tags.components.GetModelTag
com.ptc.core.components.tags.components.DescribeTableTreeTag
com.ptc.core.components.tags.components.SetTablePluginTag
com.ptc.core.components.tags.components.AddServiceArgumentTag
com.ptc.core.components.tags.components.DescribeStatusGlyphTag
com.ptc.core.components.tags.components.DescribeInfoPageTag
com.ptc.core.components.tags.components.AddPropertyPanelDescriptorTag
com.ptc.core.components.tags.section508.RenderAccessibilityLinkTag
com.ptc.core.components.tags.components.ExcludeColumnTag
com.ptc.core.components.tags.components.DescribePropertyPanelTag
com.ptc.core.components.tags.core.EnableCorePlatformTag
Use of unauthorized JSP tags or AngularJS
Was this helpful?