# Unable to drag and drop svg elements into designer after installing .modl

**URL:** <https://forum.inductiveautomation.com/t/unable-to-drag-and-drop-svg-elements-into-designer-after-installing-modl/109889>\
**Category:** Module Development\
**Tags:** ignition81, perspective\
**Created:** [August 18, 2025, 2:10pm UTC](https://forum.inductiveautomation.com/t/unable-to-drag-and-drop-svg-elements-into-designer-after-installing-modl/109889 "2025-08-18T14:10:44Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![PersistentLearner255](https://avatars.discourse-cdn.com/v4/letter/p/ce73a5/32.png) [@PersistentLearner255](https://forum.inductiveautomation.com/u/PersistentLearner255)\
**Post date:** [August 18, 2025, 2:10pm UTC](https://forum.inductiveautomation.com/t/unable-to-drag-and-drop-svg-elements-into-designer-after-installing-modl/109889/1 "2025-08-18T14:10:44Z")

</div>

I'm currently studying and experimenting in ignition sdk modules. And i noticed that when a perspective-component-minimal module is installed in the gateway, the drag and drop svg action into the designer is not working anymore.

This is the behaviour when the module is installed.

![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/f/0/f0fa6df278bbc2bd65afc59f9ee563f76ef908a0.png)  
 ![draganddropsvg](https://us1.discourse-cdn.com/inductiveautomation/original/3X/6/3/631020426ff371ae39dcd528c4243e13085edd10.gif)

And when i uninstalled/removed the perspective-component-minimal module  
 ![draganddropsvg2](https://us1.discourse-cdn.com/inductiveautomation/original/3X/b/5/b530eb055a8a4cc58ba922cf60611807569ad186.gif)

Other details and information:

1. Ignition version used - 8.1.45 (b2025010709)
2. Java version (Used in gradle build) - java version "17" 2021-09-14 LTS
3. Gradlewrapper was used to build the perspective-component-minimal
4. Initially, the module has error, so to bypass the error, i commented out the part in GatewayHook script.  
ERROR:

```python
com.inductiveautomation.ignition.common.modules.ModuleLoadException: Unable to load hook class "io.ia.example.perspective.min.gateway.OneComponentGatewayHook" for module "io.ia.example.perspective.min".
	at com.inductiveautomation.ignition.gateway.modules.ModuleManagerImpl$LoadedModule.loadHook(ModuleManagerImpl.java:2375)
	at com.inductiveautomation.ignition.gateway.modules.ModuleManagerImpl$LoadedModule.load(ModuleManagerImpl.java:2048)
	at com.inductiveautomation.ignition.gateway.modules.ModuleManagerImpl.startupModule(ModuleManagerImpl.java:1183)
	at com.inductiveautomation.ignition.gateway.modules.ModuleManagerImpl$2.call(ModuleManagerImpl.java:734)
	at com.inductiveautomation.ignition.gateway.modules.ModuleManagerImpl.executeModuleOperation(ModuleManagerImpl.java:913)
	at com.inductiveautomation.ignition.gateway.modules.ModuleManagerImpl.installModuleInternal(ModuleManagerImpl.java:700)
	at com.inductiveautomation.ignition.gateway.modules.ModuleManagerImpl$InstallCommand.doExecute(ModuleManagerImpl.java:1915)
	at com.inductiveautomation.ignition.gateway.modules.ModuleManagerImpl$AbstractModuleCommand.execute(ModuleManagerImpl.java:1864)
	at com.inductiveautomation.ignition.gateway.modules.ModuleManagerImpl$Receiver.receiveCall(ModuleManagerImpl.java:1820)
	at com.inductiveautomation.ignition.gateway.redundancy.QueueableMessageReceiver.receiveCall(QueueableMessageReceiver.java:47)
	at com.inductiveautomation.ignition.gateway.redundancy.RedundancyManagerImpl.dispatchMessage(RedundancyManagerImpl.java:1044)
	at com.inductiveautomation.ignition.gateway.redundancy.RedundancyManagerImpl$ExecuteTask.run(RedundancyManagerImpl.java:1112)
	at com.inductiveautomation.ignition.common.execution.impl.BasicExecutionEngine$ThrowableCatchingRunnable.run(BasicExecutionEngine.java:550)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
	at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
	at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NoClassDefFoundError: jakarta/servlet/http/HttpServletResponse
	at java.base/java.lang.Class.getDeclaredMethods0(Native Method)
	at java.base/java.lang.Class.privateGetDeclaredMethods(Unknown Source)
	at java.base/java.lang.Class.getMethodsRecursive(Unknown Source)
	at java.base/java.lang.Class.getMethod0(Unknown Source)
	at java.base/java.lang.Class.getMethod(Unknown Source)
	at com.inductiveautomation.ignition.gateway.modules.ModuleManagerImpl$LoadedModule.loadHook(ModuleManagerImpl.java:2361)
	... 18 more
Caused by: java.lang.ClassNotFoundException: jakarta.servlet.http.HttpServletResponse
	at java.base/java.net.URLClassLoader.findClass(Unknown Source)
	at com.inductiveautomation.ignition.gateway.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:37)
	at com.inductiveautomation.ignition.gateway.modules.ModuleClassLoader.loadClass(ModuleClassLoader.java:104)
	at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
	... 24 more

8.1.45 (b2025010709)
Azul Systems, Inc. 17.0.13

```

The part in gatewayhook that I commented out to successfully install the module without error.

```python
import jakarta.servlet.http.HttpServletResponse;
.
.
.
    @Override
    public void onMountedResourceRequest(String resourcePath, HttpServletResponse response) {
        super.onMountedResourceRequest(resourcePath, response);
    }
}

```

Did i do something wrong that caused this bug, or is it a recurring issue that extends beyond the module I’m currently working on/experimenting with? The drag-and-drop feature in the Designer is one of the functionalities I really need in order to build the project with my own custom modules.

---

<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:** [August 18, 2025, 3:25pm UTC](https://forum.inductiveautomation.com/t/unable-to-drag-and-drop-svg-elements-into-designer-after-installing-modl/109889/2 "2025-08-18T15:25:08Z")

</div>

Are there any errors in the _designer_ console with your module loaded?

---

<div class="post-metadata">

**Author:** ![PersistentLearner255](https://avatars.discourse-cdn.com/v4/letter/p/ce73a5/32.png) [@PersistentLearner255](https://forum.inductiveautomation.com/u/PersistentLearner255)\
**Post date:** [August 18, 2025, 3:49pm UTC](https://forum.inductiveautomation.com/t/unable-to-drag-and-drop-svg-elements-into-designer-after-installing-modl/109889/3 "2025-08-18T15:49:39Z")

</div>

The module seems fine

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/2/5/25abf56d8d60b735c5f9c22077a541bb7f38d4e4.png)

---

<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:** [August 18, 2025, 4:31pm UTC](https://forum.inductiveautomation.com/t/unable-to-drag-and-drop-svg-elements-into-designer-after-installing-modl/109889/4 "2025-08-18T16:31:55Z")

</div>

![image](https://us1.discourse-cdn.com/inductiveautomation/optimized/3X/3/a/3a3e874ed1cddc189572a64de4db8dca7b5b92b6_2_690x27.png)

Hmm.

I think the class loading error in the example is causing the fetch of the component Javascript to fail (return a 404 page) which may be causing knock-on effects that end up with drag and drop not working. At least, that's my best guess at the moment.

If you go into the `OneComponentGatewayHook` and remove this method implementation:

```python
    @Override
    public void onMountedResourceRequest(String resourcePath, HttpServletResponse response) {
        super.onMountedResourceRequest(resourcePath, response);
    }

```

Then optimize imports and rebuild the module, it should work. The underlying problem is the Jetty upgrade we did in 8.1.49:

> [@Ignition 8.1 Jetty 12 Upgrade](https://forum.inductiveautomation.com/t/ignition-8-1-jetty-12-upgrade/105482):
>
> Tomorrow's (4-24-2025) 8.1.49-SNAPSHOT early access build includes a major upgrade of [Jetty](https://jetty.org/) - the third party library Ignition depends on for powering the Gateway's embedded web server. The primary reason for the major upgrade is: [Jetty v10 is end of life](https://github.com/jetty/jetty.project/issues/10485) and will no longer receive critical bug fixes and security patches. This is at odds with our commitment for long term support of Ignition 8.1. Performing a major upgrade of a core dependency such as Jetty is a major undertaking and not withou…

---

<div class="post-metadata">

**Author:** ![a.alghannam](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/a.alghannam/32/75158_2.png) [@a.alghannam](https://forum.inductiveautomation.com/u/a.alghannam)\
**Post date:** [March 31, 2026, 7:08am UTC](https://forum.inductiveautomation.com/t/unable-to-drag-and-drop-svg-elements-into-designer-after-installing-modl/109889/5 "2026-03-31T07:08:34Z")

</div>

I’ve actually had the same problem. and i was going crazy why svg drag and drop not working. until i saw your post. i was developing my own module and it was installed. SVG drop didn’t work until i uninstalled the module.

thank you
