Is it possible to develop application based on Confluence platform?

Hi all,

We want to develop a Portal application based on Confluence (so that our company internal users can interact with both Confluence and this application in a single page view of browser) with below features:

- the application has 5+ screens in which user can read / write data. Thus we need to define our own database tables

- the application reads data from LDAP

- the application wants to aggregate the list of Confluence pages / blogs that a user has subscribed

 

Questions:

- is it a good idea to implement the application in Confluence? Why and why not?

- if yes, then could you give me some guideline / documentation / sample codes for that? (I saw some sample codes for Confluence Macro, but it's simple for an application need)

 

Additional notes

- another direction of this problem is to build the application from scratch and use iframe to include that application into the Confluence. But it's not cost-effective to build from scratch and I heard that integration between application and Confluence also costs a lot.

- I did Google to find some guidelines, but it seems not valid to my need

2 answers

2 accepted

3 votes
Accepted answer

Confluence is a good platform for any size of customizations. A lot of huge add-ons based on Confluence API have many pages, complex logic, rich UI, etc.

Everything that you want to add to Confluence is a "module". New pages are "xwork" modules, REST services - REST modules, etc.
How to add a new "page module": https://developer.atlassian.com/confdev/confluence-plugin-guide/confluence-plugin-module-types/xwork-webwork-module

But it may be a real challenge to build Confluence add-on without Java development skills.

Hi @Domenico Manzo,

Thank you very much for the hints. 

Could you please give me some hints / guidelines about creating database tables in Confluence so that my application will read / write to that DB tables?

It seems like difficult to find this topic in the documentation. Many thanks!

2 votes
Accepted answer

@Khon Trieu You can create as many tables as you need. Confluence uses special ORM for new tables in DB called Active Objects

Here is a good start point https://developer.atlassian.com/docs/atlassian-platform-common-components/active-objects/getting-started-with-active-objects

Hi @Domenico Manzo,

Thank you for the inputs! I will check it out.

HI @Domenico Manzo,

One more question, is it possible to define a batchjob in Confluence? Any documentation for that? The Google result doesn't show any clue about it. Thank you!

Suggest an answer

Log in or Sign up to answer
Community showcase
Posted Monday in Confluence

Organizing your space just got easier - Page Tree Drag & Drop is here

Hi Community! I’m Elaine, Confluence Product Manager. You may have read my earlier post about page tree in space navigation sidebar. I'm excited to share another improvement that helps you organize ...

66 views 3 2
Join discussion

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you