WebResourceManager depcrecated in Jira10

WebResourceManager is depcrecated and i am not able to use requireResource() method. Do we have an alternate method for this webResourceManager.requireResource(“com.thed.zephyr.je:zephyr-project-dashboard-resources-tree”);
Which alternate method can we use?

2 Likes

I don’t think WebResourceManager is deprecated, it has however moved to a new api package in platform 7: com.atlassian.webresource.api.WebResourceManager

There is an upgrade guide here with the package changes and other information: Bitbucket

Thank you so much @rlander , it worked for me.

One more help,
Just wanted to know if the following libraries have been deprecated as well or not?
1 . com.atlassian.jira.component.ComponentAccessor; [method getAttachmentPathManager()]
2. com.atlassian.sal.api.lifecycle.LifecycleAware

public class ClusterSchedulerServiceImpl implements ClusterSchedulerService, LifecycleAware{

Error - com.thed.zephyr.je.config.ZephyrJELauncher is not abstract and does not override abstract method onStop() in com.atlassian.sal.api.lifecycle.LifecycleAware
  1. toFastMap()
cannot find symbol
[ERROR]   symbol:   method toFastMap()
[ERROR]   location: class com.atlassian.jira.util.collect.MapBuilder<java.lang.String,com.atlassian.jira.JiraDataType>

The above also, we are not able to run the internal functions.
The below are the one which we are using.
<jira.version>10.0.0-m0008</jira.version>(jira-core,jira-api,jira-tests,jira-rest-plugin,jira-software)
<jira.data.version>10.0.0-m0008</jira.data.version>
<jira.software.application.version>10.0.0-m0008</jira.software.application.version>(jira-software)

We are using Java 17 since Jira10 needs Java17 only to compile.

2 Likes

com.atlassian.jira.component.ComponentAccessor;** [method getAttachmentPathManager()]

There are various changes to attachment APIs in Jira 10, these changes are to support S3 as an attachment storage location: Storing attachments in Amazon S3 | Administering Jira applications Data Center 9.17 | Atlassian Documentation

AttachmentPathManager will definitely have been deprecated. As attachments can now be stored in S3, you cannot rely on paths from the filesystem in your app, and instead must use filessytem agnostic APIs that stream in the content. More details here: https://developer.atlassian.com/server/jira/platform/preparing-for-jsw-10-jsm-6/#breaking-changes-to-the-java-and-rest-apis-in-eap03

Error - com.thed.zephyr.je.config.ZephyrJELauncher is not abstract and does not override abstract method onStop() in com.atlassian.sal.api.lifecycle.LifecycleAware

Not sure this is a new thing, but the fix is pretty clear, ZephyrJELauncher needs to implement onStop from LifecycleAware interface.

cannot find symbol
[ERROR] symbol: method toFastMap()

No idea about this one. It’s probably best to rely on the dedicated Jira 10 thread from Atlassian.

Cheers!

2 Likes

Thank you so much @rlander
I have one more doubt… Now compilation error is not coming while creating .obr file but none of our APIs are working , giving 403 error for Jira 10.

@Path("importer")
//@AnonymousAllowed
//@ResourceFilters(ZFJApiFilter.class)
@UnrestrictedAccess
@ZSFilterNameBinding
public class IssueImporterResource {
@Inject
	public IssueImporterResource(JiraAuthenticationContext authContext, IssueImporterResourceDelegate issueImportResourceDelegate

I have above annotations on my class and in atlassian-plugin.xml
following is the change

 <component key="issueImporterService" name="Issue Importer Service"
               class="com.thed.zephyr.je.service.impl.IssueImporterServiceImpl"/>

The above one was working for Jira 9, but for Jira 10 it’s giving 403 not found error.
Can you please help me with this. If any other detail u want, please reply on thread will give that detail as well