protected void initWSDL(StringToStringMap values, WsdlInterface iface) {
    boolean cached = iface.isCached();
    if (useCached != null) useCached.setEnabled(cached);

    if (!values.containsKey(CACHED_WSDL)) values.put(CACHED_WSDL, Boolean.toString(cached));

    if (values.getBoolean(CACHED_WSDL) || !values.hasValue(WSDL))
      values.put(WSDL, PathUtils.expandPath(iface.getDefinition(), iface));
  }
  private void testLoader(String wsdlUrl) throws Exception {
    WsdlProject project = new WsdlProject();
    project.getSettings().setBoolean(WsdlSettings.CACHE_WSDLS, true);
    WsdlInterface wsdlInterface = WsdlImporter.importWsdl(project, wsdlUrl)[0];

    assertTrue(wsdlInterface.isCached());

    WsdlDefinitionExporter exporter = new WsdlDefinitionExporter(wsdlInterface);

    String root = exporter.export("test" + File.separatorChar + "output");

    WsdlProject project2 = new WsdlProject();
    WsdlInterface wsdl2 =
        WsdlImporter.importWsdl(project2, new File(root).toURI().toURL().toString())[0];

    assertEquals(wsdlInterface.getBindingName(), wsdl2.getBindingName());
    assertEquals(wsdlInterface.getOperationCount(), wsdl2.getOperationCount());
    assertEquals(
        wsdlInterface.getWsdlContext().getInterfaceDefinition().getDefinedNamespaces(),
        wsdl2.getWsdlContext().getInterfaceDefinition().getDefinedNamespaces());
  }