Witam generuję xml, umieszczając xsl na wejściu xml. Muszę wyjście bez tej części "<?xml version="1.0" encoding="utf-16"?>"
Musisz usunąć <? Xml version = "1.0" encoding = "utf-16"?> Z xml
input - xml
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<CreateResponse xmlns="http://jerseytelecom.com/">
<CreateResult>
<ISD_XMLGateway>
<Entity>RIM_BPS</Entity>
</ISD_XMLGateway>
</CreateResult>
</CreateResponse>
</soap:Body>
</soap:Envelope>
moim xsl
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:JT="http://jerseytelecom.com/" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" exclude-result-prefixes="JT">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="/">
<xsl:element name="Entity">
<xsl:value-of select="soap:Envelope/soap:Body/JT:CreateResponse/JT:CreateResult/JT:ISD_XMLGateway/JT:Entity"/>
</xsl:element>
</xsl:template>
</xsl:stylesheet>
Wyjście prądowe
<?xml version="1.0" encoding="utf-16"?>
<Entity>RIM_BPS</Entity>
Oczekiwany Wyjście
<Entity>RIM_BPS</Entity>
Dlaczego? Wszystkie poprawne dokumenty XML muszą zaczynać się od deklaracji XML. – SLaks
@SLaks, Zgaduję, że niektóre z nich nie są tak zgodne i szczerze mówiąc, słaba implementacja. –
@SLaks: Deklaracja XML jest opcjonalna w plikach XML jednak: [Podpowiedź: Zawsze używaj deklaracji XML] (http://www.ibm.com/developerworks/xml/library/x-tipdecl/index.html) - (nie jest to * musi *, ale * należy *) – hakre