Details
Description
MyFaces calls #cloneWithWriter using its StateWriter, which goes through some acrobatics, the upshot of which is that DOMResponseWriter#startElement is called sometime after DOMResponseWriter#endDocument. #startElement appropriately creates a new Document if its document reference is null, then calls #appendToCursor which, finding that the cursor instance variable is null, assigns that to document.getDocumentElement(). Unfortunately the Document, having just been instantiated, has no document element. What seems like the obvious way to address this issue is to re-check the cursor, i.e.:
if (cursor == null) {
cursor = document.getDocumentElement();
+ if (cursor == null) {
+ cursor = document;
+ }
}
This may be naively missing something; WDYT?
if (cursor == null) {
cursor = document.getDocumentElement();
+ if (cursor == null) {
+ cursor = document;
+ }
}
This may be naively missing something; WDYT?
Issue Links
- depends on
-
ICE-5868 MyFaces 2 compatibility
-
- Closed
-
Activity
- All
- Comments
- History
- Activity
- Remote Attachments
- Subversion
Field | Original Value | New Value |
---|---|---|
Attachment | icefacesNPE.tar.gz [ 13223 ] |
Assignee | Deryk Sinotte [ deryk.sinotte ] |
Salesforce Case | [] | |
Component/s | Framework [ 10013 ] | |
Fix Version/s | 2.1 [ 10241 ] | |
Affects Version/s | 2.0.1 [ 10255 ] |
Salesforce Case | [] | |
Assignee Priority | P3 |
Status | Open [ 1 ] | Resolved [ 5 ] |
Resolution | Fixed [ 1 ] |
Fix Version/s | 2.1-Beta [ 10291 ] |
Status | Resolved [ 5 ] | Closed [ 6 ] |