Expand my Community achievements bar.

Dive into Adobe Summit 2024! Explore curated list of AEM sessions & labs, register, connect with experts, ask questions, engage, and share insights. Don't miss the excitement.

AEM Forms 6.4 on SQL Server 2017

Avatar

Level 2

I'm trying to install AEM Forms 6.4 on Windows Server 2012 R2 using partial turn-key installation. If I use SQL Server 2012 as the database, installation succeeds, but it fails on SQL Server 2017, though neither one is officially supported (documentation says I need to use SQL Server 2016). What's even more interesting is that if I install to SQL 2012, then detach the DB and attach it to SQL 2017, then change DNS to point SQL Server's hostname to the SQL 2017 IP address, then AEM Forms happily works with the database running on SQL 2017. So the problem seems to only exist during the installation, or, rather, configuration.

The issue happens on the following step in the Configuration Manager:

Image2.png

Most (though not all) jars fail to deploy. JBoss log shows database errors.

If my understanding is correct, this step saves jar files to the database. So my question is - what is so different between SQL 2012 and SQL 2017 in terms of writing data from a Java application, that it succeeds on one but fails on the other? Note that when I get to this screen, all database tables have already been created successfully by the Configuration Manager. That step works fine on both SQL servers.

Is there anything I can do to make deployment succeed on SQL 2017? E.g. I tried to use the latest JDBC driver mssql-jdbc-6.2.4.jre8.jar (AEM Forms 6.4 comes with mssql-jdbc-6.2.2.jre8.jar), but that made no difference.

Thank you

12 Replies

Avatar

Level 7

I have had issues with this step even using supported SQL Server database versions. Sometimes I have had to re-run CM multiple times to get the component Jars to deploy fully. Not sure I ever found a cure for it. There are some tweaks that you can try in the database connection string [1]

What I would be more concerned with is using an unsupported database version. While you might get it to work and install, It might be unknown what issues you will find further down the track that you wont get full support for.

The Forms team are always working on testing new versions of databases and application servers, so I would reach out to Support and see if they know of any tweaks to get 2017 working with Forms 6.4. Mayank Gandhi​ might be be able to chase this down for you

[1] Setting the Connection Properties | Microsoft Docs

Avatar

Level 2

DarrenBiz​ Thank you for detailed reply.

Mayank Gandhi would you be able to answer this please.

Avatar

Employee

This is the DB driver we support with 6.4:

Microsoft® SQL Server JDBC driver 6.2.1.0

sqljdbc6.jar

have you tried that one?

It's true that 6.4 currently only supports MS SQL 2016 as per this document at [1].

[1] Adobe Experience Manager Help | Supported Platforms for AEM Forms on JEE

I'll have to inquire within as to when MS SQL 2017 might be supported in an upcoming Service Pack or not.

Avatar

Employee Advisor

Hi Andrew,

The product is tested with third-party products thoroughly before it is released out and mentioned under the support matrix. While product continues to add support for new and latest version of other software and products, also the support for older version may be removed(Maybe the other product is an end of life). Now the issue/query that you have is not related to only the installation part,  there is a lot more once the product has been installed. The product is tested with the version listed in the supportability matrix and we never suggest to go with unlisted versions. You never know what issue you might run into while running an unsupported software or product.

But we are here to help!. I will have to check support for 2017 internally and confirm you back on this.

Avatar

Level 2

kjaeggin​, Mayank Gandhi Thank you for you replies. I will really appreciate if you can find out about official SQL 2017 support.

I'm curious though why the product depends so much on the SQL version. Here are SQL supported version by AEM Forms version, according to Adobe Experience Manager Help | Supported Platforms for AEM Forms on JEE:

6.2: 2012, 2014

6.3: 2012, 2014, 2016

6.4: 2016

We've been using LiveCycle ES for many years, and I've seen how it uses the database (AEM Forms seems to be the same). It uses only tables and indexes, only string, integer and binary data types (no GUIDs, dates etc.). What I'm trying to say is that the product seems to be using only the DB engine's basic functionality, and I'm surprised that what I expect to be simple CRUD queries from Java application, is so sensitive to the SQL version. What specific feature of SQL engine does the product use that has changed in SQL 2017?

Thank you,

Andrew

Avatar

Level 7

Same as Adobe, Microsoft drop official support for their products as time goes on so they have to be dropped from support by Adobe too. Adobe can't support a product that isn't supported by the vendor, even if it still works (although technically Adobe's support only extends to use of SQL Server with the AEM Forms use of the product).

There are always exceptions for support like I got support for an old version of Active Directory LDAP, when it was an AEM Forms issue. It does depend on the issue you are facing so its not always black and white when it comes to support, but is meant to be a general guide.

Microsoft also release new features and drivers for new SQL Server versions, so they need to be tested for compatibility before Adobe will support them. Even though it will most likely work, it still has to be tested and approved for official support and this takes time.

Avatar

Level 2

kjaeggin, Mayank Gandhi Any update regarding SQL 2017 support?

Also I have another question. I noticed that after I upgraded the database from LC ES 4 to AEM Forms 6.4, all new entries going to EDCAUDITENTITY table have sequencenumber column set to zero. Is that by design?

Avatar

Employee Advisor

Hi Andrew,

I am awaiting confirmation on the SQL 2017 support and for the other question EdcAuditEntity stores auditing event information for the rights management system like user, document, policy events. The table existed in previous versions as well.

Avatar

Level 2

Hi Mayank Gandhi, thank you for your reply.

Regarding the EDCAUDITENTITY table, yes I know what it's for, we export audit events from this table to our product database. My question is specifically about sequencenumber column. LC ES 4 was writing incrementing integers to it, but after I migrated the DB to AEM Forms, all new records have zero. This does not impact our exporting logic, but I was concerned that maybe something went wrong during the database upgrade process from LC to AEM Forms, which might impact how the product works. Or is this by design and AEM Forms is not using this column anymore?

Avatar

Employee Advisor

Hi Andrew,

It's fine I have checked few upgraded instance at my end and seem to be populating zero for me as well.

Avatar

Employee Advisor

Hey Andrew,

Apology, I missed updating you here that support of SQL 2017 is not on the road Map as of now.

Avatar

Level 2

Mayank Gandhi, thanks for the update. Though installation to SQL 2017 does not work, upgrading an existing LC ES 4 database that already runs on SQL 2017 does work. We will use this on dev machines.

In production we still run SQL 2012 which is also not officially supported, but I was able to both install to and use the product on SQL 2012.

While I do understand that you cannot officially confirm that the product will work properly on SQL 2012 or 2017, is there any document security related functionality that you know will NOT work? In my tests I could not find any. I can successfully deploy External Authorizer to AEM Forms, programmatically secure PDF documents with a policy that uses that External Authorizer, and then successfully view those documents.