Using public keys with ssh

From the client:

mkdir ~/.ssh
chmod 700 ~/.ssh
ssh-keygen -t rsa

By default the key files (id_rsa = private, id_rsa.pub = public) will be created here: ~/.ssh/

sftp the id_rsa.pub file to the remote machine, and drop it in ~/.ssh.

If you’re using OpenSSH on the remote machine, do this to append the file to the authorized_keys2 file (cd into your .ssh dir):

cat >> authorized_keys2 < id_rsa.pub

 

Installing and hosting a Joomla site on OpenShift

OpenShift have an example Joomla app ready to deploy on github, but it’s currently not working – once you’ve deployed it, it gives you a page with this error:

Infinite loop detected in JError

Given that it’s relatively simple to setup Joomla, I set up a new app on OpenShift, downloaded the latest install for Joomla, and then pushed it up to OpenShift. Using this approach you can walk through the admin screens to configure your site and point it to your hosted MySQL, and it’s just as easy as installing it locally.

Here’s the steps:

1. Create your PHP app on OpenShift:

rhc app create -a your_app_name -t php-5.3

2. Add the MySQL cartridge:

rhc app cartridge add -a your_app_name -c mysql-5.1

3. Download Joomla. Unzip the download into the php add inside your app dir that was created by ‘rhc app create’

4. Add, commit and push your changes to OpenShift:

git add .
git commit -m "Joomla initial commit"
git push

5. Now hit your URL for your hosted app, and then walk through the setup steps as normal. When prompted for your MySQL config, use the values given in step 2 above.

Adding new views to a Spring Roo app using Tiles

Spring Roo by default uses Tiles to construct your views. Without some digging through the generated configuration files, this is not as obvious as you’d think, so by dropping a new jspx file in one of your views subdirs and trying to forward to it from your Controllers will give you an error like this:

Servlet.service() for servlet ContestEntry threw exception:
javax.servlet.ServletException: Could not resolve view with
name 'somedomain/someview' in servlet with name 'WebappName'

Each of your view subdirs beneath /WEB-INF/views/ has it’s own views.xml file that declares it’s Tiles definitions. To add a new view, you need to add both an entry in the corresponding views.xml file and drop a new jspx file in the same views dir