code: @Override
      public void validate() {
          // Check if endpoint has been specified.
          if (StringUtil.isBlank(endpoint)) {
              throw new IllegalArgumentException("Endpoint cannot be null or empty.");
          }
  
          // Check if servicename has been specified.
          if (StringUtil.isBlank(servicename)) {
              throw new IllegalArgumentException("Service name cannot be null or empty.");
          }
  
          // Check if servicename has been specified.
          if (StringUtil.isBlank(connectionTimeout)) {
              connectionTimeout = "30";
          }
  
          try {
              Long.parseLong(connectionTimeout);
          } catch (NumberFormatException e) {
              throw new IllegalArgumentException("The specified connection timeout is not valid.");
          }
  
          if (StringUtil.isBlank(receiveTimeout)) {
              receiveTimeout = "60";
          }
  
          try {
              Long.parseLong(receiveTimeout);
          } catch (NumberFormatException e) {
              throw new IllegalArgumentException("The specified receive timeout is not valid.");
          }
  
          try {
              // Check if the specified endpoint is a well-formed URL
              final URL endpointURL = new URL(endpoint);
              endpointURL.toURI();
          } catch (Exception e) {
              throw new IllegalArgumentException("The specified endpoint is not a valid URL.");
          }
      }
docs: {@inheritDoc}