• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers
Exit
0

ColdFusion 10: All services missing from Services dialog (except ColdFusion 10 Application Server)

Explorer ,
Mar 25, 2015 Mar 25, 2015

Copy link to clipboard

Copied

I'm receiving the following error when I try to add a DSN:

The ColdFusion ODBC Server service is not running or has not been installed

In trying to resolve that error, I discovered that other than ColdFusion 10 Application Server, there are literally no ColdFusion services listed -- running, stopped, or otherwise.

1: Is this normal?

2: How do I install, start or register those services? Clearly they're needed.

Views

1.8K

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Employee ,
Mar 25, 2015 Mar 25, 2015

Copy link to clipboard

Copied

Hi Eric,

You need the ODBC service installed, in order to use the Datasources. Save the below code in a cfm page and run this. It will create the ODBC services.

<cfscript>

  //login using admin 

  //createObject("component","cfide.adminapi.administrator").login("administrator_password");

  createObject("component","cfide.adminapi.administrator").login("admin");

  //instantiate datasource object

  myObj = createObject("component","cfide.adminapi.datasource");

</cfscript>

 

TO Install ODBC Services:

<cfscript> 

         writeOutput("Installing ODBC Services...<br>"); 

         returnValue = myObj.installODBCservice(); 

         writeOutput("ODBC Services installed"); 

</cfscript>

Regards,

Anit Kumar

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Mar 25, 2015 Mar 25, 2015

Copy link to clipboard

Copied

Anit, thanks -- this code errors out.

1: Is that one page, or two? (If I run it as a single page, it errors out.)

2: Do you have any insight as to why the services weren't instantiated on install?

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Employee ,
Mar 25, 2015 Mar 25, 2015

Copy link to clipboard

Copied

This is a single page code. Remember to change the "admin" to your "ColdFusion Administrator Password". It will work.

<cfscript>

  //login using admin

  //createObject("component","cfide.adminapi.administrator").login("administrator_password" );

  createObject("component","cfide.adminapi.administrator").login("admin");

  //instantiate datasource object

  myObj = createObject("component","cfide.adminapi.datasource");

</cfscript>

TO Install ODBC Services:

<cfscript>

        writeOutput("Installing ODBC Services...<br>");

        returnValue = myObj.installODBCservice();

        writeOutput("ODBC Services installed");

</cfscript>

You may have to check the install logs for the same.

ERIC SCOLES wrote:

Do you have any insight as to why the services weren't instantiated on install?

Regards,

Anit Kumar

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Mar 25, 2015 Mar 25, 2015

Copy link to clipboard

Copied

Still erroring out. Is there any special context within which I need to run this?

Install logs...heh....this server was set up about 3 years ago, which is 2 years before I had this job.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Mar 25, 2015 Mar 25, 2015

Copy link to clipboard

Copied

Anit -- it looks like this line of code won't run:

createObject("component","cfide.adminapi.administrator").login("password");

I encapsulated it in a try-catch structure and all I got was "This page is temporarily unavailable, ...."

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Employee ,
Mar 25, 2015 Mar 25, 2015

Copy link to clipboard

Copied

Can you ensure that, the ColdFusion service is running?

If still it doesn't work, then please try the following steps:-

  1. Navigate to adminconfig.xml at C:\ColdFusion10\cfusion\lib\ and open it with text editor (say notepad).
  2. Change the value from “false” to “true” in <runmigrationwizard>false</runmigrationwizard> and <odbc>false</odbc>.
  3. Save the file and restart ColdFusion Service.
  4. After restarting the service, you will get the migration wizard. Follow the onscreen wizard to continue.

Regards,

Anit Kumar

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Mar 25, 2015 Mar 25, 2015

Copy link to clipboard

Copied

This is a production webserver, with other CF web applications running on it. So yes, I can be sure the ColdFusion service is running.

The Cold Fusion Administrator ran through a single screen setup that afforded no options -- I still see no other services listed in the Windows Services dialog.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Employee ,
Mar 25, 2015 Mar 25, 2015

Copy link to clipboard

Copied

It wouldn't give you any explicit options to install ODBC services. It would be handled internally by ColdFusion. Just curios to know, if the ColdFusion Application service was restarted after making changes.

Is the value again set to <odbc>false</odbc>?

Regards,

Anit Kumar

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Mar 25, 2015 Mar 25, 2015

Copy link to clipboard

Copied

runmigrationwizard is set to 'false'

odbc is set to 'true'

I restarted the ColdFusion service again to see if it would load the ODBC services, and it did not.

I also restarted the Services dialog to make sure it wasn't just showing me a stale services listing.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Mar 25, 2015 Mar 25, 2015

Copy link to clipboard

Copied

Anit said: “Hi Eric, You need the ODBC service installed, in order to use the Datasources.”

Well, to be clear, one does not really “need the ODBC service” to “use” a datasource unless one is adding an ODBC datasource, of course. If you’re using any of the other datasource types (like SQL Server, MySQL, and so on) one does NOT need ODBC installed. I do realize that Eric is saying he got this error in trying to “add a DSN” and so we can presume (and Anit’s comment did) that he must have been adding an ODBC DSN.

But I say the above in case someone else reads this thread and might read more into Anit’s comment than he really meant. ODBC services are optional at install of CF and needed only if one is using an ODBC DSN (sadly, the interface of the installer doesn’t make that clear, so many add it even though they don’t need it).

And indeed, some use ODBC datasources even to connect to DBs like SQL Server, simply because they’ve been “doing it that way” going back to before CF6 when JDBC datasources were added and should have been the default for all going forward unless specifically using ODBC datasources.

(Along those lines, I’ve wondered myself if the Access datasource type in CF6 and above even itself needs ODBC. I think it’s using a JDBC-to-ODBC bridge, just as there is a datasource type for that specifically. Does anyone know if one needs the ODBC service for either of those? It’s not obvious to me, but I’ve just never tested it.)

So with all that said, Eric, do you really need to use an ODBC datasource?

/charlie


/Charlie (troubleshooter, carehart.org)

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Employee ,
Mar 25, 2015 Mar 25, 2015

Copy link to clipboard

Copied

You are correct Charlie. You really don't need ODBC service, if you are using other datasource types (like SQL Server, MySQL etc) . My response was, more specific towards Eric's query and scenario. But readers, Charlie explained the ODBC stuff, in pretty detail. So, do go through his thoughts.

Regards,

Anit Kumar

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Mar 25, 2015 Mar 25, 2015

Copy link to clipboard

Copied

I need to access an MS Access database. So, yes, I do.

The whole error is as follows:

The ColdFusion ODBC Server service is not running or has not been installed. You may also use the "MS Access with Unicode" driver to connect to MS Access datasources.

There are lots of pages linking to slight variations on ways to deal with that issue, but they all assume the ODBC services are installed and running.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Mar 25, 2015 Mar 25, 2015

Copy link to clipboard

Copied

Eric, I realize your first focus may be to sort out the issue of the missing services with Anit, and getting the ODBC one back in. (That said, you’ve not indicated whether you’d tried to use the sc command, but maybe you’re hoping for a more automated solution.)

But back to this question of whether you need the ODBC service at all, it looks like this message is saying that you would NOT need the ODBC service if you used the “MS Access with Unicode” driver. Had you considered that? Again, I realize you may be reluctant to try, not knowing what differences there may be.

I just am asking for the sake of all following this thread so we know what you are seeing the options offered, and whether you are opting not to try them (which again, I’d understand, for now). Just do keep them in mind in case you end up stuck and don’t want to resort to re-installing CF.

At a minimum, though, I’d think you’d want to get that CF service back int ehre, using the SC create command like was shown specifically in Anit’s blog entry.

As always, just trying to help.

/charlie


/Charlie (troubleshooter, carehart.org)

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Mar 25, 2015 Mar 25, 2015

Copy link to clipboard

Copied

Charlie --

It's a complex issue. This is actually very far from my first focus. I started out working the MS Access angle. CF 10 is now essentially incompatible with MS Access on 64 bit servers, unless you engage workarounds that involve installing Microsoft's Access Database Engine. I've tried those. They didn't work.

There's one more workaround that looks promising, but it implicitly requires that the ODBC services be installed. So that's why I'm here.

The original cause was failure of CF8 to cope with the new, longer certificate keys. That was causing a redirect loop when we tried to authenticate via CAS. We decided to move these production applications to a new server; we did not know at the time of that decision that CF10 no longer supported Access on a 64bit OS.

My next option, if I can't get a DSN working with Access on this server is to hack in a CAS authentication layer using PHPCAS (which is capable of accommodating the longer keys on the original server). I am very much not looking forward to this since my PHP is rusty and this provides its own risks of failure.

All of this comes with a deadline of COB tomorrow. I've been working on this from different angles since Thursday. So you can see this is not a first focus -- it's just the latest in a long series of hurdles.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Employee ,
Mar 25, 2015 Mar 25, 2015

Copy link to clipboard

Copied

Eric,

Can you try another workaround, mentioned at How to create Service for ColdFusion | ColdFusion Solution.

For "ColdFusion 10 ODBC Agent" the binPath is:

\ColdFusion10\cfusion\db\slserver54\bin\swagent.exe

&

For "ColdFusion 10 ODBC Server" the binPath is:

\ColdFusion10\cfusion\db\slserver54\bin\swstrtr.exe

Regards,

Anit Kumar

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Mar 25, 2015 Mar 25, 2015

Copy link to clipboard

Copied

Charlie -- I'm sorry if I came off as short, it wasn't my intention. It's been a long several days.

Anit -- interesting...when you say in that tip to append the name of the instance, you're just basically using it as a keyword to distinguish them in the list, right?

It seemed to work, once I realized that the spaces between after the equal signs weren't copy-paste artifacts!

It hasn't worked a miracle yet, but now that I have this there are a few more things to try. Thank you!

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Mar 25, 2015 Mar 25, 2015

Copy link to clipboard

Copied

Understood, Eric. I know how tense things can be when you’re under pressure.

And someone like me trying to help may seem to be presenting more options than answers. But since I never know where people stand, I try to give them multiple things to consider to get to their solution. I spend my day doing CF server troubleshooting for a living, so I see a lot of things and connect a lot of dots that may not come readily to folks who focus more either on development or more general sysadmin tasks.

To that point of my bringing perhaps too many options in my replies, I’ll note that I had proposed Anit’s blog entry a couple of times earlier in the thread to get you to be able to create the services (what I thought was the “first focus” of the thread). It seems he didn’t notice either, as he then later offered it.

At least then you saw it and have gotten further down the field toward a solution. That was my main goal.

/charlie


/Charlie (troubleshooter, carehart.org)

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Mar 25, 2015 Mar 25, 2015

Copy link to clipboard

Copied

Anit -- Should I be able to start the services? They appear in the services dialog, but if I try to start them I immediately get an error message in the form "Windows could not start the ColdFusion 10 ODBC Server Service on Local Computer. Error 1053: The service did not respond to the start or control request in a timely fashion."

The dialog pops up immediately, so it it's timing out it's got a timeout value that's hella short.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Mar 25, 2015 Mar 25, 2015

Copy link to clipboard

Copied

tried to use this tip to establish an ODBC socket connection:

Creating MS ACCESS 2007 Database [ .ACCDB Extension ] DATASOURCE with ColdFusion 9

... which let me to this error:

Error accessing available odbc datasources. - Cannot open HKEY_LOCAL_MACHINESOFTWAREODBCODBC.INIODBC Data Sources: Windows error 0 occurred.The operation completed successfully.

The ColdFusion ODBC Server service is not running or has not been installed.

The datasource is not created.

Reporting this mostly for the second error, which seems to indicate that CF is not able to start the service automatically.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Mar 25, 2015 Mar 25, 2015

Copy link to clipboard

Copied

Eric, about all these hassles, I know you said you need all this solved by COB tomorrow. In case it may be some time before Anit may help with this, I have a question for you: Have you considered just reinstalling CF10?

You could save off your CF admin settings using the “ColdFusion archive” feature if on CF Enterprise, or by copying off the neo-*.xml files in the \cfusion\lib folder and restoring them after reinstalling CF10, so you’d not likely lose anything there. To be save, you could/should copy the whole cf10 directory before uninstalling, so that if anything else is needed (like files in the customtags folder, or jvm.config settings, or web server config settings in \config\wsconfig), you could easily still access them.

I realize your bigger problem is why the services disappeared, but now that you’re focused just on recreating them, it may be most effective to just reinstall, which should then put them back in order.

Even so, I realize that reinstalling is a dicey proposition, especially for a prod server. I suspect you can’t recreate this problem on any other server. I’ll say that if you get in a pinch, there are folks (in addition to possible Adobe support) who could help you deal with getting CF installed and configured as before if you hit a snag. I keep a list of such folks (including myself) in a category of my cf411.com site, specifically cf411.com/cfconsult.

Hope that’s helpful.

/charlie


/Charlie (troubleshooter, carehart.org)

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Mar 26, 2015 Mar 26, 2015

Copy link to clipboard

Copied

charlie, thanks for the suggestions on how to back up the server. We could probably accomplish something similar by taking a snapshot of the server, but this is a little less brute-force.

I've had several reasons why I didn't want to reinstall. First, it would be a lot of effort for the small chance that it would work. I know that CF10 does not natively support Access on 64bit hardware, so simply reinstalling would do nothing but make the services available -- I don't know that I'd be able to actually use them. (There's lots of evidence on the net suggesting that they might not work.)

Second, it's a complicated environment. There are at least two frameworks running on this server that I'm aware of, and there are database update scripts that would be disastrous if they failed, and one of which will cause problems on our main website if it doesn't run hourly. All of those things would have to be tested. It would make more sense to start with a new, clean server. I'm actually not sure we have the capacity to mount a 32bit server in our environment. Even that we're looking at most of a day.

Frankly it would take us less time to resurrect the application by replacing the ColdFusion CAS layer with a PHP CAS layer. It's a frankenapp at that point, but in principle at least it could work.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Mar 26, 2015 Mar 26, 2015

Copy link to clipboard

Copied

Sure, just wanted to propose the option.

As for CF 64bit supporting Access, it is indeed possible and should work. And though yes, not technically “supported” by Adobe, there is indeed a blog entry from Adobe on the topic, showing the steps (which I know many have used, whether found there or on other blogs, just fine): http://blogs.coldfusion.com/post.cfm/coldfusion-10-64bit-and-msaccess

Are you saying you have tried those steps and things did not work (before all this trouble arose)? Again, just trying to help you consider alternatives.

/charlie


/Charlie (troubleshooter, carehart.org)

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Employee ,
Mar 26, 2015 Mar 26, 2015

Copy link to clipboard

Copied

Hey Charlie,

Thanks for proposing my blog as a first hand suggestion. Appreciated .

I mentioned that again, so that, I can draw Eric's attention and then talk about the relevance here.

Hi Eric,

Before reinstalling, I would like to put some more efforts to get it working. AFA the error is concerned, it could be due to Permissions as well. Could you let me know if you are using the "Local System" account or Service account? Further, Is CF also running under same account.

Error accessing available odbc datasources. - Cannot open HKEY_LOCAL_MACHINESOFTWAREODBCODBC.INIODBC Data Sources: Windows error 0 occurred.The operation completed successfully.

The ColdFusion ODBC Server service is not running or has not been installed.

Regards,

Anit Kumar

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Mar 26, 2015 Mar 26, 2015

Copy link to clipboard

Copied

LATEST

Anit, it looked like the services were using the local system account. I'll double check that, but it will need to be later -- I've shifted gears to making it work on a server that I know can connect to Access (by patching in PHP to handle the CAS authentication), and I need to focus on that for the next day or so.

We do need to fix this application longer term because the server I'm getting it to work on is scheduled for retirement in June.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Resources
Documentation