Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

This add-on cannot be installed without the Atlassian Connect framework

Savo Balac February 11, 2014

Hi,

I'm running a local confluence application, started by running the SDK as per the instructions in https://developer.atlassian.com/static/connect/docs/developing/developing-locally.html

i.e.

atlas-run-standalone --product confluence --version 5.4-OD-5 --bundled-plugins com.atlassian.plugins:atlassian-connect-plugin:1.0-m31,com.atlassian.jwt:jwt-plugin:1.0-m8,com.atlassian.bundles:json-schema-validator-atlassian-bundle:1.0-m0 --jvmargs -Datlassian.upm.on.demand=true

I've written a Play! application using the AC Play connector ac-play-java_2.10 (again as instructed).

When I upload the add-on, I get the error message:

"This add-on cannot be installed without the Atlassian Connect framework. See our documentation for more information."

But the link above states this:

"We recommend you start the host application using the SDK command shown here. Atlassian Connect is only present in Atlassian OnDemand and not yet included with Download distributions of our software. Therefore certain components, including the Atlassian Connect Framework itself, are included here in the startup command."


So what am I to do?

Regards, Sav.

3 answers

1 accepted

Comments for this post are closed

Community moderators have prevented the ability to post new answers.

Post a new question

0 votes
Answer accepted
Savo Balac February 17, 2014

I discovered that starting atlas-run-standalone and then the Play! app and then experimenting with atlassian-connect.json allowed the plugin to install automatically. The problem I found was that there aren't enough examples of atlassian-connect.json to get started.

0 votes
seb
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
February 11, 2014

It's also worth looking at the confluence logs which are in the amps-standalone/confluence/ directory for any clues!

Savo Balac February 11, 2014

Hi Seb,

I found a log file in \atlassian-plugins-sdk\bin\amps-standalone\target called confluence-LATEST.log, which contained the error message:

2014-02-12 13:37:57,399 ERROR [UpmAsynchronousTaskManager:thread-3] [atlassian.upm.manager.PluginInstaller] execute Failed to install plugin 'atlassian-connect.json': This add-on cannot be installed without the Atlassian Connect framework. See our <a href="https://confluence.atlassian.com/x/IYHLEg" target="_blank">documentation</a> for more information.
-- referer: http://localhost:1990/confluence/plugins/servlet/upm| url: /confluence/rest/plugins/1.0/installed-marketplace | userName: admin
2014-02-12 13:48:36,035 WARN [pool-1-thread-1] [ehcache.pool.impl.DefaultSizeOfEngine] sizeOf The configured limit of 1,000 object references was reached while attempting to calculate the size of the object graph. This can be avoided by adding stop points with @IgnoreSizeOf annotations. Since the CacheManger or Cache <sizeOfPolicy> elements maxDepthExceededBehavior is set to "abort", the sizing operation has stopped and the reported cache size is not accurate. If performance degradation is NOT an issue at the configured limit, raise the limit value using the CacheManager or Cache <sizeOfPolicy> elements maxDepth attribute. For more information, see the Ehcache configuration documentation.

I don't know what this means. What is a stop point and how do I add them. Where do I add @IgnoreSizeOf annotations. What is a CacheManager, where is it and how do I change it? I shouldn't have to deal with the internals of Atlassian products!

I'm a Java & Play! application developer. All I've been asked to do is this: when a user logs in to Confluence, call a method in a Play! application via HTTP passing in the user ID and IP address of the user.

Regards,

Sav.

seb
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
February 12, 2014

Sav - I have never seen that error before. It could be because you are running atlas-run-standalone from within the sdk directory. This is generally considered bad practice and you should add the sdk to your PATH (as Tim has mentioned above) and run the command from a separate workspace directory.

Savo Balac February 12, 2014

Thank you.

I now get error: Invalid anti-XSRF token provided. The valid token should be retrieved transparently, but you may want to perform a hard refresh in your browser and try again before creating a support issue.

According to the Jira documentation: https://confluence.atlassian.com/display/JIRAKB/Unable+to+install+or+update+Add-ons+via+UPM+due+to+Invalid+anti-XSRF+token+provided

I need to install the plugin by a manual file upload. This expect a JAR, but I only have the atlassian-connect.json in my Play! application.

I'm lost and want to drop Atlassian products altogether.

Sav.

Savo Balac February 12, 2014

I converted the Play! app to a single JAR, but get:

Problem accessing add-on file at http://localhost:9000/geoip_2.10-1.0-SNAPSHOT-one-jar.jar..

Stack trace:

2014-02-13 10:22:51,963 ERROR [UpmAsynchronousTaskManager:thread-2] [rest.resources.install.InstallFromUriTask] download Error downloading plugin from http://localhost:9000/geoip_2.10-1.0-SNAPSHOT-one-jar.jar
-- referer: http://localhost:1990/confluence/plugins/servlet/upm| url: /confluence/rest/plugins/1.0/installed-marketplace | userName: admin

I can't upload a plugin and everything I read from Atlassian doesn't help. I don't know what to do...

seb
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
February 12, 2014

Hello Sav,

Developing an add-on with Atlassian Connect is not the same as the installable plugin jar with Atlassian Plugins. Connect add-ons are designed to run as a service and are "registered" with the Confluence/JIRA instance. This registration is done with a descriptor, atlassian-connect.json. This descriptor defines the integration points with which your service integrates with the host product.

If you are using the Atlassian Connect Play! framework then it will automatically facilitate the descriptor and authentication with the host product. It will also attempt to automatically install the add-on into an instance of JIRA or Confluence which is running locally on your machine. Please comprehensively read the README in the project.

You should also familiarise yourself with the Atlassian Connect documentation, in particular the introduction and getting started guides:

https://developer.atlassian.com/static/connect/docs/guides/introduction.html

https://developer.atlassian.com/static/connect/docs/guides/getting-started.html

0 votes
TimP
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
February 11, 2014

Hi Savo,

That error message should only occur if the Atlassian Connect framework plugin fails to start up properly when Confluence starts up. I've tried to reproduce locally using the command you ran but it starts up normally and I can install add-ons just fine.

If you run atlas-run-standalone in a directory where you have previously run an SDK command, it will start up a server using some of the artifacts from the previous invocation. This could possibly be the problem you're running into.

Can you try running the command again from a freshly created empty directory?

cheers,

Tim

Savo Balac February 11, 2014

Hi Tim,

I run atlas-run-standalone from the SDK that was downloaded, i.e from \atlassian-plugin-sdk\bin.

I don't know how I can run a .bat file from an empty directory. What's the directory I need to empty out?

Regards,

Sav.

TimP
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
February 11, 2014

Hi Savo,

If you installed the SDK using the Windows Installer, the atlas-run-standalone command should be on your PATH, so you can run the command from any directory.

If not, you may have to manually add the /bin directory from your SDK to your PATH environment variable before running the command.

cheers,

Tim

Savo Balac February 12, 2014

Hi Tim,

My path environment variable was set OK. You didn't answer the question though. What's the "freshly created empty directory" you mentioned in your first post? Do I need to delete the /target directory?

Regards,

Sav.

TimP
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
February 12, 2014

Hi Sav,

Please create a new directory somewhere outside of your SDK installation from which to run the start the standalone product. For example:

c:\> mkdir confluence-tmp

c:\> cd confluence-tmp

c:\confluence-tmp\> atlas-run-standalone --product confluence --version 5.4-OD-5 --bundled-plugins com.atlassian.plugins:atlassian-connect-plugin:1.0-m31,com.atlassian.jwt:jwt-plugin:1.0-m8,com.atlassian.bundles:json-schema-validator-atlassian-bundle:1.0-m0 --jvmargs -Datlassian.upm.on.demand=true

cheers,

Tim

TAGS
AUG Leaders

Atlassian Community Events