The problem is that I deal with .NET
Web services, whether REST or SOAP, are not a Java standard. Both Java and .NET have a number of tools for interfacing with, and generating proxy classes for web services. This is somewhat of a universal standard. See the Wikipedia reference for more information on Web Services. http://en.wikipedia.org/wiki/Web_services
The web service doesn't work and there is no documentation
The WSDL is your most fundamental form of documentation but more is always better. Typically web services are to support componentization as well as data securtity. As a consumer of his web services you are not supposed to worry about the underlying data store. The interface for your web service is your contract, that lays out what functionality is available, and what you need to know about the data structures. This helps in componentization because you should be able to assume that the web service will predictably return certain results which can be easily mocked against in unit testing.
Perhaps your colleague simply designed the web services poorly and this is causing you confusion? Perhaps you just are not familiar working with component based software before and you are confused? Perhaps both.
He will then create web services and a library in Java to access this data.
If he creates Web Services then you do not need a Java library to access them. You can just as easily write a .NET library, and I know that recent versions of Visual Studio have tools that can automatically create web service proxy classes for you based on a WSDL. There is also support for REST based web services as well.
To me that sounds like a horrible way to structure the architecture of one of the most important databases in the company (contains all the employee data).
It is actually very good. I wouldn't want inexperienced junior programmers accessing sensitive employee data that they are not authorized to view. Only individuals with access to this server should be able to access the production database directly.
I've mentioned to him that it is a bad idea because it isn't possible to easily get data out currently
Typically your friend will give you an interface for his web service early so that you can begin development of your own components. It doesn't matter if these web services do not exist yet, because you can mock these web service calls until the services become available.
does my coworker have a decent design
Without seeing his design documents and performing a full design review I cannot say for certain, but it sounds like he has a good idea.