Multiple Download/Save Report Java sample 14.0 Web Viewer
search cancel

Multiple Download/Save Report Java sample 14.0 Web Viewer

book

Article ID: 257391

calendar_today

Updated On:

Products

Output Management Web Viewer

Issue/Introduction

Our users download and save multiple reports on a daily basis, but when selecting 470 reports to save, below error came up.  Is the actual limit set at 20 reports by default?  How would we change the default value?  There was no such known limit for Web Viewer v12.1.6 that these users had issue with.  What kind of performance issue are we talking about?  Please provide all justifications and how to resolve the design issue of Web Viewer v14.0.  

The error we get is "You have selected 470 applicable reports. For performance reasons, you can select up to 20 reports. You can select smaller groups of reports and perform the required action as many times as you need."

Environment

Release : 14.0

Web Viewer

Gradle

Java JDK 11,17

Resolution

This features is not currently available in Web Viewer 14.0.  As a workaround, this feature is now available as a sample. It is a Java app that runs on the PC and allows users to download multiple reports from View that will be concatenated into a single report. This feature is in 12.1 but not currently in 14.0.
It also will allow the resulting filename to be renamed.  An additional sample for favorites is also available.
 
 
The sample sources are linked from the very end of Using the rest api page in the online documentation.

 

Additional Information

Note: Samples require Gradle to be compiled.

In regards to deploying to other host machines:

The build distributable packages are saved in the <application>/build/distributions directory.

Prerequisites:

- The apps are built on a single "build machine" as described in the README.

- Java 17+ is installed on the target host.  If you have more than one Java JDK installed on the target host be sure to set the system variable JAVA_HOME to the correct Java JDK.

Deploying:

- Copy the TAR file (Linux, Unix) or ZIP file (Windows) from <application>/build/distribution/ to any folder or Desktop on the target host.

- Extract the archive using tar for the TAR file or WinZIP/7-Zip  for the ZIP file.

- In the extracted folder, navigate to bin folder and run the <application> script (Linux, Unix) or <application>.bat file (Windows).

- Users:

  1. Must have JDK11 or higher on their desktop
  2. The default browser’s security settings must allow an executable file be called or launched.

In regards to using an SSL/TLS connection:

The ApiClient facility used by the samples already supports secure SSL/TLS connections.  The root certificate provided by your server must be known and trusted by your Java JDK environment.  If the certificate is not known and trusted the connection will fail with error "javax.net.ssl.SSLHandshakeException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target".

You need to either:

- Install the server's certificate into your Java JDK trusted certificates storage.  We put together a PDF with some additional information which I will attach to the issue.

- In a development environment, you can modify the sample to tell ApiClient to skip verification of the certificate - the session will still use SSL/TLS but the server's certificate will not be verified by the application.  In src/main/java/com/broadcom/msd/om/sample/<application>/api/Api.java look the following lines in the login method:

apiClient.setUsername(username);
apiClient.setPassword(password);

Add the following line:

apiClient.setVerifyingSsl(false);

After the change you should have:

apiClient.setUsername(username);
apiClient.setPassword(password);
apiClient.setVerifyingSsl(false);

Contact Broadcom Support for assistance if needed.