Hi Hans,
Sheesh. What's with SAP and their 30 year old SGML based parsers?
Why can't they take 10 minutes and write a modern XML parser, or
here's a thought: USE ONE OF THE 500 FREE ONES AVAILABLE ON THE
INTERNET.
Ok. Now that I have that out, I realize it's not your fault and feel
sorry for you. :-)
I'll have a look to see how this will change the schema...at first
glance it should work, but I'll have to look through it more
carefully.
Clinton
On 2/14/07, Hans Jörg Hessmann (JIRA) <[email protected]> wrote:
iBatis DTD's use nondeterministic model
----------------------------------------
Key: IBATIS-392
URL: https://issues.apache.org/jira/browse/IBATIS-392
Project: iBatis for Java
Issue Type: Bug
Components: SQL Maps
Affects Versions: 2.3.0
Environment: SAP Netweaver
Reporter: Hans Jörg Hessmann
iBATIS causes on SAP Netweaver the error:
Fatal Error: com.sap.engine.lib.xml.parser.NestedSAXParserException: You
are probably using a nondeterministic model like (a*|b*)*,
try to replace it with an equivalent deterministic one, e.g. (a|b)*
The iBATIS DTD's contain:
<!ELEMENT sqlMapConfig (properties?, settings?, resultObjectFactory?, typeAlias*,
typeHandler*, transactionManager?, sqlMap+)+>
and
<!ELEMENT sqlMap (typeAlias* | cacheModel* | resultMap* | parameterMap* | sql* |
statement* | insert* | update* | delete* | select* | procedure*)+>
On the SAP forum I found this remark:
"As noted in 3.2.1 Element Content and Appendix E of the XML Specification, it is
required that content models in element type declarations be deterministic."
So I fixed the DTD to:
<!ELEMENT sqlMapConfig (properties?, settings?, resultObjectFactory?, typeAlias*,
typeHandler*, transactionManager?, sqlMap+)>
and
<!ELEMENT sqlMap (typeAlias | cacheModel | resultMap | parameterMap | sql |
statement | insert | update | delete | select | procedure)+>
After this patch everything works.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.