code: public void setExternalGraphicPath( String externalGraphicPath ) throws MalformedURLException {
          if (externalGraphicPath == null) {
              PointSymbolizerWrapper pointSymbolizerWrapper = adapt(PointSymbolizerWrapper.class);
              if (pointSymbolizerWrapper != null) {
                  Graphic graphic = pointSymbolizerWrapper.getGraphic();
                  graphic.graphicalSymbols().clear();
                  externalGraphic = null;
              }
          } else {
              PointSymbolizerWrapper pointSymbolizerWrapper = adapt(PointSymbolizerWrapper.class);
              if (pointSymbolizerWrapper != null) {
                  Graphic graphic = pointSymbolizerWrapper.getGraphic();
                  graphic.graphicalSymbols().clear();
                  String urlStr = externalGraphicPath;
                  if (!externalGraphicPath.startsWith("http:") && !externalGraphicPath.startsWith("file:")) { //$NON-NLS-1$ //$NON-NLS-2$
                      urlStr = "file:" + externalGraphicPath; //$NON-NLS-1$
                  } else if (externalGraphicPath.startsWith("./")) {
                      urlStr = "file:" + externalGraphicPath; //$NON-NLS-1$
                  }
                  externalGraphic = sb.createExternalGraphic(new URL(urlStr), getFormat(externalGraphicPath));
                  graphic.graphicalSymbols().add(externalGraphic);
              }
              setExternalGraphicPath(externalGraphicPath, externalGraphic);
          }
      }
docs: Set the {@link ExternalGraphic}'s path.
  
  <p>Currently one {@link ExternalGraphic} per {@link Symbolizer} is supported.
  
  <p>This is used for point styles.
  
  @param externalGraphicPath the path to set.
  @throws MalformedURLException