SR-D19111 · Issue 496593
Improved compatibility for mapping pyMessageId with out-of-the-box email index rule
Resolved in Pega Version 8.4
After upgrade, the process used for retrieving a reply for an email sent automatically by the system and comparing it with the incoming email to determine if it was a reply or not was failing to trigger an index or find instances of the class Data-Corr-Email that was supposed to save the property pyMessageId. This was related to recent refactoring of the handling for email headers in the Send activity, which moved them from a created AttachmentPage to the Primary page. The code in SendEmailNotification was still checking for the headers to be in the old location when going and adding the messageID, and was not taking it from the parameters. To resolve this, the pyMessageID will be set on the Primary page and messageID will be set on the parameter page based on the messageID in emailHeaders on the PrimaryPage.
SR-D20075 · Issue 516574
DSS added to convert empty spaces for use between Old and New Assembler
Resolved in Pega Version 8.4
After switching to the Old Assembler (via the DSS switch UseOldAssembler=false), MQ Requests were failing. This was due to a difference in behavior with the Old and New Assembler: the Old assembler treated empty spaces as an empty string and did not pass them along. In this use case, the response of a prior MQ call was parsed with the appropriate number of spaces to a new request while expecting the characters to remain in that format. Since the Old Assembler was converting these to "", this caused a difference in behavior when switching between the two options. To correct this, a DSS has been added that will compensate for this behavior of removing the spaces for Parse XML rules. This new DSS must be set in conjunction with using switchToOldAssembler: set "SOAPConnectorPreserveWhiteSpaces" in "Pega-IntegrationEngine" to true. Once this is done, all Parse XML rules need to be reassembled by either saving each manually, or running the "Revalidate and Save" wizard off of the Designer Studio Menu > System > Release > Upgrade > Validate.
SR-D21569 · Issue 491705
PUT and WHEN support added for REST
Resolved in Pega Version 8.4
Data layer rules in Pega were not getting generated through the Wizard- ‘Create Rest Integration’ when invoking the Rest service though the PUT method. This has been resolved by adding support for PUT and DELETE in pypresentdatapageoptions.
SR-D23881 · Issue 499693
MessageID properly set after exception encountered
Resolved in Pega Version 8.4
When SendEmailNotification was used to send an email to one valid email address and one invalid email address, the email was sent and the code generated a MessageID, but the MessageID was not included in the return parameter. Investigation showed that the MessageID setting was skipped if an exception occurred. This has been resolved by updating the code to ensure the ID is set.
SR-D25278 · Issue 499449
Enhanced logging for Clipboard JSON Deserializer
Resolved in Pega Version 8.4
An enhancement has been made to introduce a number of logger events to the Clipboard JSON Deserializer in order to have sufficient data to diagnose any issues encountered.
SR-D26913 · Issue 500208
Decision Table support added to customize MIME types
Resolved in Pega Version 8.4
ExtensionMimeDetector uses the Pega internal libraries property file "mime-types.properties" to return the MIME type. In order to facilitate customization such as a third party filenet system for processing that utilizes different MIME types, an override mechanism has been provided per file extension via a Decision Table for overriding the Pega defaults.
SR-D27307 · Issue 503758
Jcraft libraries updated
Resolved in Pega Version 8.4
The JCraft libraries have been updated to resolve an intermittent FTP connection issue.
SR-D29034 · Issue 500683
Added support for JSON mapping of deep nested pagelist objects
Resolved in Pega Version 8.4
An exception occurred when using a JSON data transform in the service activity to map the clipboard data to JSON on the third level of a structure formed as Pagelist-->page-->pagelist. To resolve this, support has been added for nested pagelist mapping with deep nesting of objects (configured for one sided actions) and arrays.
SR-D30505 · Issue 501896
Revalidate and save works for Service Packages using OAuth2.0
Resolved in Pega Version 8.4
Revalidate and Save was failing for service packages of type Data-Admin-ServicePackage which used authentication type as OAuth2.0 . If this was modified to basic authentication / unchecking authentication, revalidate and save was successful. Historically, the implementation of pzOnlyRestServiceType always assumed the primary page was the Service Package rule itself. To support this alternate use, the logic has been updated and a check of the Service Type has been added for the pxResults of the data page.
SR-D34532 · Issue 506353
SMTPUserID derivation logic updated to handle O365 format
Resolved in Pega Version 8.4
After email accounts were changed to point to Office365, the SendEmailNotification activity threw an exception with the error "javax.mail.AuthenticationFailedException: 535 5.7.3 Authentication unsuccessful". Running the SendSimpleEmail activity with the same details worked as expected. This was due to how SmtpUserID is derived from FromUsername parameter: if FromUsername is empty, the system will try to derive SMTPUserID using the 'From' address by trimming it up to the '@' character and using that. This worked well with Gmail or Outlook accounts which have '@' followed by the domain name, but in O365 the format is generally along the lines of "[email protected]". This led to the authentication error. To resolve this, the logic used to assign the SMTPUserID from the email address has been updated in the EmailAccountUtility.java .