INC-199341 · Issue 694712
Content-type values made consistent
Resolved in Pega Version 8.7.1
The content-type for service APIs was returned as 'text' for 401 errors when using a custom authentication type instead of the parent-type/child-type format such as text/plain, text/html, application/json, etc. This has been corrected.
INC-172546 · Issue 652880
Resolved classcast exception with assembled HTML controls
Resolved in Pega Version 8.7
A classcast exception was being generated on login. Investigation showed the Static Assembler was unexpectedly using a different Assembler to assemble the Html control rule. Standard behavior is that StreamBuilderAssembler assembles controls of type StreamBuilder and ControlAssemblerForVTable assembles controls of type ControlBuilder. In this case, static assembly for HTML controls using VTable was performed using StreamBuilderAssembler, causing a classcast exception when using VTable because the instance of the generated.html class was incorrectly inheriting from StreamBuilder (the parent class of ControlBuilder) instead of ControlBuilder which is the specified interface in the generated.html Java code. This has been resolved by updating the system to skip rules of type 'Rule-HTML-Property'(control) during Static Assembly.
INC-200030 · Issue 719228
Handling added for external Kafka authorization exception
Resolved in Pega Version 8.7.2
When using external Kafka for stream service, the dataflow was failing with the error 'QueueProcessorDataSubscriberException' when topic create permission was missing. As a workaround, the topics could be pre-created, though a "Topic already exists" warning was generated. To resolve this, the cluster-wide right that a producer needs, IdempotentWrite, has been added. For more information please refer to the link https://docs.confluent.io/platform/current/kafka/authorization.html
INC-196415 · Issue 686313
Performance improvements for revalidate and save
Resolved in Pega Version 8.7
In order to improve performance when working with very large numbers of class definitions, an update has been made to optimize the revalidate and save process by avoiding looking up all classes on the system instead using ClassDefinition for existence and checking ancestor data to ensure class is a Rule- or Data- descendant.
INC-199192 · Issue 689037
Check added to ensure StepPage generation for Top keyword
Resolved in Pega Version 8.7.2
A ClassCastException was thrown when top page is used, indicating "com.pega.pegarules.data.internal.clipboard.ClipboardPropertyImpl cannot be cast to com.pega.pegarules.pub.clipboard.ClipboardPage". This has been resolved by adding a check which will generate a myStepPage for Keyword "Top" as necessary.
INC-201991 · Issue 692860
Explicit connectivity close added to Queue Manager error handling
Resolved in Pega Version 8.7.1
Performing a connectivity test on the MQ Connector page with an invalid queue name aborts the test connectivity but the MQ connection was not closing. This can become an issue when using IBM MQaaS (MQ as a service) where only a limited number of connections are allowed. This has been resolved by adding an explicit Queue Manager close in the error handling block.
INC-213308 · Issue 712074
Fallback added for missing fileName in MultipartHTTPResponse
Resolved in Pega Version 8.7.2
Given a multipart/form-data response with multiple attachments, when there was no explicit fileName header provided for a body part, the engine skipped processing the part and no data was present on pyRequestAttachmentPage. This has been resolved by adding a fallback in HTTPClientUtils#handleMultipartHTTPResponse() so that if no fileName is present, the 'name' parameter of the Content-Disposition header field will be used.
INC-220137 · Issue 715266
UpdateDateTime casing corrected in filters
Resolved in Pega Version 8.7.2
When using Job Scheduler with MS/SQL, the error "Cannot find either column 'mktdata' or the user-defined function or aggregate 'mktdata.pr_read_from_stream', or the name is ambiguous." This was traced to a casing issue and has been resolved by updating the pxupdatedatetime property to pxUpdateDateTime in Filters F1 and F2.
INC-175595 · Issue 652831
Java Bean import updated to handling differences in Java 7 and Java 8
Resolved in Pega Version 8.7
The behavior of the java bean Introspector class is inconsistent across different versions of the JDK when detecting indexed properties built off of java.util.List objects, causing Java Bean import to generate differently in Java 7 and Java 8. This has been resolved by updating PRIndexedPropertyDescriptor to better handle this JDK difference by resolving indexed read and write methods manually using simple reflection.
INC-211178 · Issue 704592
Decimal parameters retain null value instead of being set to 0
Resolved in Pega Version 8.7.2
When mapping any data in 8.6+, if the source is a decimal property rule and the target is a parameter defined as decimal, the decimal parameter's value will be 0 if the source property is null. This was a behavior change from previous versions of Pega where the target parameter would be null. This has been resolved by changing the code generation for the read operation on the parameter decimal type assignment to use resolveToString() instead of calling resolveToBigDecimal() so a null value is retained.