[ 
https://issues.apache.org/jira/browse/XERCESJ-1205?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12920898#comment-12920898
 ] 

Radu Coravu edited comment on XERCESJ-1205 at 3/27/15 6:45 AM:
---------------------------------------------------------------

Just one small rectification to what Thomas added as a patch:
In the method XMLEntityManager.initFromDTD

the current code is:
{code}
..............
 if(entityDecl.publicId != null {
                try {
                    addExternalEntity(entityDecl.name, entityDecl.publicId, 
entityDecl.systemId, entityDecl.baseSystemId);
                }
.................................

it should be something like:
..........................
if(entityDecl.publicId != null
                || entityDecl.systemId != null) {
                try {
                    addExternalEntity(entityDecl.name, entityDecl.publicId, 
entityDecl.systemId, entityDecl.baseSystemId);
                }
................................
{code}
In this way external SYSTEM entities will also be preserved.


was (Author: radu_coravu):
Just one small rectification to what Thomas added as a patch:
In the method XMLEntityManager.initFromDTD

the current code is:
..............
 if(entityDecl.publicId != null {
                try {
                    addExternalEntity(entityDecl.name, entityDecl.publicId, 
entityDecl.systemId, entityDecl.baseSystemId);
                }
.................................

it should be something like:
..........................
if(entityDecl.publicId != null
                || entityDecl.systemId != null) {
                try {
                    addExternalEntity(entityDecl.name, entityDecl.publicId, 
entityDecl.systemId, entityDecl.baseSystemId);
                }
................................

In this way external SYSTEM entities will also be preserved.

> Entity resolution does not work with DTD grammar caching resolved
> -----------------------------------------------------------------
>
>                 Key: XERCESJ-1205
>                 URL: https://issues.apache.org/jira/browse/XERCESJ-1205
>             Project: Xerces2-J
>          Issue Type: Bug
>          Components: DTD
>    Affects Versions: 2.8.1
>         Environment: JDK1.5. The issue appears on various machines, Windows, 
> Linux, Mac OSX. I don't believe it is platform specific.
>            Reporter: Tin Pavlinic
>            Assignee: Michael Glavassevich
>         Attachments: XERCESJ-1465.patch, bug.zip
>
>
> We have a DTD which defines some entities. We are parsing multiple documents 
> against this DTD. If grammar caching is enabled, the entities are unresolved 
> when the grammar is loaded from the cache, instead of the DTD. 
> It seems that they are cleared every time a document is parsed and are only 
> loaded when a DTD is loaded and not from the cache.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: j-dev-unsubscr...@xerces.apache.org
For additional commands, e-mail: j-dev-h...@xerces.apache.org

Reply via email to