Vaadin Spreadsheet

The Vaadin Spreadsheet add-on integrates the commercial Vaadin Spreadsheet component into Jmix. It embeds a full-featured, Excel-compatible spreadsheet into an application view. Users open, edit, and save .xlsx workbooks without leaving the browser.

The component is built on Apache POI, so the whole POI object model — workbooks, sheets, cells, styles, and formulas — is available on the server side.

The add-on provides the following features:

  • Reading, editing, and writing XLS and XLSX files with formulas, formatting, and styles preserved.

  • A familiar spreadsheet experience with a formula bar, multiple sheets, frozen panes, and charts.

  • Declarative configuration of the component in the view XML descriptor and full programmatic control from Java.

  • Subscription to cell value, formula, selection, and sheet change events with the standard @Subscribe annotation.

  • Custom handlers for cell deletion, hyperlink clicks, and components embedded into cells.

  • A report style that hides the toolbars of the component, so a generated document is shown as clean output.

  • Design-time support in Jmix Studio, where the component is available in the Vaadin Commercial category of the view designer palette along with its property editors.

Typical use cases are in-application editing of Excel documents, bulk data entry, and presentation of tabular reports.

Installation

This add-on requires two subscriptions:

For automatic installation through Jmix Marketplace, follow instructions in the Add-ons section.

For manual installation, follow the steps below.

  1. Configure access to the premium repository.

    • Add the premium repository to your build.gradle:

      repositories {
          // ...
          maven {
              url = 'https://global.repo.jmix.io/repository/premium'
              credentials {
                  username = rootProject['premiumRepoUser']
                  password = rootProject['premiumRepoPass']
              }
          }
      }
    • Add premium repository credentials to ~/.gradle/gradle.properties:

      premiumRepoUser=123456123456
      premiumRepoPass=abcdefabcdef

      Get the repository credentials from your license key: the first part of the key before dash is the repository user name, the part after dash is the password. For example, if your key is 123456123456-abcdefabcdef, then the user name is 123456123456 and the password is abcdefabcdef.

  2. Add dependency to your build.gradle:

    implementation 'io.jmix.vcc:vaadin-spreadsheet-starter'

See Spreadsheet Component for the description of the component, its attributes, handlers, and Java API.