org.exist.storage.serializers
Class WSDLFilter
java.lang.Object
org.exist.storage.serializers.WSDLFilter
- All Implemented Interfaces:
- ContentHandler
public class WSDLFilter
- extends Object
- implements ContentHandler
Add the xmlns:tns and xmlns:soapenc namespaces to the definitions element of the WSDL stylesheet
we do this here as a workaround for Xalan, Xalan has no easy
way to declare additional dynamic namespaces.
There are two possible known Xalan hacks to do this -
1) declare a dummy attribute with the namespace.
This seems to break WSDL compatibilty though!
2) declare a variable containing an element with namespace and copy the
namespace using xsl:copy-of and xalan:nodeset() but this doesnt seem to work!
http://sources.redhat.com/ml/xsl-list/2001-09/msg01204.html
If we were using Saxon instead of Xalan then the workaround is easy as XSLT 2.0
supports xsl:namespace for declaring dynamic namespaces
- Author:
- Adam Retter (adam.retter@devon.gov.uk)
Method Summary |
void |
characters(char[] ch,
int start,
int length)
|
void |
endDocument()
|
void |
endElement(String uri,
String localName,
String qName)
|
void |
endPrefixMapping(String prefix)
|
void |
ignorableWhitespace(char[] ch,
int start,
int length)
|
void |
processingInstruction(String target,
String data)
|
void |
setDocumentLocator(Locator locator)
|
void |
skippedEntity(String name)
|
void |
startDocument()
|
void |
startElement(String uri,
String localName,
String qName,
Attributes atts)
|
void |
startPrefixMapping(String prefix,
String uri)
|
WSDLFilter
public WSDLFilter(ContentHandler outputHandler,
String tnsNamespaceUri)
setDocumentLocator
public void setDocumentLocator(Locator locator)
- Specified by:
setDocumentLocator
in interface ContentHandler
startDocument
public void startDocument()
throws SAXException
- Specified by:
startDocument
in interface ContentHandler
- Throws:
SAXException
endDocument
public void endDocument()
throws SAXException
- Specified by:
endDocument
in interface ContentHandler
- Throws:
SAXException
startPrefixMapping
public void startPrefixMapping(String prefix,
String uri)
throws SAXException
- Specified by:
startPrefixMapping
in interface ContentHandler
- Throws:
SAXException
endPrefixMapping
public void endPrefixMapping(String prefix)
throws SAXException
- Specified by:
endPrefixMapping
in interface ContentHandler
- Throws:
SAXException
startElement
public void startElement(String uri,
String localName,
String qName,
Attributes atts)
throws SAXException
- Specified by:
startElement
in interface ContentHandler
- Throws:
SAXException
endElement
public void endElement(String uri,
String localName,
String qName)
throws SAXException
- Specified by:
endElement
in interface ContentHandler
- Throws:
SAXException
characters
public void characters(char[] ch,
int start,
int length)
throws SAXException
- Specified by:
characters
in interface ContentHandler
- Throws:
SAXException
ignorableWhitespace
public void ignorableWhitespace(char[] ch,
int start,
int length)
throws SAXException
- Specified by:
ignorableWhitespace
in interface ContentHandler
- Throws:
SAXException
processingInstruction
public void processingInstruction(String target,
String data)
throws SAXException
- Specified by:
processingInstruction
in interface ContentHandler
- Throws:
SAXException
skippedEntity
public void skippedEntity(String name)
throws SAXException
- Specified by:
skippedEntity
in interface ContentHandler
- Throws:
SAXException
Copyright (C) Wolfgang Meier. All rights reserved.