In my last blog, I mentioned my tests with the Stax.net cloud as hosting opportunity for ESME. Well, after fighting various issues dealing with proxies and request timeouts, I finally got ESME installed at Stax, then logged in via OpenID and posted my first cloud-based ESME message.
I really think the Stax environment is great once you get the hang of it.
To get ESME working, I used the sample application from Stax and then copied the files from the ESME war file from the Google Code site. I copied all the esme files into the “webapp” directory and then did a “stax deploy” command to load it all up into the Stax system. I had to make some adjustments to the ant build file for the Stax deployment, because I have a limitation on the size of files that I can send via HTTP ( Therefore, the source code currently available in Stax is missing all the Jar files.) Besides that problem, everything worked out well.
I also was able to use the cloud-database in the Stax environment rather than the existing Derby implementation. If you wanted to use a remote DB (for example, behind the firewall), you just have to change the details.
I just added the following snippet to the web.xml file:
<resource-ref>
<res-ref-name>esme</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
and the following snippet to the stax-application.xml
<resource name=”esme” auth=”Container” type=”javax.sql.DataSource”>
<param name=”username” value=”esme_2″ />
<param name=”password” value=”xxx” /> [password is hidden for this blog]
<param name=”url” value=”jdbc:stax://esme” />
</resource>
Now, that ESME is installed, it is possible to perform operations-related tasks -all from my browser.
Still open
- There are still exceptions dealing with file-based activities. For example. the search interface via Compass currently doesn’t work, because it uses file. These have to be changed as well to have a fully functional application.
- It would be cool to be able to clone this application(including database) for others.
- It would be useful to have the ability to restrict access to particular IP addresses (maybe, this is a function for which Stax could charge?)


