Does Pega 8.7 supports FileStorageManager and RAFile classes in Pega Cloud?

Hi,

We are using pega v8.7.2 and in Pega OOTB Activity ‘Code-Pega-eForm.WriteEFormToFile’ FileStorageManger & RAFile classes are referred, however when try do private edit & save the activity it is throwing errors as below. Any inputs??

com.pega.pegarules.storage.FileStorageManager cannot be resolved to a type

com.pega.pegarules.storage.fs.resadapter RAFile cannot be resolved to a type

@ETIKELAK this may be due to a known BUG-724022.

You can find details in the Resolved Issues documentation

The issue is fixed in 8.7.3 - please can you run the update and test there?

@MarijeSchillern

I am getting these errors in 8.7.5

OutputStreamWrapper cannot be resolved to a type
com.pega.pegarules.storage.fs.resadaptor.OutputStreamWrapper cannot be resolved to a type

Java at step: 9 line: 13
com.pega.pegarules.storage.fs.resadaptor.RAFile cannot be resolved to a type

I scanned the Hotfix repository, I do not see anything missing. Kindly advice!

Regards,

Jayesh

@JayeshS3 I think it would be best if you log a support incident for this via the MSP.

Please can you provide the INC ticket ID here so that we can help track it with you?

@MarijeSchillern INC-269401 has been logged for this issue.

Hi @MarijeSchillern

I am seeing these similar errors in 8.8.2.

Is there any update on the incident raised above INC-269401 or would it be best for me to raise an INC too?

Thank you.

@StevenY7 the above ticket was logged for 8.7.2. I’ve checked for the status and the ticket was closed at the start of May.

For that particular scenario the Root Cause was found to be a configuration issue.

The Solution was to replace the below java code in the java step in the activity ‘pyAttachAsPDF’

Replace below block:
com.pega.pegarules.storage.fs.resadaptor.RAFile destinationFile = null;
java.io.OutputStream output = null;
destinationFile = new com.pega.pegarules.storage.fs.resadaptor.RAFile(LetterStoragePath, Filename);
output = new com.pega.pegarules.storage.fs.resadaptor.OutputStreamWrapper(destinationFile);

With:
java.io.OutputStream output = null;
if (LetterStoragePath.startsWith(“file://”)) {
output = new PROutputStream(LetterStoragePath);
} else {
output = new java.io.FileOutputStream(LetterStoragePath);
}

The user noted that along with that change they also replaced:

destinationFile = new com.pega.pegarules.storage.fs.resadaptor.RAFile( LetterStoragePath,FileName );

With:

getAbsolutepath().

We would suggest that you check the code to see if you can make the changes. The previous bug referenced related to Internal API’s which were excluded from visibility from activity assembly code, causing assembly errors in the legacy java code.

The fix was already implemented in 8.8: BUG-724023 (see the readme for INC-224268)

I would suggest that you log a support incident if you need further help with your code.

Thanks @MarijeSchillern for your speedy response.

Thanks for details above, I tried to manipulate based on that but seems our implementation is slightly different and probably need some Pega Support.

I’ll raise an INC for further assisstance, thanks for your help.