yea, the problem is that rar/unrar doesn't take multiple input files as its arguments, so basically
ls *.rar|xargs unrar x
is equivalent to
which won't work.
You can setup a simple loop to do it one by one, eg:
for foo in *.rar; do unrar x $foo; done