private void addXslProcessingInstruction(Marshaller ms, MediaType mt, XSLTTransform ann) throws Exception { if (ann.type() == XSLTTransform.TransformType.CLIENT || ann.type() == XSLTTransform.TransformType.BOTH && ann.mediaTypes().length > 0) { for (String s : ann.mediaTypes()) { if (mt.isCompatible(JAXRSUtils.toMediaType(s))) { return; } } String absRef = resolveXMLResourceURI(ann.value()); String xslPi = "<?xml-stylesheet type=\"text/xsl\" href=\"" + absRef + "\"?>"; setXmlPiProperty(ms, xslPi); } }
private void addProcessingInstructions(Marshaller ms, XMLInstruction pi) throws Exception { String value = pi.value(); int ind = value.indexOf("href='"); if (ind > 0) { String relRef = value.substring(ind + 6); relRef = relRef.substring(0, relRef.length() - 3).trim(); if (relRef.endsWith("'")) { relRef = relRef.substring(0, relRef.length() - 1); } String absRef = resolveXMLResourceURI(relRef); value = value.substring(0, ind + 6) + absRef + "'?>"; } setXmlPiProperty(ms, value); }