Article - CS436644

How to resolve Error “Two arguments passed in are of different type” when creating a part in Windchill PDMLink

Modified: 06-Feb-2025   


Applies To

  • Windchill PDMLink 12.1

Description

  • Encountered the error message “Two arguments passed in are of different type” during part creation.
  • Error occurs within the Windchill PDMLink environment.
  • Issue arises when using Branch algorithm in Object Initialization Rules (OIR) for part creation.
  • Inconsistencies in data types may lead to this error.
Caused by: wt.rule.algorithm.InvalidAlgorithmArgumentException: ATTENTION: An object initialization rule could not be applied because an error was detected. Report this issue to your administrator.
 Two arguments passed in are of different type.
Nested exception is: (wt.rule.ruleResource/310) wt.rule.algorithm.InvalidAlgorithmArgumentException:  Two arguments passed in are of different type.
	at com.ptc.core.rule.server.delegate.init.TypeBasedInitRuleApplier.applyRule(TypeBasedInitRuleApplier.java:345)
	at com.ptc.core.rule.server.delegate.init.TypeBasedInitRuleApplier.applyRule(TypeBasedInitRuleApplier.java:212)
	at wt.rule.impl.StandardRuleService.applyRule(StandardRuleService.java:383)
	at wt.rule.impl.StandardRuleService$1.notifyVetoableMultiObjectEvent(StandardRuleService.java:986)
	at wt.events.StandardKeyedEventBranch.intDispatchEvent(StandardKeyedEventBranch.java:306)
	at wt.events.StandardKeyedEventBranch.dispatchVetoableEvent(StandardKeyedEventBranch.java:255)
	at wt.events.StandardKeyedEventDispatcher.intDispatchEvent(StandardKeyedEventDispatcher.java:304)
	at wt.events.StandardKeyedEventDispatcher.dispatchVetoableEvent(StandardKeyedEventDispatcher.java:228)
	at wt.services.StandardManagerService.intDispatchVetoableEvent(StandardManagerService.java:411)
	at wt.services.StandardManagerService.dispatchVetoableEvent(StandardManagerService.java:304)
	at wt.fc.StandardPersistenceManager.dispatchVetoableEvent(StandardPersistenceManager.java:3067)
	at wt.fc.StandardPersistenceManager.dispatchVetoableEvent(StandardPersistenceManager.java:3047)
	at wt.fc.StandardPersistenceManager.store(StandardPersistenceManager.java:1479)
	at wt.fc.StandardPersistenceManager.store(StandardPersistenceManager.java:535)
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
	at java.base/java.lang.reflect.Method.invoke(Method.java:580)
	at wt.services.ServiceFactory$ServerInvocationHandler.invoke(ServiceFactory.java:399)
	at jdk.proxy2/jdk.proxy2.$Proxy40.store(Unknown Source)
	at com.ptc.core.components.forms.CreateObjectFormProcessor.doOperation(CreateObjectFormProcessor.java:98)
	at com.ptc.windchill.enterprise.part.forms.CreatePartFormProcessor.doOperation(CreatePartFormProcessor.java:279)
	at com.ptc.windchill.enterprise.part.forms.CreatePartAndCADDocFormProcessor.doOperation(CreatePartAndCADDocFormProcessor.java:144)
	at com.ptc.core.components.forms.DefaultFormProcessorController.executeDoOperation(DefaultFormProcessorController.java:538)
	at com.ptc.core.components.forms.DefaultFormProcessorController.performExecuteDoOperationAndPostProcess(DefaultFormProcessorController.java:342)
	at com.ptc.core.components.forms.DefaultFormProcessorController.execute(DefaultFormProcessorController.java:263)
	at com.ptc.core.components.forms.FormDispatcher.callControllerExecute(FormDispatcher.java:146)
	at com.ptc.core.components.forms.FormDispatcher.callFormProcessorController(FormDispatcher.java:116)
	at com.ptc.core.components.forms.FormDispatcher.execute(FormDispatcher.java:93)
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
	... 60 more
Caused by: (wt.rule.ruleResource/310) wt.rule.algorithm.InvalidAlgorithmArgumentException:  Two arguments passed in are of different type.
	at wt.rule.algorithm.EqualsTest.calculate(EqualsTest.java:126)
	at wt.rule.algorithm.RuleAlgorithmHelper.calculate(RuleAlgorithmHelper.java:116)
	at wt.rule.algorithm.RuleAlgorithmHelper.calculate(RuleAlgorithmHelper.java:74)
	at com.ptc.core.rule.server.delegate.init.Utils.getValue(Utils.java:773)
	at com.ptc.core.rule.server.delegate.init.Utils.getArgs(Utils.java:800)
	at com.ptc.core.rule.server.delegate.init.Utils.getValue(Utils.java:773)
	at com.ptc.core.rule.server.delegate.init.Utils.getArgs(Utils.java:800)
	at com.ptc.core.rule.server.delegate.init.Utils.applyTo(Utils.java:654)
	at com.ptc.core.rule.server.delegate.init.Utils.applyToWithNoLogging(Utils.java:465)
	at com.ptc.core.rule.server.delegate.init.Utils.applyTo(Utils.java:285)
	at com.ptc.core.rule.server.delegate.init.Utils.applyTo(Utils.java:497)
	at com.ptc.core.rule.server.delegate.init.TypeBasedInitRuleApplier.applyRule(TypeBasedInitRuleApplier.java:332)
	... 87 more

 
This is a printer-friendly version of Article 436644 and may be out of date. For the latest version click CS436644