I have done a lot of work with PayPal's api over the years, and one of the biggest frustrations I had for a long time was that their ColdFusion support was limited. In the more recent versions of their API they have provided the ColdFusion development community with a CFC that interfaces with their Java API.

Then, when they dropped the requirement for a client-side .P12 certificate to be passed with each request as the only way to authenticate against their api, and added the option to use a signature string instead, they got close to a useful solution for the average CF developer.

The only thing that still causes many ColdFusion people to cringe and pull their hair out, is the fact that the PayPal.cfc returns a java object, which is something most CF developers don't deal with on a regular basis (if at all).

Fortunately for you, I have already taken the time to go through each of the API calls, and through the use of many cfdumps, I found every piece of information available in each of the responses, and then I put them into nice CF developer friendly ColdFusion structures.

Object Instantiation Exception.An exception occurred when instantiating a Java object. The class must not be an interface or an abstract class. Error: ''.

The error occurred in D:\Inetpub\livewebsystems\shop\paypal\paypal.cfc: line 27Called from D:\Inetpub\livewebsystems\shop\paypal\paypal.cfc: line 16Called from D:\Inetpub\livewebsystems\shop\paypal\paypal.cfc: line 1Called from D:\Inetpub\livewebsystems\shop\paypal\index.cfm: line 5Called from D:\Inetpub\livewebsystems\shop\paypal\paypal.cfc: line 27Called from D:\Inetpub\livewebsystems\shop\paypal\paypal.cfc: line 16Called from D:\Inetpub\livewebsystems\shop\paypal\paypal.cfc: line 1Called from D:\Inetpub\livewebsystems\shop\paypal\index.cfm: line 5

2 -Copy a subset of the Java SDK JAR files to a location accessible by the ColdFusionapplication server. The JAR files are in SDK_root\lib and their exact names are asfollows: bcmail-jdk14-128.jar bcprov-jdk14-128.jar paypal_base.jar paypal_stubs.jar sax2.jar xerces.jar xpp3-1.1.3.4d_b4_min.jar xstream.jar-1.1.3.jar

3 -With the ColdFusion Application Server Administrator, add the absolute path of thelocation you determined in Step 2 to the Java and JVM CLASSPATH environment variable.

I have not worked it in several months, but I just downloaded the latest zip of the java sdk and it does look like the files are different. Whenever I have some free time I will look into what it will take to update my CFC.

I have been working on a really big Flex project lately, and haven't really had any free time for blogging, and I haven't done a paypal integration for a long time, so I'm not yet current with the new version of the SDK.