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) <ibatis-dev@incubator.apache.org> 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.


Reply via email to