Steps to resolve Validation Error:src-resolve: Cannot resolve the name 'pns:json' to a(n) 'type definition' component.

Steps to resolve Validation Error:src-resolve: Cannot resolve the name 'pns:json' to a(n) 'type definition' component.

book

Article ID: KB0077669

calendar_today

Updated On:

Products Versions
TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce.com 6.6.0

Description

Some users may see the below validation error under the problems tab in BW studio after upgrading salesforce plugin version or while configuring the Salesforce Metadata/ refreshing the Salesforce Metadata, as some calls to describeSObjects() using the older versions of the Partner API in salesforce are failing due to a complex type that isn't defined in the WSDL being returned. As a result, some objects which were originally implemented in earlier versions of the API may now be visible. Some of the objects include a field with JSON data type which were not defined in earlier versions of the WSDL when these objects were not available, so describe calls referencing these objects may fail due to call describeSObjects() using the v45.0 or older Partner API against a v46.0 org and may get the below validation error in BW:-

Error : src-resolve: Cannot resolve the name 'pns:json' to a 'type definition' component. 

Issue/Introduction

The above validation may face by the user since the v45.0 Partner API are failing due to a complex type(json) that isn't defined in the WSDL

Resolution

To resolve the above error we have the below workarounds:-

1) Use the latest available partner WSDL. 
2) Update your pre-v46-versioned partner wsdl with 
===
<simpleType name="json">
<restriction base="xsd:string"/>
</simpleType> 
below <simpleType name="ID">...</simpleType> 
Add 
<enumeration value="json"/>
to <simpleType name="fieldType">
Add 
<enumeration value="tns:json"/> 
To <simpleType name="soapType"> 
===
Please add the simple type to the partner wsdl and once it is added, do a Get/ Refresh Metadata

3) Ask Salesforce support to temporarily disable the Real-Time Event Monitoring Beta. 


Note: Don’t build integrations using the Real-Time Event Monitoring (Beta) objects in versions of the API less than v46. In order to use the objects in the Real-Time Event Monitoring (Beta) use the latest version of the API. 

 

Additional Information

https://success.salesforce.com/issues_view?id=a1p3A000001SHaxQAG