XWiki Eclipse

Can't open Main.WebHome anymore

Details

  • Type: Bug Bug
  • Status: Closed Closed
  • Priority: Major Major
  • Resolution: Fixed
  • Affects Version/s: 1.2 RC1
  • Fix Version/s: 1.2
  • Component/s: XEclipse
  • keywords:
    XEclipse UTF-8 invalid byte open document patch
  • Description:
    Hide

    Hi guys,

    when trying to open Main.WebHome I get an error concerning invalid byte 2 in 4 byte UTF-8 sequence.

    --snip-
    com.thoughtworks.xstream.io.StreamException: : Invalid byte 2 of 4-byte UTF-8 sequence.
    at com.thoughtworks.xstream.io.xml.DomDriver.createReader(DomDriver.java:88)
    at com.thoughtworks.xstream.io.xml.DomDriver.createReader(DomDriver.java:70)
    at com.thoughtworks.xstream.XStream.fromXML(XStream.java:869)
    at org.xwiki.eclipse.core.utils.CoreUtils.readDataFromXML(Unknown Source)
    at org.xwiki.eclipse.core.storage.LocalXWikiDataStorage.getPage(Unknown Source)
    at org.xwiki.eclipse.core.DataManager.getPage(Unknown Source)
    at org.xwiki.eclipse.ui.actions.OpenXWikiModelObjectAction.run(Unknown Source)
    at org.eclipse.ui.actions.RetargetAction.run(RetargetAction.java:221)
    at org.eclipse.ui.internal.navigator.CommonNavigatorManager$3.open(CommonNavigatorManager.java:184)
    at org.eclipse.jface.viewers.StructuredViewer$2.run(StructuredViewer.java:820)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
    at org.eclipse.core.runtime.Platform.run(Platform.java:880)
    at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48)
    at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
    at org.eclipse.jface.viewers.StructuredViewer.fireOpen(StructuredViewer.java:818)
    at org.eclipse.jface.viewers.StructuredViewer.handleOpen(StructuredViewer.java:1079)
    at org.eclipse.ui.navigator.CommonViewer.handleOpen(CommonViewer.java:372)
    at org.eclipse.jface.viewers.StructuredViewer$6.handleOpen(StructuredViewer.java:1183)
    at org.eclipse.jface.util.OpenStrategy.fireOpenEvent(OpenStrategy.java:263)
    at org.eclipse.jface.util.OpenStrategy.access$2(OpenStrategy.java:257)
    at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:297)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3823)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3422)
    at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2382)
    at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2346)
    at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2198)
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:493)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:288)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:488)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
    at org.xwiki.eclipse.rcp.Application.start(Unknown Source)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:193)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:386)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:549)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1236)
    Caused by: com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 4-byte UTF-8 sequence.
    at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.invalidByte(UTF8Reader.java:674)
    at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.read(UTF8Reader.java:463)
    at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.load(XMLEntityScanner.java:1742)
    at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.peekChar(XMLEntityScanner.java:487)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2679)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
    at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:225)
    at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:283)
    at com.thoughtworks.xstream.io.xml.DomDriver.createReader(DomDriver.java:79)
    ... 44 more
    -snap-

    I could open the same document before and am now unable to do so, without having changed anything in this particular document. Furtehrmore I do not use UTF-8 at any place. The MySQL database is in Latin1, and the settings in Tomcat and XWiki are all approritae to ISO-8859-15. Since this might be a bug or at least it feels like it to me, I thought, I post it here.

    Cheers,
    Sebastian

    Show
    Hi guys, when trying to open Main.WebHome I get an error concerning invalid byte 2 in 4 byte UTF-8 sequence. --snip- com.thoughtworks.xstream.io.StreamException: : Invalid byte 2 of 4-byte UTF-8 sequence. at com.thoughtworks.xstream.io.xml.DomDriver.createReader(DomDriver.java:88) at com.thoughtworks.xstream.io.xml.DomDriver.createReader(DomDriver.java:70) at com.thoughtworks.xstream.XStream.fromXML(XStream.java:869) at org.xwiki.eclipse.core.utils.CoreUtils.readDataFromXML(Unknown Source) at org.xwiki.eclipse.core.storage.LocalXWikiDataStorage.getPage(Unknown Source) at org.xwiki.eclipse.core.DataManager.getPage(Unknown Source) at org.xwiki.eclipse.ui.actions.OpenXWikiModelObjectAction.run(Unknown Source) at org.eclipse.ui.actions.RetargetAction.run(RetargetAction.java:221) at org.eclipse.ui.internal.navigator.CommonNavigatorManager$3.open(CommonNavigatorManager.java:184) at org.eclipse.jface.viewers.StructuredViewer$2.run(StructuredViewer.java:820) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37) at org.eclipse.core.runtime.Platform.run(Platform.java:880) at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48) at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175) at org.eclipse.jface.viewers.StructuredViewer.fireOpen(StructuredViewer.java:818) at org.eclipse.jface.viewers.StructuredViewer.handleOpen(StructuredViewer.java:1079) at org.eclipse.ui.navigator.CommonViewer.handleOpen(CommonViewer.java:372) at org.eclipse.jface.viewers.StructuredViewer$6.handleOpen(StructuredViewer.java:1183) at org.eclipse.jface.util.OpenStrategy.fireOpenEvent(OpenStrategy.java:263) at org.eclipse.jface.util.OpenStrategy.access$2(OpenStrategy.java:257) at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:297) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3823) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3422) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2382) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2346) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2198) at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:493) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:288) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:488) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.xwiki.eclipse.rcp.Application.start(Unknown Source) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:193) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:386) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:549) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504) at org.eclipse.equinox.launcher.Main.run(Main.java:1236) Caused by: com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 4-byte UTF-8 sequence. at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.invalidByte(UTF8Reader.java:674) at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.read(UTF8Reader.java:463) at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.load(XMLEntityScanner.java:1742) at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.peekChar(XMLEntityScanner.java:487) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2679) at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:225) at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:283) at com.thoughtworks.xstream.io.xml.DomDriver.createReader(DomDriver.java:79) ... 44 more -snap- I could open the same document before and am now unable to do so, without having changed anything in this particular document. Furtehrmore I do not use UTF-8 at any place. The MySQL database is in Latin1, and the settings in Tomcat and XWiki are all approritae to ISO-8859-15. Since this might be a bug or at least it feels like it to me, I thought, I post it here. Cheers, Sebastian
  • Environment:
    Tomcat, XWiki
  1. patch.txt
    (2 kB)
    Alexey Bykov
    19/Jun/09 09:05

Activity

Hide
Alexey Bykov added a comment - 19/Jun/09 09:01

I have found the cause of this problem. Problem appears when you using some non UTF-8 symbols in Wiki page, and then when stored into workspace cache it is stored using default system enconding. I've already fixed this problem for my companys local build of XEclipse, and I will attach patch to this issue.

Show
Alexey Bykov added a comment - 19/Jun/09 09:01 I have found the cause of this problem. Problem appears when you using some non UTF-8 symbols in Wiki page, and then when stored into workspace cache it is stored using default system enconding. I've already fixed this problem for my companys local build of XEclipse, and I will attach patch to this issue.
Hide
Alexey Bykov added a comment - 19/Jun/09 09:05

This is a patch which helps to solve this problem, it is a single change in java/org/xwiki/eclipse/core/utils/CoreUtils.java, to use UTF-8 enconding when storing the file in local cache.

Show
Alexey Bykov added a comment - 19/Jun/09 09:05 This is a patch which helps to solve this problem, it is a single change in java/org/xwiki/eclipse/core/utils/CoreUtils.java, to use UTF-8 enconding when storing the file in local cache.
Hide
Sergiu Dumitriu added a comment - 28/Jul/10 06:47

Fixed in r30530.

Patch applied with a cleanup.

Show
Sergiu Dumitriu added a comment - 28/Jul/10 06:47 Fixed in r30530. Patch applied with a cleanup.

People

Dates

  • Created:
    04/Feb/09 13:58
    Updated:
    28/Jul/10 06:47
    Resolved:
    28/Jul/10 06:47
    Date of First Response:
    19/Jun/09 09:01