Custom Confluence plugin fails to enable after upgrade to 8.5.3

Hi there,

A while ago we developed a custom plugin that makes use of the K15t HTML Exporter libraries and it worked perfectly however we tested an upgrade from 7.19.2 to 8.5.3 on a test instance because of the recent security advisories.
After the upgrade was successful I began doing some tests and noticed that our custom plugin failed to enable. I check the logs and the below was all that displayed. There was nothing specific pointing to a cause:

2023-11-15 09:30:40,601 WARN [http-nio-8181-exec-5 url: /plugins/servlet/upm; user: ########] [confluence.plugin.descriptor.VelocityContextItemModuleDescriptor] logThrowable Unable to access module for descriptor ‘com.adaptavist.confluence.survey:survey-velocity-helper’ of class ‘com.atlassian.confluence.plugin.descriptor.VelocityContextItemModuleDescriptor’ because of ‘org.springframework.beans.factory.BeanCreationException - Error creating bean with name ‘com.adaptavist.confluence.survey.util.SurveyVelocityHelper’: Lookup method resolution failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class [com.adaptavist.confluence.survey.util.SurveyVelocityHelper] from ClassLoader [com.adaptavist.confluence.survey [238]]’. Continuing…
– url: /plugins/servlet/upm | userName: ######## | referer: https://wiki2.####.co.za/plugins/servlet/upm | traceId: bb5677d3d7dae10b
2023-11-15 09:30:40,782 ERROR [http-nio-8181-exec-10 url: /rest/plugins/1.0/com.####.mis.plugins.ExportHTML-key; user: ########] [plugin.osgi.factory.OsgiPluginInstalledHelper] availableForTraversal Cannot determine required plugins, cannot resolve bundle ‘com.####.mis.plugins.ExportHTML’
– url: /rest/plugins/1.0/com.####.mis.plugins.ExportHTML-key | userName: ######## | referer: https://wiki2.####.co.za/plugins/servlet/upm | traceId: cd9f4993e94dd234

Please feel free to ask any questions if more information is required.
Thanks.

Some basic questions:

The k15t HTML Exporter is installed on the new 8.5.3 instance?

You set the version to 8.5.3 in your plugins POM.xml?

Is there a new version of the K15t HTML Exporter that you need to add to see changes reflect in the library in your IDE?

Hi @David8,

  1. Yes the k15t HTML Exporter is installed on the new 8.5.3 instance.

  2. I added it now however I have seen some issues with some artifacts missing with 8.5.3 so I added 8.5.1 instead but after running atlas-package, I am now getting an error relating to package com.opensymphony.webwork does not exist.
    The import exists in the code and the jar file exists under Referenced Libraries in the project.
    import com.opensymphony.webwork.ServletActionContext;

  3. Not that I am aware of.

It may just be due to changes since this plugin was first created (before my time) as the referenced Confluence version was for version 5 so its possible there may just be a ton of deprecated references and what not.

Kind regards,
Daniel

I managed to sort it out. I used 8.5.2 in the pom.xml and just had to change/replace a few deprecated imports used in the project. This is the link where I found the info: Struts 2 upgrade | Confluence Data Center and Server 8.6 | Atlassian Documentation.

Hello @DanielHurrell, I believe we have encounter very similar issue in our instance of Confluence. I am trying to follow your answer, but I am not skilled in plugin creation or updating of an existing one. Would there be a way to contact you somehow directly, where would guide me through the process?

Kind Regards,
Adam