This should do the job. The idea is that for each list node, temporarily copy its next node, set its next to the previous node, and set the previous node to it. It can also be done recursively.
public void reverse() {
Node prev = null;
Node current = head;
while (current != null) {
Node next = current.getNext();
current.setNext(prev);
prev = current;
current = next;
}
this.head = prev;
}
Edit: you will also need to update the tail reference