Adams Bros Blog


Spring Building a RESTful Web Service – revisited

Posted by Trenton

I do frequently find that Spring documentation reads more like a novel than it does technical documentation. I find you can sometimes take many minutes, or even hours, just wading through stuff to find out how to do something that should have taken 5-10 minutes. Spring's REST framework is relatively straight forward to use, but there doesn't seem to be a good quick start on it's use.

So, we endeavour to have you up and running with their "Building a RESTful Web Service" tutorial in under 5 minutes, assuming you have a basic java development environment going, meeting their requirements. Please quickly review the first two "What you'll build" and the "What you'll need" sections at "Building a RESTful Web Service", then come back here.

We have one additional requirement. It's assumed you're able to develop from a Linux command line. If you're not using Linux as a development platform, you really should be.

We won't be using gradle, as I personally think it's a really bad tool.

Filed under: Spring Continue reading

Linux Disk Usage Exclude Dot Directories

Posted by Trenton

I'm always searching for how to do this because I keep forgetting. So here it is, no more searching.

Filed under: Bash, Linux Continue reading

Making New Linux Disk Visible Without a Reboot

Posted by Troy

I was having trouble today getting Linux to see my new partition space that I added in vSphere without rebooting the host. The new disk space was made visible by re-scanning the SCSI bus (below) and then the new partition was made visible by using the partprobe command (below).


I asked VMWare to provision my disk to be larger and then asked Linux to refresh the kernel info:

 $ echo 1 > /sys/class/scsi_device/0\:0\:3\:0/device/rescan 
 $ dmesg
 sdd: Write Protect is off 
 sdd: Mode Sense: 61 00 00 00 
 sdd: cache data unavailable 
 sdd: assuming drive cache: write through 
 sdd: detected capacity change from 171798691840 to 343597383680


I added another partition and then tried to get LVM to use it:

$ fdisk /dev/sdd
 Command (m for help): n
 Command action
 e extended
 p primary partition (1-4)
 Partition number (1-4): 3

But LVM couldn't see it:

 $ pvcreate /dev/sdd3
 Device /dev/sdd3 not found (or ignored by filtering).
 $ pvcreate -vvvv /dev/sdd3
 #device/dev-cache.c:578 /dev/sdd3: stat failed: No such file or directory
 #device/dev-cache.c:578 /dev/sdd3: stat failed: No such file or directory

The solution was to use partprobe to inform the OS of partition table changes:

 $ partprobe /dev/sdd
 $ pvcreate /dev/sdd3
 dev_is_mpath: failed to get device for 8:51
 Writing physical volume data to disk "/dev/sdd3"
 Physical volume "/dev/sdd3" successfully created
Filed under: Uncategorized No Comments

git text graph

Posted by Trenton

I've been looking for a really good command for making a textual graph of my repo, showing the various branches, where they come from, etc. The reason I like this one is that it's not only a graph, but it shows the branch names like 'gitk --all' does, but only the ones that are tied to tags or branches.


Backups Made Simple

Posted by Trenton

I've had complex backup solutions in the past, which I wrote myself with rsync and bash.  I've recently got sick and tired of the issues that come up now and then with them, so I decided to keep it extremely simple. So, I decided to opt for a couple of rsync only shell scripts. I get emails every time they run, as part of cron.

Filed under: Bash, Linux Continue reading


Posted by Trenton

I was recently asked the question about the conditions under which I would choose SOAP vs REST for writing a Web Service.  I was thoroughly intrigued by the question, because I was curious in which way the discussion would go, as that would tell me a lot about the other developer.


OpenLDAP SSHA Salted Hashes By Hand

Posted by Troy

I needed a way to verify that the OpenLDAP server had the correct hash recorded.  That is, a SSHA Hash Generator that I could run off the command line was in order.  After fiddling through it, I thought it would be worth documenting in a blog post.

We need to find the salt (the last four bytes of the hash), and then concatenate PASSWORD+SALT, take the SHA hash, convert to base64, prepend {SSHA}, and then finally base64 encode that whole string again.


Converting Email Files (.eml) to Thunderbird Maildir

Posted by Trenton

After a lot of effort trying to figure out how to get some of my email into Thunderbird, from simple email files, I finally figured it out. I couldn't do some of the other suggestions, as I have a lot of mail. Hopefully this saves you some pain too.


Git Recover Deleted or Staged Files

Posted by Trenton

I ran into a situation where I accidentally staged a file I didn't want to stage, and when I ran "git reset --hard" it was wiped out. After a simple google search (git recover staged files), recovering the file was simple.  I've put together a loop, which will check each commit, and look for a string "responsive", which I know is in the file.

Filed under: git Continue reading

Tora Install on Linux Mint 17

Posted by Trenton

We need to start by installing the oracle client appropriate for your architecture.  Grab the oracle instant client rpms from oracle's site.  Then run...

sudo alien --to-deb oracle-instantclient11.2-*.rpm