Transcript www.cfug

4/28/2020 Theo Rushin, Jr.

[email protected]

Senior Web Application Developer World Singles and DoubleBlack Technologies 1

About Me

 Application Developer and Trainer Since ‘85  ColdFusion Developer Since ‘99  Flash Developer Since ’99  Flex Developer Since ‘05  Also work with SQL, JavaScript, HTML, and CSS  Currently working for WorldSingles - a subsidiary of NicheClick Media (http://nicheclick.com/index.html) 2 4/28/2020

What We Will Cover Today

      What is the ColdFusion Administrator API?

Using the CF Admin API Building the Flex 2 Interface Summary Learn More Q & A 4/28/2020 3

What is the ColdFusion Administrator API?

4/28/2020 4

What is it?

   It allows you to perform most ColdFusion MX administrator tasks programmatically.

In ColdFusion MX 6.x you could use the “undocumented” ServiceFactory to programmatically access ColdFusion’s administrator tasks.

In ColdFusion 7.x you can use the Administrator API, a set of CFCs that offer a formal and secure way of accessing that functionality.

5 4/28/2020

Why use it?

 You could give developers the ability to perform certain administrator tasks without having to give out the single CF Administrator password featured in ColdFusion 6.x – 7.x.

    Refresh Trusted Cache Maintain Datasources Refresh WebServices Shared Hosting  ColdFusion 8 is still in Beta (as of 7/10/2007) 6 4/28/2020

Where to find the CF Admin CFCs?

The ColdFusion Administrator API exists as a set of CFCs located in the [coldfusion_webroot]/CFIDE/adminapi/ directory.

7 4/28/2020

CF Admin API CFCs (cont.)

CFC Description

administrator.cfc

Contains basic Administrator functionality, including login, logout, the Migration Wizard, and the Setup Wizard. Base object for all other Administrator API CFCs.

base.cfc

datasource.cfc

Add, modify, and delete ColdFusion data sources.

debugging.cfc

eventgateway.cfc

extensions.cfc

mail.cfc

runtime.cfc

security.cfc

serverinstance.cfc

Manage debug settings.

Manage event gateways.

Manage custom tags, mappings, CFXs, applets, CORBA, and web services.

Manage ColdFusion mail settings.

Manage runtime settings for fonts, cache, charts, configuration, and other settings.

Manage passwords, RDS, and sandbox security.

Start, stop, and restart JRun servers. This CFC only works when running the multiserver configuration.

8 4/28/2020

What are the CF Admin Methods?

You may introspect the ColdFusion Administrator API cfc’s by entering http://[webserver]/CFIDE/adminapi/[apicfc].cfc in you browser’s address bar.

9 4/28/2020

CF Admin API Methods (cont.)

CFC Description

administrator.cfc

getAdminProperty, login, logout, setAdminProperty, etc.

base.cfc

isAdminUser, etc.

datasource.cfc

debugging.cfc

eventgateway.cfc

extensions.cfc

mail.cfc

runtime.cfc

security.cfc

serverinstance.cfc

deleteDatasource, getDatasources, setMSAccess, setMSSQL, verifyDsn, etc.

addDebugEvent, deleteIP, getDebugProperty, getIPList, setIP, getLogProperty, etc.

deleteGatewayInstance, deleteGatewayType, getGatewayInstances, etc.

deleteCFX, deleteCustomTagPath, getCFX, getCustomTagPaths, getMappings, etc.

getMailProperty, getMailServers, setMailServer, setMailProperty, etc.

clearTrustedCache, getCacheProperty, getRuntimeProperty, getScopeProperty, etc.

setUseRDSPassword, setUseAdminPassword, setEnableRDS, etc.

restartInstance, 4/28/2020 10

Using the CF Admin API

4/28/2020 11

Accessing a Component

 Accessing an object …  … using CFML  … using CFSCRIPT adminObj = createObject("component","cfide.adminapi.administrator"); 12 4/28/2020

Calling a Method

 Calling a method …  … using CFML  … using CFSCRIPT adminObj.login(“mycfadminpassword”); 4/28/2020 13

Demo – ColdFusion

Show a simple ColdFusion page that allows you to set your IP address for debugging.

14 4/28/2020

Building the Flex 2 Interface

4/28/2020 15

Calling your ColdFusion Component

 Use the RemoteObject service to invoke your ColdFusion cfc methods  The RemoteObject uses AMF (Action Message Format), a binary encoding format, over HTTP.

 AMF is faster and leaner than using a standard HTTP or WebService call.

16 4/28/2020

Calling your ColdFusion Component (cont.)

 RemoteObject service example;  17 4/28/2020

Working with the result data

 Most methods return simple data types.

 Some methods return more complex data types such as arrays.

 Your ColdFusion code should return more complex data types such as structures and arrays that can contain result data or error messages.

18 4/28/2020

Demo – Flex

Show a simple Flex 2 application that allows you to maintain various datasources.

19 4/28/2020

Summary

 Pros: Developers have access to most of the ColdFusion Administrator features through code.

 Cons: Developers have access to most of the ColdFusion Administrator features through code.

 Encapsulate your code using CFCs  Use ColdFusion Try/Catch blocks to capture any possible errors.

 Use Flex RemoteObject calls to access your components.

 It’s easy!!!

4/28/2020 20

Learn More

 Adobe Administrator API LiveDocs  http://livedocs.adobe.com/coldfusion/7/htmldocs/wwh elp/wwhimpl/common/html/wwhelp.htm?context=Col dFusion_Documentation&file=00001734.htm

 Adobe Flex 2 RemoteObject LiveDocs  http://livedocs.adobe.com/flex/2/langref/mx/rpc/remot ing/RemoteObject.html

 Moving data from ColdFusion CFCs to Flex 2 applications  http://www.adobe.com/devnet/flex/articles/helloworld.

html 21 4/28/2020

Q & A

 Email: [email protected]

 Blog: http://therush.wordpress.com/  Presentation materials: http://therush.wordpress.com/my-presentations/ 4/28/2020 22