Bug 40880 - Ability to override DocumentBuilderFactory.newInstance in XMLCipher
Summary: Ability to override DocumentBuilderFactory.newInstance in XMLCipher
Status: NEW
Alias: None
Product: Security - Now in JIRA
Classification: Unclassified
Component: Encryption (show other bugs)
Version: unspecified
Hardware: Other other
: P2 enhancement
Target Milestone: ---
Assignee: XML Security Developers Mailing List
URL: http://issues.apache.org/jira/browse/...
Keywords:
Depends on:
Blocks:
 
Reported: 2006-11-02 12:51 UTC by Davanum Srinivas
Modified: 2007-03-09 06:05 UTC (History)
0 users



Attachments
Services API approach to fix Bug 40880 (5.35 KB, patch)
2006-11-03 05:10 UTC, Ruchith Fernando
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Davanum Srinivas 2006-11-02 12:51:04 UTC
Hi Team,

We have a showstopper in Axis2/WSS4J/Rampart:
http://issues.apache.org/jira/browse/AXIS2-1570

We have our own DOM3 Implementation based on AXIOM and we need to be able to
specify that when a new document gets created in XMLCipher. After a lot of
analysis, the simplest way seems to add a new method that can be overriden by
wss4j. I've checked in a fix here:
http://svn.apache.org/viewvc?view=rev&rev=470407

Please kindly ok this fix for inclusion in the pending release.

thanks,
dims
Comment 1 Ruchith Fernando 2006-11-03 05:07:13 UTC
Hi Dims,

IMHO http://svn.apache.org/viewvc?view=rev&rev=470407 will not help since
parseFragment() method is inside Serializer which is a private class. :-(

How ever I tried a different approach using the Services API according to the
JAR specification. Will attach a patch. I was able to successfully run
org.apache.rampart.RampartTest in Axis2 with these changes in my IDE. This
approach does not require us to change the way we use XML-Security at all.

Please review and send your comments.

Thanks,
Ruchith
Comment 2 Ruchith Fernando 2006-11-03 05:10:36 UTC
Created attachment 19077 [details]
Services API approach to fix Bug 40880

Patch mentioned here :
http://issues.apache.org/bugzilla/show_bug.cgi?id=40880#c1
Comment 3 Davanum Srinivas 2006-11-03 05:13:39 UTC
Please don't use sun.misc.Service. Let's leave the current code as-is.

thanks,
dims
Comment 4 Raul Benito 2006-11-04 03:42:24 UTC
(In reply to comment #2)
> Created an attachment (id=19077) [edit]
> Services API approach to fix Bug 40880
> 
> Patch mentioned here :
> http://issues.apache.org/bugzilla/show_bug.cgi?id=40880#c1

I like the patch idea even we have a TODO to get rid of all the DBF.
We could think of applying it(or any derivate) after 1.4 release.

Perhaps it can be even simpler. And let the registration phase go by Init
methods, instead of providers.

What do you all think?
 
Comment 5 Scott Cantor 2006-11-04 13:05:13 UTC
I'm a little confused by what you're trying to fix, and I'm very concerned about
any non-JAXP technique that would be used override the DOM implementation. There
are lots of software packages out there, and people expect JAXP to be used as
Sun defines it to specify the DOM classes to use, or any other XML classes for
that matter.

As it is, we have to do ugly things with endorsement because of bugs in things
like Xerces when it comes to overriding functionality according to the JAXP
system properties. I wouldn't want xmlsec to invent its own parser override
mechanism.

If I'm misunderstanding the problem here, sorry for interjecting.
Comment 6 Davanum Srinivas 2006-11-04 13:29:00 UTC
Scott,

Please review this fix. There is absolutely no change in functionality to
xml-sec. A small block of code was refactored into a protected method. That's it!. 

If you are interested more in the problem we are facing with WSS4J/Rampart, i
can explain that off this bug list. That discussion could be on wss4j-dev or
axis-dev.

Thanks,
dims
Comment 7 Scott Cantor 2006-11-04 13:49:17 UTC
I was reacting more to the other proposed patch (using sun.misc is totally
unacceptable) and the last comment about Init methods and such.

Your original patch is a different animal.