# WebDev error log?

**URL:** <https://forum.inductiveautomation.com/t/webdev-error-log/110453>\
**Category:** Ignition\
**Tags:** webdev\
**Created:** [September 8, 2025, 4:44pm UTC](https://forum.inductiveautomation.com/t/webdev-error-log/110453 "2025-09-08T16:44:13Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![Transistor](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/transistor/32/3380_2.png) [@Transistor](https://forum.inductiveautomation.com/u/Transistor)\
**Post date:** [September 8, 2025, 4:44pm UTC](https://forum.inductiveautomation.com/t/webdev-error-log/110453/1 "2025-09-08T16:44:13Z")

</div>

I'm working remotely on an Ignition installation and using WebDev to retrieve some PDFs in an iFrame. The system is running on a Windows server and I don't have access to the OS.

I've got WebDev and the iFrame working on my laptop (Designer and gateway both on the same machine). PDFs appear in the iFrame.

I'm running into 404 errors on the remote machine. I suspect that it may be a Windows permissions problem but I'd like to be sure.

1. Does WebDev have any error logs? I can't find anything in the gateway | Status | Logs.

2. If Perspective can read the folder and list the files (indicating that it has permissions) should WebDev be able to deliver files from that same folder?

Thanks!

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [September 8, 2025, 5:13pm UTC](https://forum.inductiveautomation.com/t/webdev-error-log/110453/2 "2025-09-08T17:13:13Z")

</div>

1. ~~No~~ _Not much_, do your own error handling and logging.

2. I would think so.

---

<div class="post-metadata">

**Author:** ![MMaynard](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/mmaynard/32/3366_2.png) [@MMaynard](https://forum.inductiveautomation.com/u/MMaynard)\
**Post date:** [September 8, 2025, 5:13pm UTC](https://forum.inductiveautomation.com/t/webdev-error-log/110453/3 "2025-09-08T17:13:18Z")

</div>

> [@Transistor](#):
>
> If Perspective can read the folder and list the files (indicating that it has permissions) should WebDev be able to deliver files from that same folder?

Not necessarily, it might be read only for the service account the gateway is running under.

Especially if it is running in the folders that Ignition is installed inside of, Program Files is a protected system folder.

WebDev does send errors to the gateway logs though, I am not sure what all it sends though.

We do see script errors in our logs for webdev.

---

<div class="post-metadata">

**Author:** ![Transistor](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/transistor/32/3380_2.png) [@Transistor](https://forum.inductiveautomation.com/u/Transistor)\
**Post date:** [September 8, 2025, 5:18pm UTC](https://forum.inductiveautomation.com/t/webdev-error-log/110453/4 "2025-09-08T17:18:02Z")

</div>

> [@pturmel](#):
>
> Not much, do your own error handling and logging.

But there's no scripting involved. As shown in [Web Dev | Ignition User Manual](https://docs.inductiveautomation.com/docs/8.1/ignition-modules/web-dev#mounted-folder), I'm just providing a URL.

> Pseudocode - URL to Mounted Folder  
> `http://host:port/system/webdev/projectname/assets/a.jpg`

If I type the URL into the browser address bar I get the 404. (On my development laptop it works fine.) On something like an Apache web server I could examine the logs to see what the problem is.

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [September 8, 2025, 5:21pm UTC](https://forum.inductiveautomation.com/t/webdev-error-log/110453/5 "2025-09-08T17:21:37Z")

</div>

Ah, no idea. Poke at logger debug levels, perhaps. (I will admit to not using mounted folders--I don't trust publishing anything that gets tossed in a folder.)

---

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [September 8, 2025, 5:42pm UTC](https://forum.inductiveautomation.com/t/webdev-error-log/110453/6 "2025-09-08T17:42:41Z")

</div>

Mounted folders have next to no error handling, because there's next to no code in them. We should probably have some debug or trace logging to at least indicate what's being attempted, but a 404 from a mounted folder is pretty basic:

```java
    @Override
    public void doGet(PathParser path, HttpServletRequest req, HttpServletResponse resp) throws IOException {

        // Strip the leading resourcePath from the requested path to ensure that resources within folders are resolved.
        String urlPath = StringUtils.replaceOnce(path.getResource(), resourcePath, "");

        // Let Path sort out file separators for us. added bonus of toFile()
        File f = Path.of(this.filePath, urlPath).toFile();
        if (f.isFile() && f.canRead()) {
            String contentType = Files.probeContentType(f.toPath());
            if (urlPath.endsWith(".js") && contentType == null) {
                contentType = "text/javascript";
            }
            resp.setContentType(contentType);
            resp.setContentLength((int) f.length());
            FileUtils.copyFile(f, resp.getOutputStream());
        } else {
            resp.sendError(404);
        }
    }

```

---

<div class="post-metadata">

**Author:** ![Transistor](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/transistor/32/3380_2.png) [@Transistor](https://forum.inductiveautomation.com/u/Transistor)\
**Post date:** [September 8, 2025, 6:42pm UTC](https://forum.inductiveautomation.com/t/webdev-error-log/110453/7 "2025-09-08T18:42:16Z")

</div>

Thanks for the peek under the hood, Paul.

---

<div class="post-metadata">

**Author:** ![Transistor](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/transistor/32/3380_2.png) [@Transistor](https://forum.inductiveautomation.com/u/Transistor)\
**Post date:** [September 8, 2025, 11:08pm UTC](https://forum.inductiveautomation.com/t/webdev-error-log/110453/8 "2025-09-08T23:08:46Z")

</div>

I found [[Question] PDF Viewer File Path - #6 by osolorzano](https://forum.inductiveautomation.com/t/question-pdf-viewer-file-path/20715/6) useful in testing. I think my trouble was a missing `_` difference in the WebDev mounted folder configuration and the actual file path.

Thanks all.
