Blog

The version 1.2.3 of the Project Documentation Macros for Confluence has been released today!

We fixed an issue with the Definition List Macro which only allowed valid XML as content in previous versions. Now it is possible to add for instance images to the table so that these are rendered as definition terms and definition data in HTML definition lists.

Install the free Project Documentation Macros via the Atlassian Marketplace!


Also available for the projectdoc Toolbox!

 

Note for users of the projectdoc Toolbox for Confluence: This issue is also fixed with version 2.6.1.

The projectdoc Toolbox provides the free macros and many more to support teams creating and maintaining their technical documentation in Confluence.

The toolbox provides macros for 

More information is found in the projectdoc Toolbox Online Manual!


projectdoc Toolbox 2.6

Today we released version 2.6.1 of the projectdoc Toolbox for Confluence!

projectdoc supports agile teams creating and maintaining project documentation. It provides templates and tools to improve the collaboration of team members.

This release provides new features, improvements for existing features and bugfixes.

For more information, please refer to the release notes.

Release Notes - projectdoc Toolbox - Version 2.6.0

New Feature

  • [PDAC-993] - Service Detecting Duplicate Index Documents
  • [PDAC-994] - Auto Increment Feature
  • [PDAC-995] - space-local in User Space broken

Improvement

Bug

  • [PDAC-990] - Space Wizard fails after deactivating Doctype Add-on
  • [PDAC-991] - Fix Categories Key in Blank Doctype Template
  • [PDAC-996] - Space-local Blueprints not taken into account

Release Notes - projectdoc Toolbox - Version 2.6.1

Bug

  • [PDAC-997] - Allow HTML Elements for Definition List Data

Recently we have been made aware that the Web API extension for the projectdoc Toolbox for Confluence does constantly respond with HTTP 404 response codes. That has been surprising to us since we use our REST-based API frequently and also the projectdoc Toolbox itself heavily takes advantage of an internal REST API.

So we opened the REST API Browser which we have installed on our Confluence instance to easily interact with Confluence REST APIs, including our own. The REST Browser supports using the APIs by presenting documentation for the service and its parameters. This is of great help to explore APIs as far as the developers have provided some documentation.

 

The issue has been resolved! See Resolved: REST API Browser showing API documentation again! for details!


Path Problem with the REST API Browser

We had a look at our APIs and indeed, as soon as we launched any REST call, the response is always 404.

We realized that the browser shows a wrong path to our REST services. Instead of projectdoc/1/document it shows projectdoc/1/projectdoc/1/document, having the first two path elements duplicated.

REST API with Path Problems on Confluence 6.14.x

This is the case with REST API Browser version 3.2.2 and Confluence 6.14.1. Since the REST API Browser is not officially supporting the latest Confluence version (at the time of writing), we checked with the latest supported version 6.13.2. The result was the same. But the same REST API Browser on Confluence 5.10.9 did not show this issue. Also 6.12.1, 6.11.1, 6.10.2 and probably all previous version of Confluence 6.x do work and show the correct paths:

REST API without Path Problems on Confluence 5.10.x

The problem is also shown for apps provided by Confluence, like the REST API of the AppLinks OAuth plugin.

REST API of Atlassian Plugin with Path Problems on Confluence 6.14.x

The Cause

Digging a little deeper we realized that the problem went away for our app when we removed the package element from our configuration with the REST plugin module in the atlassian-plugin.xml.

This is the original configuration:

With package Element
  <rest name="projectdoc Web-API" 
        key="projectdocWebAPI" 
        path="/projectdoc"
        version="1">
    <description>Web access to projectdoc resources.</description>
    <package>de.smartics.projectdoc.extension.webapi</package>
  </rest>

Now with the package element removed, the paths are rendered correctly and calling the REST API does no longer return HTTP 404 responses.

Without package Element
  <rest name="projectdoc Web-API" 
        key="projectdocWebAPI" 
        path="/projectdoc" 
        version="1">
    <description>Web access to projectdoc resources.</description>
  </rest>

Checking with the AppLinks OAuth plugin our hypothesis seems to be supported.

Configuration of the AppLinks OAuth plugin
<rest key="applinksRestV2OAuth" 
      path="/applinks-oauth" 
      version="1.0" 
      description=
        "Provides REST endpoints for interacting with the AppLinks OAuth plugin">
  <package>com.atlassian.applinks.oauth.rest</package>
</rest>

Plugins that do not suffer from this all have no package element in their configuration.

Documentation for the package Element

 

The package from which to start scanning for resources and providers. Can be specified multiple times. Defaults to scanning the whole plugin.

Atlassian Developer Website. REST plugin module

The Workaround

Removing the package element from the REST configuration in the atlassian-plugin.xml makes the problem go away.

The downside of this workaround is that the browser would no longer render the documentation for the REST services.

Note that this is only experienced if you use the REST API Browser on versions of Confluence that actually produce this problem. On any Confluence version using an alternative REST client, for instance curl, does not produce this issue.

Ticket

We filed a bug report to Atlassian and they could reproduce the problem. Atlassian created a ticket CONFSERVER-57887 to track this issue.

You may would like to vote for it in case you are using the REST API Browser frequently with REST APIs that show this issue.

Resources

More information on how to use the Web API Extension for the projectdoc Toolbox with curl.

REST Login to Confluence with cURL
To access Confluence via its REST API with cURL you typically need to authenticate. Learn how to login with cURL and avoid some common security pitfalls.
Accessing projectdoc Space Properties with cURL
Learn how to access projectdoc space properties via REST API with cURL.
Accessing projectdoc Properties with cURL
Learn how to access projectdoc properties via REST API with cURL.

Atlassian ConfluenceWith the projectdoc Toolbox we take advantage of space blueprints. Space blueprints allow to define templates for spaces in Confluence. This makes it very easy to create spaces of a given type that have the same basic structure. Spaces with similar structures are easier to use, since team members already know where to look for certain kinds of information.

Every doctype add-on we publish is based on the projectdoc Toolbox and provides at least one space blueprint. During the development of these add-ons we often deploy new versions and test them for usability. We also check if the doctypes and space blueprints are actually used, and if not, remove them before we publish them.

Failing Space Wizard Dialog

Currently we encountered a problem where Confluence did no longer present the list of space wizards, but simply displayed an error in the dialog window.

Error message after opening the Space Wizard Dialog

The log file shows this:

[INFO]  ..... WARN [http-nio-1990-exec-7] 
         [confluence.impl.hibernate.ConfluenceHibernateTransactionManager] 
         doRollback Performing rollback. Transactions:
[INFO]  ->[PluginReadWriteTx]: PROPAGATION_REQUIRED,ISOLATION_DEFAULT (Session #.....)
[INFO]  – referer: ...../confluence/pages/viewpage.action?spaceKey=PP&title=x | 
        url: /confluence/rest/create-dialog/1.0/space-blueprint/dialog/web-items | 
        traceId: ..... | userName: .....

The Cause

If you encounter this message it is very likely that you have deactivated an add-on that contains a space blueprint.

If it is only deactivated, simply activating it again will make the problem go away.

Reproducing the Problem

To reproduce the problem follow these steps:

  1. Have an add-on installed that provides at least on space blueprint
  2. Deactivate this add-on
  3. Try to create a new space with the space wizard (Spaces -> Create Space)

Instead of having a dialog top select a space wizard, you see the error message in the view and log file.

Narrowing the Problem

After some further investigation we discovered that the problem is independent of the used database. With MySQL, PostgreSQL, and H2 the problem could be reconstructed.

We found that the problem first occurred with version 6.11.2 of Confluence, while in version 6.11.1 and before everything was fine.

At first we checked if the problem was only related to the projectdoc Toolbox, since 6.11.2 has been around for some time. We thought it very unlikely that such a problem would have gone unnoticed by the community. In fact the problem is reproducible with every space blueprint.

Workaround

To work around the problem, the admin user needs to fix issues on the database level. On the Atlassian Community the post Confluence add Space fails - An unknown server error has occurred provided a solution to a similar problem that also fixes the issue we have encountered.

In fact, dropping the AO_54C900_SPACE_BLUEPRINT_AO after server stop, removing the plugin cache directories, and restarting the server also fixes the problem: new spaces can again be created.

Be careful! Backup your data!

 

Please make sure to backup your system and save any of your data before you try to fix this issue!

What worked on our system to fix the problem might harm you installation.

There is also a knowledge base article Creating new page or space loads forever that seems related. But the described problem in this article is that the process for displaying the space wizard dialog loads forever, whereas in our case the process terminates and shows an error message.

Ticket

We filed a bug report to Atlassian and they could reproduce the problem. Atlassian created a ticket CONFSERVER-57866 to track this issue. You may would like to vote for it in case you are dealing with space wizards frequently and happen to deactivate or deinstall them.

We released updates for the Core Doctypes and the Software Development Doctypes today. These add-ons for the projectdoc Toolbox provide document types commonly used and specific for documenting software architectures and software systems in Confluence.

This releases provide minor updates to the RoleProperty, and Code doctypes.

Please checkout the macros and doctypes provided by the projectdoc Toolbox. There are also a number of extensions to make accessing information on remote services and information on Confluence via a REST API much easier.


Release notes for Core Doctypes, Version 11.1.2

Bug

  • [PDCORED-194] - Role Template shows wrong Key to Audience in Documents Section

Improvement

  • [PDCORED-195] - List Tours and Topics in Role's Documentation Section

Release notes for Software Development Doctypes, Version 9.0.1

Bug

Improvement

Today we released an update to the arc42 Doctype Add-on for the projectdoc Toolbox.

This update is important for the English version of the template since it fixes some inconsistencies in the section titles compared with the original arc42 Template. No the titles of the Golden Master are used.

We also fixed some typos and copy-paste bugs in the English and the German versions.

The latest version of the arc42 Doctype Add-on is available on the Atlassian Marketplace.