Take your problem and break it down into pieces:
- Call a program from Java
- Call a program with arguments from Java
- Call a suexec root program from Java
- Call a program via sudo from Java
- Verify your restart command from the command line, then implement that in Java
Doing this can help you determine if it's a PADS issue, or inexperience with the Runtime.getRuntime().exec(...) method--which looks like a mix of the system and exec C calls--, or with your restart command. Divide and conquer, write small test cases, keep it simple.