@Override protected void onBeforeRender() { Fragment fragment; final ResourceReference icon = getIcon(); if (icon.getExtension().equalsIgnoreCase("svg")) { fragment = new Fragment(WICKET_ID_CONTAINER, WICKET_FRAGMENT_SVG, this); fragment.add(new InlineSvg(WICKET_ID_SVG, icon, getExtraCssClasses())); } else { fragment = new Fragment (WICKET_ID_CONTAINER, WICKET_FRAGMENT_IMAGE, this); final Image image = new CachingImage(WICKET_ID_IMAGE, icon); image.add(CssClass.append(getExtraCssClasses())); fragment.add(image); if (width >= 0) { image.add(AttributeModifier.replace("width", width)); } if (height >= 0) { image.add(AttributeModifier.replace("height", height)); } } fragment.setRenderBodyOnly(true); addOrReplace(fragment); super.onBeforeRender(); } }