The Product(s) and option which contain each open source component are in the "Product Families" and "Snowbound Option" columns. The Snowbound products and options are grouped by color.

  • The components that are in RasterMaster Java and the Java VirtualViewers are shades of orange.
  • The components that are in VirtualViewer only (not RasterMaster) are in shades of green
  • All of the components used for the Java Office 2007-2010 option are in one color.
  • On the AJAX client table there are different shades of green depending on the version when the component was added.
  • Rows that are gray and with their name stricken through are no longer in the product, or are third party components.

Java Products Open Source

Open Source Component

Version

License

Snowbound Option

Product Families

Snow Source Location

Deliverable File

Notes

Bouncy Castle

v1.49

adaptation of the MIT X11 License

Base

VV

Archiva

bcprov-jdk15-143.jar and bcmail-jdk15-143.jar

The files are shipped unmodified with VirtualViewer Java Content Server in the WEB-INF\lib directory.

Bouncy Castle bcmail-jdk14-143.jar is used by itext.jar when extracting encrypted PDF pages, which may happen when you cut and paste pages in a document in the VirtualViewer. It may also be used when processing password protected PDF files, which are encrypted.

If you remove bcmail-jdk14-143.jar then you may see an exception when viewing or copying encrypted PDF pages. This only affects PDF document viewing. Many PDF documents are not encrypted and will not be affected. Other document formats are not affected.

This is an optional dependency of iText. It is shipped by default with VV. It is not shipped by default with RM. Support would know if we ever give it to customers outside of normal builds.

CMAP

1.5

Open @ Adobe

Base

RM, VV

Archiva

CMAP-all.jar

Character mapping; our version is circa Jun 2009 and is beyond obsolete

JPEG2000

4.1

MPL 1.1

Base

RM, VV

RasterMaster jj2000

com/snowbound/jpeg2000/jj2000

Bob has modified the source.

JavaMail API

1.5.0_06-b03 (activation), 1.3.2 (mail)

Oracle Binary Code License Agreement for Java EE Technologies

Base

VV

activation.jar and mail.jar

activation.jar and mail.jar

The files are shipped unmodified with VirtualViewer Java Content Server in the WEB-INF\lib directory.

JSON in Java

2011-02-02

JSON License

Base

VV

Archiva

json.jar

The library is used unmodified. We started using this in late June 2011 so it is in VirtualViewer 13 and VV Java AJAX 2.1 or later.

log4j

1.2.16

Apache

Base

RM, VV

Archiva

log4j-1.2.16.jar

no modifications

EhCache

v3.1.1

Apache license

Base

VV

Archiva

ehcache-3.1.1.jar

This library is used with no modifications starting with version 4.5

Used in caching of documents

SLF4J (Simple Logging Facade)

v1.7.21

MIT license

Base

VV

Archiva

slf4j-api-1.7.21.jar and slf4j-simple-1.7.21.jar

This library is used with no modifications starting with version 4.5

Dependency of EhCache. Will likely be used for all VV logging in the future.

lunr.js

v2.3.8

MIT license

Base

RM, VV

js/lunr-2.3.8.js

lunr-2.3.8.js

This is used to facilitate search on the documentation site.

LibreOffice (Libre/OpenOffice Support in v20.1 and Later) Open Source

Note: We do not actually employ the LibreOffice code in v20.0.x/v5.0.x, but we do ship it.

Open Source Component

Version

License

Snowbound Option

Product Families

Snow Source Location

Deliverable File

Notes

LibreOffice Core

5.4.2

MPL 2.0

Libre/OpenOffice/ODF

RM, VV

Archiva

juh-5.4.2.jar, jurt-5.4.2.jar, ridl-5.4.2.jar, unoil-5.4.2.jar, officebean-5.4.2.jar

no modifications

Alfresco Connector Open Source

Open Source Component

Version

License

Snowbound Option

Product Families

Snow Source Location

Deliverable File

Notes

JSON-simple

1.1.1

Apache 2

Alfresco Connector

VV

via Maven pom: dependency groupId com.googlecode.json-simple

json-simple-1.1.1.jar

The library is used unmodified starting with the Alfresco Connector in VV JH5 3.4.2.

google-http-client-1.12.0-beta.jar

1.12.0

Apache 2

Alfresco Connector

VV

1 pom: dependency groupId com.google.http-client

google-http-client-1.12.0-beta.jar

The library is used unmodified starting with the Alfresco Connector in VV JH5 3.4.2.

VirtualViewer HTML5 Client Open Source - both Java and .NET

Open Source Component

Version

License

Snowbound Option

Product Families

Files delivered

Snow Source Location

Notes

jQuery

3.2.1

MIT-style License

Base

VV

jquery-3.2.1.min.js

js/3rdparty

This library is used unmodified in the VirtualViewer HTML5 client (starting with version 2.0).

jQuery has become the stdlib of the web. It is used for a huge number of purposes

jQuery Clearable Text Field plugin

0.3.2

MIT license

Base

VV

jquery.clearableTextField.min.js

js/3rdparty

Added for HTML5 3.2; modified.

Used in the search text field, shows a 'x' to clear the field when it has contents. No longer used as of 4.13.

jQuery Context Menu Plugin

r2

MIT License

Base

VV

jquery.contextmenu.r2.js

js/3rdparty

This library is used with minor modifications starting with version 2.0. Added mouse button selection (svn 26891) and rubber stamps (svn 26939)

Used for thumbnail context menus ('right click'), also for the rubber stamp menu (and possibly others).

jQuery Localize Plugin

14-Mar-2012?

MIT license

Base

VV

jquery.localize.js

js/3rdparty

This library is used (with modifications) starting with version 3.0.

Used to support localization throughout the product.

Bootstrap

3.3.7

MIT License

Base

VV

bootstrap.js

js/3rdparty

This library is used unmodified in the VirtualViewer HTML5 client (starting with version 4.4)

A collection of GUI widgets and some helper utilities that we use throughout the UI. An example is the tab control.

Slider for Bootstrap

7.0.2

Apache License

Base

VV

bootstrap-slider.js

js/3rdparty

This library is used unmodified in the VirtualViewer HTML5 client (starting with version 4.4)

A slider widget, used in picture controls.

json2.js

2011-02-23

Public Domain reference implementation

Base

VV

json2.js

js/3rdparty

This library is used with no modifications starting with version 2.2

JSON is a data interchange format that we use to move data between the server and client.

URI.js

1.11.2

MIT license

Base

VV

URI.js

js/3rdparty

This library is used with no modifications starting with version 3.3

Helps craft and parse URIs

Modernizr

3.0.0 (Custom Build)

MIT license

Base

VV

modernizr.js

js/3rdparty

This library is used with no modifications starting with version 3.3

Tells us what feature a given browser supports.

console-shim

trunk

MIT license

Base

VV

console-shim.min.js

js/3rdparty

This library is used with no modifications starting with version 4.0

Papers over some console.log() issues in older browsers..

String.prototype.startsWith

v0.2.0

MIT license

Base

VV

console-shim.min.js

js/3rdparty

This library is used with no modifications starting with version 4.1

Polyfill to add missing String.startsWith() method to browsers which don't yet support it ..

pica

v4.1.0

MIT license

Base

VV

pica.min.js

js/3rdparty

This library is used with no modifications starting with version 4.3

Used for client-side image scaling

localForage

v1.4.2

Apache license

Base

VV

localforage.min.js

js/3rdparty

This library is used with no modifications starting with version 4.4

Used to work around IE11/Edge bug with localStorage. Uses indexedDB which works correctly on MS platforms

jQuery Sortable

v0.9.13

license

Base

VV

jquery-sortable-min .js

js/3rdparty

This library is used with no modifications starting with version 4.5

Used to make draggable thumbnails

Moment.js

v2.17.1

MIT license

Base

VV

moment.min.js

js/3rdparty

Cross-browser date library used to format annotation create dates for display and storage.

Split

v1.2.0

MIT license

Base

VV

split.js

js/3rdparty

Lightweight, unopinionated utility for adjustable split views.

JsRender

v0.9.84

MIT license

Base

VV

jsrender.min.js

js/3rdparty

Utility for Javascript HTML templates.

PDF.js

v1.10.100

Apache license

Base

VV

pdf.min.js and pdf.worker.min.js

js/3rdparty

Used since 4.8 - pdf.worker.js modified since 4.13. See GH #13029.

Javascript PDF rendering, used in printing.

jQuery.highlight-within-textarea.js

6df46cb

MIT license

Base

VV

jquery.highlight-within-textarea.js and jquery.highlight-within-textarea.css

js/3rdparty and css/3rdparty

Plugin used with CSS modification from 4.10. Used in the watermarks textbox after changing it from an editable HTML div.

RequireJS

v2.3.5

MIT license

Base

VV

require.js

require.js

Module-loading library used to structure internal code.

domReady

v2.0.1

MIT license

Base

VV

domReady.js

3rdparty/domReady.js

Plugin for RequireJS to load internal VirtualViewer code at the correct time during page load.

bootstrap-add-clear

v1.0.7

MIT license

Base

VV

bootstrap-add-clear.min.js

3rdparty/bootstrap-add-clear.js

Plugin to add X button to bootstrap textbox (older plugin in use for Search tab does not work with bootstrap.)

Lie

v3.2.0

MIT license

Base

VV

lie.polyfill.min.js

3rdparty/lie.polyfill.min.js

An important modern tool in Javascript is the Promise, allowing easy and interesting asynchronous behavior. Internet Explorer doesn't support Promises, so Lie provides a polyfill.

diff-match-patch

2018

Apache 2.0

Base

VV

diff_match_patch.js

3rdparty/diff_match_patch.js

Quickly and easily compare plain text in javascript, allowing VirtualViewer to implement document comparison.

Hammer.js

v1.0.5

MIT

Base

VV

jquery.hammer.min.js

3rdparty/jquery.hammer.min.js

Provide tools and extend touch events for mobile browsers.

FastestSmallestTextEncoderDecoder

v1.0.2

Unlicense

Base

VV

FastestTextDecoderPolyfill.min.js

3rdparty/FastestTextDecoderPolyfill.min.js

Decode a stream of UFT8 data into processable image data. Internet Explorer does not support this method, so this library is a polyfill for Internet Explorer. We only use the decoding part of this library, not the encoding.