From b7c96d82cebf937c25f8c5268973effa7b83570a Mon Sep 17 00:00:00 2001 From: lresende Date: Thu, 29 Jan 2009 00:52:21 +0000 Subject: TUSCANY-2663 - Workaround for 'java.lang.IllegalStateException: The current state is not START_DOCUMENT' when in WebSphere env git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@738683 13f79535-47bb-0310-9956-ffa450edef68 --- .../contribution/processor/TuscanyXMLStreamReader.java | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'branches/sca-java-1.x/modules/contribution/src') diff --git a/branches/sca-java-1.x/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/processor/TuscanyXMLStreamReader.java b/branches/sca-java-1.x/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/processor/TuscanyXMLStreamReader.java index 3fd7bded68..f2afe419a3 100644 --- a/branches/sca-java-1.x/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/processor/TuscanyXMLStreamReader.java +++ b/branches/sca-java-1.x/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/processor/TuscanyXMLStreamReader.java @@ -35,12 +35,14 @@ public class TuscanyXMLStreamReader extends StreamReaderDelegate implements XMLS Stack[]> context = new Stack[]>(); + String characterEncodingScheme; List[] contextList; List prefixList; List uriList; public TuscanyXMLStreamReader(XMLStreamReader reader) { super(reader); + this.saveCharacterEncodingScheme(); } public void pushContext() throws XMLStreamException { @@ -68,6 +70,10 @@ public class TuscanyXMLStreamReader extends StreamReaderDelegate implements XMLS public void popContext() throws XMLStreamException { context.pop(); } + + public void saveCharacterEncodingScheme() { + this.characterEncodingScheme = super.getCharacterEncodingScheme(); + } /* * Overriding the next() method to perform PUSH and POP operations @@ -93,6 +99,7 @@ public class TuscanyXMLStreamReader extends StreamReaderDelegate implements XMLS @Override public int nextTag() throws XMLStreamException { int event = super.nextTag(); + if (event == START_ELEMENT) { pushContext(); } @@ -106,4 +113,10 @@ public class TuscanyXMLStreamReader extends StreamReaderDelegate implements XMLS public NamespaceContext getNamespaceContext() { return new TuscanyNamespaceContext((Stack[]>)context.clone()); } -} + + + @Override + public String getCharacterEncodingScheme() { + return characterEncodingScheme; + } +} \ No newline at end of file -- cgit v1.2.3