Dittmann Werner | 12 Feb 08:24 2004
Picon

AW: [WSS4J] Re: AW: WSDoAllReceiver/AxisUtil problem report

Sashka, all,

there is also a fix in WSDoAllReceiver available that
uses another technique to update the Axis message. This
fix works AFAIK.

Regards,
Werner

> -----Ursprüngliche Nachricht-----
> Von: wss4j-devel-admin@... 
> [mailto:wss4j-devel-admin@...] Im Auftrag 
> von Davanum Srinivas
> Gesendet: Mittwoch, 11. Februar 2004 17:28
> An: Sashka
> Cc: wss4j-devel@...
> Betreff: [WSS4J] Re: AW: WSDoAllReceiver/AxisUtil problem report
> 
> 
> yep, i am a member of Axis team and yes, this has been 
> applied to the main source tree.
> 
> --- Sashka <jabberw@...> wrote:
> > Dims, hi
> > I'm using the axis 1.2(currently - alpha) version. If U'r a 
> member of 
> > an axis team so this change is upplied on general 1.2 
> version, that's 
> > fine. But if that's just a change in the axis.jar supplied in your 
> > lib/, that means I bound to this specific jar version; each Axis 
> > upgrade will require to add this fix. From user's point of 
> view, for 
> > me it violates the projects interoperability strongly. In 
> such a case -
> >  could U add an non-default flag in your 
> AxisUtil.updateSOAPMessage() 
> > to run a workaround within it - with axis as is - by using 
> ony one of 
> > other Source classes - StreamSource or SAXSource, please?
> > 
> > Sincerely
> > Sashka. 
> > 
> > 
> > > Sashka,
> > > 
> > > Which version of axis are u using? Yes, i fixed
> > > XMLUtils.sourceToInputSource() already. I will
> > > check in an updated axis in wss4j/lib directory soon.
> > > 
> > > thanks,
> > > dims
> > > 
> > > --- Sashka <jabberw@...> wrote:
> > > > Dims, hi
> > > > Do you mean U'r going to fix it in the axis sources 
> code - within 
> > > > XMLUtils.sourceToInputSource()? - In this case wss4j loses the 
> > > > compatibility with the axis, and the jar's order in the 
> classpath 
> > must 
> > > > be restricted to wss4j before axis - that's not so convenient.
> > > > 
> > > > Sincerely
> > > > Sashka
> > > > 
> > > > > i will fix axis code (PrettyElementToStream -> 
> ElementToStream)
> > > > > 
> > > > > thanks,
> > > > > dims
> > > > > 
> > > > > --- Dittmann Werner <werner.dittmann@...> wrote:
> > > > > > Hi,
> > > > > > 
> > > > > > just checked in a modified version of WsDoAllReceiver that
> > > > > > perform the same serialization as WsDoAllSender. According
> > > > > > to my tests that could solve the problem. Pls check out.
> > > > > > 
> > > > > > Dims, Axis performs a "PrettyElementToStream" in the course
> > > > > > of its serialization when it converts DOMSource to bytes.
> > > > > > Refer to "sourceToInputSource(Source source)"
> > > > > > in XMLUtils. Thus setting the flag in SOAPBody 
> wouldn't help,
> > > > > > wouldn't it?
> > > > > > 
> > > > > > Regards,
> > > > > > Werner
> > > > > > 
> > > > > > > -----Ursprüngliche Nachricht-----
> > > > > > > Von: wss4j-devel-admin@... 
> > > > > > > [mailto:wss4j-devel-admin@...] 
> Im Auftrag 
> > > > > > > von Dittmann Werner
> > > > > > > Gesendet: Dienstag, 10. Februar 2004 16:22
> > > > > > > An: 'dims@...'; 'Sashka'; wss4j-
> > devel@...
> > > > > > > Betreff: [WSS4J] AW: AW: WSDoAllReceiver/AxisUtil problem 
> > report
> > > > > > > 
> > > > > > > 
> > > > > > > sorry, Dims. Don't have a current Axis tree 
> > > > > > > on my system, need to set-up the environment,
> > > > > > > will take a day or two.
> > > > > > > 
> > > > > > > Regards,
> > > > > > > Werner
> > > > > > > 
> > > > > > > > -----Ursprüngliche Nachricht-----
> > > > > > > > Von: Davanum Srinivas [mailto:dims@...] 
> > > > > > > > Gesendet: Dienstag, 10. Februar 2004 14:03
> > > > > > > > An: Dittmann Werner; 'Sashka'; wss4j-
> > > > devel@...
> > > > > > > > Betreff: Re: AW: WSDoAllReceiver/AxisUtil problem report
> > > > > > > > 
> > > > > > > > 
> > > > > > > > Can one of you set disableFormatting to true in Axis' 
> > > > > > > > SOAPBody.java (line 93) and see if that
> > > > > > > > helps? if it does, i can add a global switch to disable 
> > > > formatting.
> > > > > > > > 
> > > > > > > > thanks,
> > > > > > > > dims
> > > > > > > > 
> > > > > > > > --- Dittmann Werner <werner.dittmann@...> wrote:
> > > > > > > > > Sashka,
> > > > > > > > > 
> > > > > > > > > just to make sure: as I understand your report
> > > > > > > > > the problem is soemwhere in class DOMSource?
> > > > > > > > > 
> > > > > > > > > Well, I checked this beast (contained in Axis
> > > > > > > > > sources) and found that it does nothing to the
> > > > > > > > > content at all, just stores the node an provides
> > > > > > > > > a way to access the node.
> > > > > > > > > 
> > > > > > > > > That means, that the problem is somewhere in Axis
> > > > > > > > > serialization as we just replace the nodes,
> > > > > > > > > basically.
> > > > > > > > > 
> > > > > > > > > Dims, do you know of any problem there?
> > > > > > > > > 
> > > > > > > > > BTW, while implementing and testing the interop
> > > > > > > > > scenarios I discovered a similar problem. That's
> > > > > > > > > the reason why I do a String.trim() on the String
> > > > > > > > > input parameter at the server side to get rid
> > > > > > > > > of unwanted \n. Well, I didn't follow up that
> > > > > > > > > problem then, but it seems that something is wrong
> > > > > > > > > with Axis serialization when there is a new node.
> > > > > > > > > 
> > > > > > > > > Regards,
> > > > > > > > > Werner
> > > > > > > > > 
> > > > > > > > > 
> > > > > > > > > 
> > > > > > > > > > -----Ursprüngliche Nachricht-----
> > > > > > > > > > Von: Sashka [mailto:jabberw@...] 
> > > > > > > > > > Gesendet: Dienstag, 10. Februar 2004 12:38
> > > > > > > > > > An: Dittmann Werner; Davanum Srinivas
> > > > > > > > > > Betreff: WSDoAllReceiver/AxisUtil problem report
> > > > > > > > > > 
> > > > > > > > > > 
> > > > > > > > > > Werner, Dims, hi.
> > > > > > > > > > It seems there is a problem in the call to 
> > > > > > > > > >  AxisUtil.updateSOAPMessage(doc, sm) in 
> > WSDoAllReceiver - 
> > > > the 
> > > > > > > > > > document 
> > > > > > > > > > is corrupted while the message is updated in this 
> > point:
> > > > > > > > > > ///---------------------
> > > > > > > > > >     WSSecurityEngineResult wsResult = null;
> > > > > > > > > >     try {
> > > > > > > > > >         wsResult =
> > > > > > > > > >                 secEngine.processSecurityHeader(
> > > > > > > > > >                         doc,
> > > > > > > > > >                         null,
> > > > > > > > > >                         cbHandler,
> > > > > > > > > >                         sigCrypto,
> > > > > > > > > >                         decCrypto);
> > > > > > > > > >     } catch (Exception ex) {
> > > > > > > > > >         throw new AxisFault(
> > > > > > > > > >                 "WSDoAllReceiver: security 
> processing 
> > > > failed",
> > > > > > > > > >                 ex);
> > > > > > > > > >     }
> > > > > > > > > >     try {
> > > > > > > > > >       AxisUtil.updateSOAPMessage(doc, sm); 
> /// <<--- 
> > Here
> > > > > > > > > >     ...........
> > > > > > > > > > ///-------------------------
> > > > > > > > > > 
> > > > > > > > > > Full description.
> > > > > > > > > > ------------------
> > > > > > > > > > I'm testing the WSS4J with a standard basic axis 
> > sample:
> > > > > > > > > > samples.addr. 
> > > > > > > > > > On the call AddressBook.addEntry(String 
> name, Address 
> > > > > > > > addr) <executed 
> > > > > > > > > > as rpc/encoded, for more exactness> I receive 
> > unexpected 
> > > > > > > > server-side 
> > > > > > > > > > exception while Address object deserialization:
> > > > > > > > > > //----- start of except. stack ------------
> > > > > > > > > >     java.lang.NumberFormatException: For 
> input string: 
> > > > > > > '\n1 ' at 
> > > > > > > > > >     java.lang.NumberFormatException.forInputString 
> > > > > > > > > >                                
> > > > > > > (NumberFormatException.java:48) at 
> > > > > > > > > >     java.lang.Integer.parseInt(Integer.java:426) at 
> > > > > > > > > >     
> java.lang.Integer.&lt;init&gt;(Integer.java:567) at
> > > > > > > > > >     
> > sun.reflect.NativeConstructorAccessorImpl.newInstance0
> > > > > > > > > >                                      
> (Native Method) 
> > at 
> > > > > > > > > >     
> > sun.reflect.NativeConstructorAccessorImpl.newInstance
> > > > > > > > > >                        
> > > > > > > (NativeConstructorAccessorImpl.java:39) at 
> > > > > > > > > >     
> > > > sun.reflect.DelegatingConstructorAccessorImpl.newInstance
> > > > > > > > > >                        
> > > > > > > > (DelegatingConstructorAccessorImpl.java:27) at 
> > > > > > > > > >     
> > > > > > > > > > 
> > > > > > > > java.lang.reflect.Constructor.newInstance
> > > > (Constructor.java:274) at 
> > > > > > > > > >     
> > > > org.apache.axis.encoding.ser.SimpleDeserializer.makeValue
> > > > > > > > > >                        
> (SimpleDeserializer.java:284) 
> > at 
> > > > > > > > > >     
> > > > org.apache.axis.encoding.ser.SimpleDeserializer.onEndElement
> > > > > > > > > >                        
> (SimpleDeserializer.java:214) 
> > at 
> > > > > > > > > >     
> > 
> === message truncated ===
> 
> 
> =====
> Davanum Srinivas - http://webservices.apache.org/~dims/
> 
> 
> -------------------------------------------------------
> SF.Net is sponsored by: Speed Start Your Linux Apps Now.
> Build and deploy apps & Web services for Linux with
> a free DVD software kit from IBM. Click Now!
> http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click
> _______________________________________________
> wss4j-devel mailing list
> wss4j-devel@...
> https://lists.sourceforge.net/lists/listinfo/wss4j-devel
> 

-------------------------------------------------------
SF.Net is sponsored by: Speed Start Your Linux Apps Now.
Build and deploy apps & Web services for Linux with
a free DVD software kit from IBM. Click Now!
http://ads.osdn.com/?ad_id56&alloc_id438&op=click

Gmane