I have installed AEM Forms 6.4 on Windows Server 2012 R2 using partial turn-key installation with SQL Server 2012 database. First time installation and configuration completed successfully. But if I subsequently want to change my DB settings and run Configuration Manager, it fails on the following step:
In the Configuration Manager log, I found the following error entry:
Caused by: com.adobe.livecycle.lcm.core.LCMException[ALC-LCM-000-000]: Replacement failed for '>jdbc:sqlserver://localhost:1433;DatabaseName=adobe<' with '>jdbc:sqlserver://[my_sql_hostname]:1433;DatabaseName=[my_db_name]<'
Well obviously lc_turnkey.xml does not contain the string jdbc:sqlserver://localhost:1433;DatabaseName=adobe anymore, hence I found the following workaround:
After the initial installation and BEFORE Configuration Manager runs for the first time, save somewhere the original version of lc_turnkey.xml.
On subsequent runs of Configuration Manager, delete lc_turnkey.xml and replace it with the original version before clicking "Configure" on the above screen.
My questions is - is this a known issue that has a fix?
Yep - I have found exactly the same issue as you. There isn't a fix for this as far as I am aware and the steps you have done is exactly the same steps as I used. I don't ever remember having this issue until the release of AEM Forms 6.3.
This is also the case if you ever want to use Integrated Authentication with SQL Server as you have to either get the DBAs to set up User Auth (which they almost never want to do) or modify the lc_turnkey.xml file before the server starts further down the config. You just have to make sure to never click the Test Database Connection button and just click Next at that screen, because it will always fail.
There is a check performed on the lc_turnkey.xml file to ensure that it has not been modified, and this check fails even though the file has not yet been changed.
You will need to exit the Configuration Manager and complete the following steps:
Replace the two sqljdbc4.jar files found in [installdir]\jboss\modules\system\layers\base\com\microsoft\main and in [installdir]\lib\db\mssql with the sqljdbc4.jar found in the third_party\db\mssql directory expanded from your original installer package downloaded from Adobe.
The correct file is 639KB.
Edit the lc_turnkey.xml file found in [installdir]\jboss\standalone\configuration to include the proper username and password for the database you have configured in SQL Server. There are three sets of username and password that are close together, and you can find the first by searching for "org.picketbox.datasource"
The password is an encrypted value, but if you have set your database password as "password", you can use: "5dfc52b51bd35553df8592078de921bc"
Now you can run the Configuration Manager again, and once it appears you should check the 'Display Menu' box you see at the bottom.
From the menus that have now appeared at the top, choose 'Configurations' and then choose 'Reset to Defaults'. This has the effect of bypassing the app server configuration steps.
You should now be able to complete all remaining steps in the Configuration Manager.
kjaeggin Thank you very much for detailed instructions, but this does not seem to be doing what I want to achieve. If I understood correctly, you are suggesting that I enter DB configuration to lc_turnkey.xml manually, and then make Configuration Manager skip DB configuration, so that I can reach subsequent configuration steps.
I can currently achieve the same through the workaround I described in my question. What I'm asking is if there's a proper fix that would allow me to run Configuration Manager from start to end multiple times and not use any workarounds.