I wrote an composite application with webservice as entrance endpoint for client system. When I was previewing the wsdl file I’ve notice there is only host name without full domain name(as it is in DNS servers) give in schema location and webservice endpoint.  That was obviously wrong, because client would not be able to resolve those adresses. I remember I had this issue one in the past. After a talk with my friend I’ve decided to search resolution with operation system Solaris 10 then with application server.

The resolution of this problem is easy and strange. Maybe because Glassfish is very sensitive?

  1. Let’s say my host is called tiger. My domain name is mycompany.com. In schema address I saw:
    schemaLocation=”http://tiger:9080/myAwesomeWebservice/schema.xsd”
    and it should be
    schemaLocation=”http://tiger.mycompany.com:9080/myAwesomeWebservice/schema.xsd”
    something was missing.
  2.  To fix this you should edit /etc/hosts and change order of strings
    before I’ve got:
    127.0.01 tiger tiger.mycompany.com
    after I’ve got:
    127.0.0.1 tiger.mycompany.com tiger

That fixed my problem. I hope it won’t break anything else. I suppose only glassfish is so strict about the names of hostname.