When you test your EJB running JBoss instance on local windows machine it works simply becouse Client and Server happened to be on the same machine. Whe you run it on Linux or even another Windows machine the following code will never display a PDF file to the client.
Realize that your code (EJB Code) is executing on the server and if the server and your code will get the server Runtime and if the server has a default editor/viewr for PDF it will be opened there and never on the client.
Try to access your application while it is running on windows but access it from another windows machine. You will see that the file will be opened on the machine with the server.