I'm sitting here (ironically?) listening to King Crimson's "Dinosaur," bugging someone about my JMS/JNDI issue, and Arun Gupta reminded me ever-so-gently of my criticism that deploying a JAX-WS service should be trivial, and wasn't.
At TSSJS he hunted me down like a dog to talk to me about it - and I showed him that it didn't work for me, and he retaliated by showing me that it did work for him - and it worked for him exactly like it should have.
To wit: here's a "hello, world" service. I had basically said that I thought this should be all there was to a web service: nothing more should be required:
package webservice;
import javax.jws.WebService;
@WebService
public class HelloService { public String sayHello() { return "Hello, World!";} }
Now, in a perfect world, according to me, that should deploy, a WSDL should be available, and you should be able to invoke it. No muss, no fuss, no sweat.
Like I said, Arun showed me this - working exactly like I thought it should. I compiled, deployed... and Glassfish b33 consistently failed to compile it. I promised him I'd check it out when I had more time (after I updated to b33e).
So now I've done so - updated to b40-nightly, in fact, since my JMS/JNDI thing has been bothering me, since it shouldn't exist. I took the class above, compiled it, and copied the webservice/* directory into the Glassfish autodeploy directory... and WHAM! Worked like a charm. I invoked the service, read the WSDL, everything.
This is excellent and it's exactly what it should be. Way to go, JAX-WS people.