Troubleshooting: Users cannot commit document

Problem description

Users are able to click Edit Document and make their changes, but when they try to submit their changes, the following message appears:
Action failed due to server-side error.
For example:
Sample error message: User cannot commit document

This error can occur when public IDs have not been properly defined in your catalogs. To confirm that this is the problem:

  1. Open the GlassFish log file:
    %glassfish%/domains/cmsappserver/logs/server.log
    For example:
    C:\glassfish3\glassfish\domains\cmsappserver\logs\server.log
  2. Look for the logs that occurred around the date and time that the user experienced the problem. If you see a message similar for the following:
    Caused by: com.ixiasoft.cms.api.model.exception.CMSCatalogException: Your catalog is not configured correctly for item with public id =[ -//IXIA//DTD IXIA DITA Composite//EN ]
    
    Then one of your catalogs is missing a public ID. The error message specifies the public ID that is missing. For example, in the deployment above, you need to define the following public ID:
    -//IXIA//DTD IXIA DITA Composite//EN

Solution

To solve this issue:
  1. Open the TEXTML Administration view.
  2. Connect to your server and docbase.
  3. Navigate to the Repository/system/catalogs collection.
  4. Check out the catalog to which you need to add the public ID.
  5. Add the public ID definition to the catalog; for example, for the error above, you could add the following line to the catalog-dita-ixia.xml catalog:
    <public publicId="-//IXIA//DTD IXIA DITA Composite//EN" uri="IxiaDitabase.dtd"/>
  6. Save and check in the file.
  7. Restart the CMS Application Server.