# Migrating from 7.7 to 7.9

**URL:** <https://forum.inductiveautomation.com/t/migrating-from-7-7-to-7-9/18331>\
**Category:** Module Development\
**Created:** [June 6, 2018, 6:34pm UTC](https://forum.inductiveautomation.com/t/migrating-from-7-7-to-7-9/18331 "2018-06-06T18:34:30Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![BillS](https://avatars.discourse-cdn.com/v4/letter/b/9fc348/32.png) [@BillS](https://forum.inductiveautomation.com/u/BillS)\
**Post date:** [June 6, 2018, 6:34pm UTC](https://forum.inductiveautomation.com/t/migrating-from-7-7-to-7-9/18331/1 "2018-06-06T18:34:30Z")

</div>

Is there a list of things necessary to switch from a 7.7 driver module to a 7.9.

I recently attempted to install a custom driver I built on 7.9.4 and it doesn’t start giving errors that seem to indicate I have some work to do in the initialization portion of the code.

I did use your development maven based SDK when developing this driver.

Thank you,

Bill

---

<div class="post-metadata">

**Author:** ![KathyApplebaum](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kathyapplebaum/32/7261_2.png) [@KathyApplebaum](https://forum.inductiveautomation.com/u/KathyApplebaum)\
**Post date:** [June 6, 2018, 7:31pm UTC](https://forum.inductiveautomation.com/t/migrating-from-7-7-to-7-9/18331/2 "2018-06-06T19:31:34Z")

</div>

Without knowing what the errors are, it’s going to be hard to say.

---

<div class="post-metadata">

**Author:** ![BillS](https://avatars.discourse-cdn.com/v4/letter/b/9fc348/32.png) [@BillS](https://forum.inductiveautomation.com/u/BillS)\
**Post date:** [June 6, 2018, 10:15pm UTC](https://forum.inductiveautomation.com/t/migrating-from-7-7-to-7-9/18331/3 "2018-06-06T22:15:26Z")

</div>

Difficult to say if you have a list of things necessary when updating a driver from 7.7.x to 7.9.x SDK?

---

<div class="post-metadata">

**Author:** ![KathyApplebaum](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kathyapplebaum/32/7261_2.png) [@KathyApplebaum](https://forum.inductiveautomation.com/u/KathyApplebaum)\
**Post date:** [June 6, 2018, 10:45pm UTC](https://forum.inductiveautomation.com/t/migrating-from-7-7-to-7-9/18331/4 "2018-06-06T22:45:08Z")

</div>

We don’t generally keep lists for updating module code from a specific major version to another specific major version. We try to make very few if any breaking changes to the public API, but we don’t tend to track things that aren’t in the public API.

---

<div class="post-metadata">

**Author:** ![BillS](https://avatars.discourse-cdn.com/v4/letter/b/9fc348/32.png) [@BillS](https://forum.inductiveautomation.com/u/BillS)\
**Post date:** [June 7, 2018, 12:55am UTC](https://forum.inductiveautomation.com/t/migrating-from-7-7-to-7-9/18331/5 "2018-06-07T00:55:43Z")

</div>

```auto
ModuleManager	06Jun2018 19:51:49	Error loading hook classes for module "com.mwes.gfms.wsc".
com.inductiveautomation.ignition.common.modules.ModuleLoadException: Unable to load hook class "com.mwes.gfms.wsc.driver.GatewayHook" for module "com.mwes.gfms.wsc".

at com.inductiveautomation.ignition.gateway.modules.ModuleManagerImpl$LoadedModule.loadHook(ModuleManagerImpl.java:2222)

at com.inductiveautomation.ignition.gateway.modules.ModuleManagerImpl$LoadedModule.load(ModuleManagerImpl.java:1920)

at com.inductiveautomation.ignition.gateway.modules.ModuleManagerImpl.startupModule(ModuleManagerImpl.java:1086)

at com.inductiveautomation.ignition.gateway.modules.ModuleManagerImpl$2.call(ModuleManagerImpl.java:682)

at com.inductiveautomation.ignition.gateway.modules.ModuleManagerImpl.executeModuleOperation(ModuleManagerImpl.java:834)

at com.inductiveautomation.ignition.gateway.modules.ModuleManagerImpl.installModuleInternal(ModuleManagerImpl.java:653)

at com.inductiveautomation.ignition.gateway.modules.ModuleManagerImpl.access$1000(ModuleManagerImpl.java:135)

at com.inductiveautomation.ignition.gateway.modules.ModuleManagerImpl$InstallCommand.execute(ModuleManagerImpl.java:1791)

at com.inductiveautomation.ignition.gateway.modules.ModuleManagerImpl$Receiver.receiveCall(ModuleManagerImpl.java:1728)

at com.inductiveautomation.ignition.gateway.redundancy.QueueableMessageReceiver.receiveCall(QueueableMessageReceiver.java:47)

at com.inductiveautomation.ignition.gateway.redundancy.RedundancyManagerImpl.dispatchMessage(RedundancyManagerImpl.java:722)

at com.inductiveautomation.ignition.gateway.redundancy.RedundancyManagerImpl$ExecuteTask.run(RedundancyManagerImpl.java:743)

at com.inductiveautomation.ignition.common.execution.impl.BasicExecutionEngine$ThrowableCatchingRunnable.run(BasicExecutionEngine.java:518)

at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)

at java.util.concurrent.FutureTask.run(FutureTask.java:266)

at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)

at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

at java.lang.Thread.run(Thread.java:745)

Caused by: java.lang.NoClassDefFoundError: com/inductiveautomation/ignition/gateway/web/models/IConfigMenuNode

at java.lang.Class.getDeclaredConstructors0(Native Method)

at java.lang.Class.privateGetDeclaredConstructors(Class.java:2671)

at java.lang.Class.getConstructor0(Class.java:3075)

at java.lang.Class.newInstance(Class.java:412)

at com.inductiveautomation.ignition.gateway.modules.ModuleManagerImpl$LoadedModule.loadHook(ModuleManagerImpl.java:2202)

... 19 common frames omitted

Caused by: java.lang.ClassNotFoundException: com.inductiveautomation.ignition.gateway.web.models.IConfigMenuNode

at java.net.URLClassLoader.findClass(URLClassLoader.java:381)

at java.lang.ClassLoader.loadClass(ClassLoader.java:424)

at java.lang.ClassLoader.loadClass(ClassLoader.java:357)

... 24 common frames omitted

ModuleManager	06Jun2018 19:51:49	Starting up module 'com.mwes.gfms.wsc' (v1.5.0 (b0))...
ModuleManager	06Jun2018 19:51:49	Installing module: "com.mwes.gfms.wsc"

```

---

<div class="post-metadata">

**Author:** ![BillS](https://avatars.discourse-cdn.com/v4/letter/b/9fc348/32.png) [@BillS](https://forum.inductiveautomation.com/u/BillS)\
**Post date:** [June 7, 2018, 12:56am UTC](https://forum.inductiveautomation.com/t/migrating-from-7-7-to-7-9/18331/6 "2018-06-07T00:56:36Z")

</div>

Anyways, I was just checking if there was going to be anything else, once I figured out the ConfigMenu stuff.

---

<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:** [June 7, 2018, 1:01am UTC](https://forum.inductiveautomation.com/t/migrating-from-7-7-to-7-9/18331/7 "2018-06-07T01:01:48Z")

</div>

The config menu changes caught me on my Time Series Cache Module. I had managed to keep that module compatible with multiple Ignition versions until I needed that.
