Skip to content
Open
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
---
title: How to debug the extension
description: How to enable debug mode and collect logs for troubleshooting
---

If you encounter issues while running an applet with CheerpJ Applet Runner, enabling **Debug Mode** can provide detailed logs that help our support team identify the problem.

## Enabling Debug Mode

To enable the debug build of CheerpJ:

1. Click the **CheerpJ Applet Runner icon** in your browser's toolbar.
2. In the popup page, toggle the **"Enable debugging mode"** switch to **On**.
3. The extension will now use the debug version of the runtime, which includes extensive logging.

> [!important] Reload Required
> You must enable the debugging mode **before** loading your application, or **reload the page** after enabling it. Otherwise, the setting will not take effect.

## Collecting Debug Information

To help us troubleshoot, we typically need two files: the **Console log** and a **Network HAR file**.

### Step 1: Open Browser DevTools

To ensure we receive complete logs, **you must either reload the page after opening the developer tools, or enable the extension only after the developer tools are open**.

1. Press `F12` (Windows/Linux) or `Cmd + Opt + I` (Mac) to open the DevTools.
2. Alternatively, right-click anywhere on the page and select **Inspect**.

### Step 2: Save the Browser Console Output

1. With the developer tools open, navigate to the **Console** tab. (If you don’t see it, click the `+` symbol in Edge or `>>` in Chrome, then select Console).
2. If needed, trigger the error in your application.
3. Right-click on any message in the console tab and select **Save as…**
4. Save the console log to a file.

### Step 3: Extract a HAR File

A HAR (HTTP Archive) file logs your browser's network interactions and helps us diagnose loading or server responses.

1. In the developer tools, navigate to the **Network** tab.
2. **Reload your page** (or navigate to the applet) to ensure the network log captures requests from the very beginning.
3. Trigger the error in your application if needed.
4. Click the download icon (`↓`) at the top right of the Network tab to export and save the HAR file.

---

Once you have collected these files, please attach them to your support request or bug report.
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
---
title: Upload and download files
description: How to interact with the local filesystem using the Applet Runner extension
---

For a deeper dive into how file systems work in CheerpJ, check out the [File System explanation guide](https://cheerpj.com/docs/explanation/File-System-support).

The CheerpJ Applet Runner extension provides a virtual filesystem that allows Java applets to read and write files within the browser's sandbox. Since browsers cannot access your local disk directly for security reasons, CheerpJ provides two main ways to move files into and out of this virtual space.

## Method 1: Using the extension popup

The extension popup (accessible by clicking the CheerpJ icon in your browser's toolbar) provides direct controls for file handling.

> [!note] Pin the extension
> If you cannot see the extension popup icon, you may need to pin the extension to your browser's toolbar.

### Uploading files

The upload button is only available in the extension popup **once a Java applet is already running**. To import a local file to the virtual filesystem:

1. Click the **Upload** button in the extension popup.
2. Select the file(s) from your local filesystem (your machine).
3. The files will be automatically placed in the **`/files/uploads/`** virtual directory.

Inside the Java applet, you can then navigate to `/files/uploads/` to open or import these files.

### Downloading files

Any file that the Java applet saves to the **`/files/downloads/`** virtual directory will be automatically detected and downloaded by your browser to your local machine (usually your default Downloads folder).

To export data, simply ensure the applet's save path is set to `/files/downloads/`.

## Method 2: Using the built-in file picker

If the Java applet uses a standard Java File Dialog (for example, `JFileChooser`), CheerpJ provides an integrated way to handle local files without leaving the applet's UI.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This sections should be called something like Using the window title bar

Then explain then windows/frames/dialogs that have a title bar will have a new upload icon. The main Applet frame is normally undercoated, meaning it has no title bar, so mentioning file dialogs and extra windows is useful here.


### Integrated Upload

The upload icon (an upward arrow) is present as part of the title bar on any window, frame, or File Dialog that opens.

1. Click the **upload icon** in the title bar.
2. Select a file from your local machine.
3. The file is automatically uploaded to the virtual filesystem at **`/files/uploads/`**.
4. In the File Dialog, navigate to `/files/uploads/` and select the file to load it into the applet.

### Integrated Download

Similarly, if you use a "Save" File Dialog and choose a path under **`/files/downloads/`**, the browser will automatically trigger a download of the file to your local machine once the save operation is complete.
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
---
title: How to debug the extension
description: How to enable debug mode and collect logs for troubleshooting
---

If you encounter issues while running a Java Web Start application with CheerpJ JNLP Runner, enabling **Debug Mode** can provide detailed logs that help our support team identify the problem.

## Enabling Debug Mode

To enable the debug build of CheerpJ:

1. Click the **CheerpJ JNLP Runner icon** in your browser's toolbar.
2. In the popup page, toggle the **"Enable debugging mode"** switch to **On**.
3. The extension will now use the debug version of the runtime, which includes extensive logging.

> [!important] Reload Required
> You must enable the debugging mode **before** loading your application, or **reload the page** after enabling it. Otherwise, the setting will not take effect.

## Collecting Debug Information

To help us troubleshoot, we typically need two files: the **Console log** and a **Network HAR file**.

### Step 1: Open Browser DevTools

For the JNLP Runner, it is important to open the browser's developer tools directly on the **"start application"** page (the intermediate page that appears before the application launches). This makes sure the logs are complete from the beginning.

1. On the "start application" screen, press `F12` (Windows/Linux) or `Cmd + Opt + I` (Mac) to open the DevTools.
2. Alternatively, right-click anywhere on the page and select **Inspect**.

### Step 2: Save the Browser Console Output

1. With the developer tools open, navigate to the **Console** tab. (If you don’t see it, click the `+` symbol in Edge or `>>` in Chrome, then select Console).
2. If needed, trigger the error in your application.
3. Right-click on any message in the console tab and select **Save as…**
4. Save the console log to a file.

### Step 3: Extract a HAR File

A HAR (HTTP Archive) file logs your browser's network interactions and helps us diagnose loading or server responses.

1. In the developer tools, navigate to the **Network** tab.
2. Continue with starting your application to ensure all network requests are captured.
3. Trigger the error in your application if needed.
4. Click the download icon (`↓`) at the top right of the Network tab to export and save the HAR file.

---

Once you have collected these files, please attach them to your support request or bug report.
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
---
title: Upload and download files
description: How to interact with the local filesystem using the JNLP Runner extension
---

For a deeper dive into how file systems work in CheerpJ, check out the [File System explanation guide](https://cheerpj.com/docs/explanation/File-System-support).

The CheerpJ JNLP Runner extension provides a virtual filesystem that allows Java Web Start applications to read and write files within the browser's sandbox. Since browsers cannot access your local disk directly for security reasons, CheerpJ provides two main ways to move files into and out of this virtual space.

## Method 1: Using the extension popup

The extension popup (accessible by clicking the CheerpJ icon in your browser's toolbar) provides direct controls for file handling.

> [!note] Pin the extension
> If you cannot see the extension popup icon, you may need to pin the extension to your browser's toolbar.

### Uploading files

The upload button is only available in the extension popup **once a Java application is already running**. To import a local file to the virtual filesystem:

1. Click the **Upload** button in the extension popup.
2. Select the file(s) from your local filesystem (your machine).
3. The files will be automatically placed in the **`/files/uploads/`** virtual directory.

Inside the Java application, you can then navigate to `/files/uploads/` to open or import these files.

### Downloading files

Any file that the Java application saves to the **`/files/downloads/`** virtual directory will be automatically detected and downloaded by your browser to your local machine (usually your default Downloads folder).

To export data, simply ensure the application's save path is set to `/files/downloads/`.

## Method 2: Using the built-in file picker

If the Java application uses a standard Java File Dialog (for example, `JFileChooser`), CheerpJ provides an integrated way to handle local files without leaving the application's UI.

### Integrated Upload

The upload icon (an upward arrow) is present as part of the title bar on any window, frame, or File Dialog that opens.

1. Click the **upload icon** in the title bar.
2. Select a file from your local machine.
3. The file is automatically uploaded to the virtual filesystem at **`/files/uploads/`**.
4. In the File Dialog, navigate to `/files/uploads/` and select the file to load it into the application.

### Integrated Download

Similarly, if you use a "Save" File Dialog and choose a path under **`/files/downloads/`**, the browser will automatically trigger a download of the file to your local machine once the save operation is complete.
Loading