AmazonSES API wrapper for Railo/ACF
As I alluded to this morning, I have been working on a wrapper API for the Amazon SES service. It is not yet completed, but it is functional enough to get you sending some emails through the gateway. Currently it will allow you to get a listing of emails addresses verified with Amazon Web Services, create a verification email so that you can verify your email address with AWS as well as actually sending an email through Amazon SES.
Integration with Railo (and presumably ACF) is straight forward. First, download the Java SDK for AWS. Extract the file and in the ./lib folder you will find the jar file we will need to move into your classpath for Railo/ACF. At the time of this writing the file is aws-java-sdk-1.1.8.jar. I generally use the Viviotech installer which places Railo in /opt/railo on Linux and I copied the SDK jar to /opt/railo/lib. Restart Railo so all the jars will be reloaded giving us access to the API. I do not have access to an ACF server so your mileage here may vary.
The server configuration done, now you just need to go to AWS and get your access key and secret key. These are required to authenticate your connection to Amazon and should be stored in the AwsCredentials.properties file. You obviously want to keep this file protected so I would suggest storing outside of your web root or create some rules on your web server to ensure no one can view the file. Once you have this setup it is time to send some emails!
Sending an email is extremely easy to do. First create a new instance of the amazonSES component and then invoke the sendMail method passing in the required parameters (from, to, subject and the message body). If you have not already verified your address with Amazon, the script will create a new verification email and send it to your email address and then throw an error letting you know you need to check your email for the verification. If you have already verified your email address it will just send the email out.
That is about all I have for tonight. As noted above, I have only tested this on Railo, I do not have an ACF box to verify against. It will probably need to be modified to handle multiple message recipients (I have not tested this yet). I plan on working on some new features this weekend if I have a little free time.
I have included a simple application you can use to test the installation. If you have any questions, problems or suggestions, please let me know.
Update: I have created a RIAForge project for the AmazonSES API wrapper.
Update 2: I have linked to the older version of the AWS API on my forum and you can download the file here if you are having issues.