Fix handling of missing Endpoint for client communication

The `getEndpointForClient()` threw an `InvalidStateException`if no Endpoint could be found for the Client. However, this exception had not been caught or otherwise been handled apropriately by any code yet. Thus I changed this to throw a `ResouceAccessException`instead which is properly handled.
Changing a method visibility for testing is not really a good idea. If you really need to unit test a private function, use: https://commons.apache.org/proper/commons-lang/javadocs/api-2.6/org/apache/commons/lang/reflect/MethodUtils.html for accessing private methods