https://bugs.winehq.org/show_bug.cgi?id=36484
Bug ID: 36484 Summary: Lotus Notes 8.x installer aborts with SAX parser exception (line breaks not preserved) Product: Wine Version: 1.7.19 Hardware: x86 OS: Linux Status: NEW Severity: normal Priority: P2 Component: msxml3 Assignee: wine-bugs@winehq.org Reporter: focht@gmx.net
Hello folks,
continuation of bug 36228
As already said, the Java SAXParser still throws same exception as in bug 36228
--- snip --- ... 2014/05/18 19:46:46.452 SEVERE CWPPR0026E: The XML parser reported an exception at line number 17 and column number 1 when parsing the provisioning manifest. ::class.method=com.ibm.rcp.provisioning.internal.impl.ProvisioningServiceImpl.process() ::thread=Worker-0 ::loggername=com.ibm.rcp.provisioning
org.xml.sax.SAXParseException: Attribute name "ur" associated with an element type "feature" must be followed by the ' = ' character. at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source) at org.apache.xerces.util.ErrorHandlerWrapper.fatalError(Unknown Source) at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source) at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source) at org.apache.xerces.impl.XMLScanner.reportFatalError(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanAttribute(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source) at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source) at org.apache.xerces.jaxp.SAXParserImpl.parse(Unknown Source) at com.ibm.rcp.provisioning.internal.impl.ProvisioningServiceImpl$3.run(Unknown Source) at org.eclipse.core.internal.jobs.Worker.run(Unknown Source) ... --- snip ---
For reproducing one can short-circuit the whole thing by re-running on a failed install attempt as follows:
--- snip --- wine "C:\Program Files\IBM\Lotus\Notes\framework\rcp\rcplauncher.exe" -rcpLauncherWait -provManifest -noSplash -product NULL -provisioningOperation update -vmargs -verbose:class -verbose:jni -DprovisioningOperation=update -Drcp.system.admin=true -DprovUpdateSiteListOverride="file:/C:/users/focht/Temp/Lotus Notes/updateSite" --- snip ---
Java VM args '-verbose:class -verbose:jni' were added for debugging purpose, they can be omitted.
It seems the culprit is that Wine's msxml (re)generates an 'install.xml' file with line breaks not preserved/generated (linefeed/carriage return missing).
Good one, each tag is separated by line break (seen in hex-editor with 0x0D,0A).
--- snip --- <?xml version="1.0" encoding="ISO-8859-1"?> <!-- ***************************************************************** --> <!-- ... <ibm-portal-composite> <domain-object name="com.ibm.rcp.installmanifest"> <object-data> <install version="8.0.0.20080809.0430"> <installfeature default="true" id="Platform.XPD" required="true" show="false" version="8.0.0.20080809.0430"> <requirements> <feature download-size="2188" id="com.ibm.langware.engine.feature" match="perfect" size="3464" url="jar:file:/C:/Users/focht/AppData/Local/Temp/Lotus Notes/updateSite.zip!/" version="6.1.2.200808010926"/> ... --- snip ---
Bad one, generated by Wine msxml.
After the starting '<ibm-portal-composite>' tag it's basically one big line:
--- snip --- <?xml version="1.0" encoding="ISO-8859-1"?> <!-- ***************************************************************** --> <!-- ... <ibm-portal-composite><domain-object name="com.ibm.rcp.installmanifest"><object-data><install version="8.0.0.20080809.0430"><installfeature default="true" id="Platform.XPD" required="true" show="false" version="8.0.0.20080809.0430"><requirements><feature download-size="2188" id="com.ibm.langware.engine.feature" match="perfect" size="3464" url="jar:file:/C:/users/focht/Temp/Lotus Notes/updateSite.zip!/" version="6.1.2.200808010926"/> --- snip ---
The XML file in question is already present with the installer at unpack time, located at 'C:\users\focht\Temp\Lotus Notes\deploy\install.xml' (with proper Windows line breaks).
The file gets rewritten during install time, being smaller in the end with fewer feature-sets (ok) and line breaks lost (not ok).
'winetricks -q msxml3' works around.
$ sha1sum C1K31EN.exe 5aac0feb578c471e65c0a24a3f5dceb719fd5760 C1K31EN.exe
$ du -sh C1K31EN.exe 456M C1K31EN.exe
$ wine --version wine-1.7.19
Regards