Return-Path: Delivered-To: apmail-xml-axis-dev-archive@xml.apache.org Received: (qmail 39942 invoked by uid 500); 14 Feb 2002 01:06:39 -0000 Mailing-List: contact axis-dev-help@xml.apache.org; run by ezmlm Precedence: bulk Reply-To: axis-dev@xml.apache.org list-help: list-unsubscribe: list-post: Delivered-To: mailing list axis-dev@xml.apache.org Received: (qmail 39933 invoked from network); 14 Feb 2002 01:06:39 -0000 Subject: Re: Weird serialization behavior in Client side handler From: "Theodore W. Leung" To: Davanum Srinivas Cc: axis-dev@xml.apache.org In-Reply-To: <20020213170856.15814.qmail@web12801.mail.yahoo.com> References: <20020213170856.15814.qmail@web12801.mail.yahoo.com> Content-Type: text/plain Content-Transfer-Encoding: 7bit X-Mailer: Evolution/1.0.2 Date: 13 Feb 2002 17:06:53 -0800 Message-Id: <1013648813.21480.109.camel@dev> Mime-Version: 1.0 X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N I'm having build problems -- it's log4j related. I got the very latest from CVS and that built to 1.2beta3 is that what you are using. Glen was going to check something in to allow this to work... I'll look at the exceptions once I can build it all. Ted On Wed, 2002-02-13 at 09:08, Davanum Srinivas wrote: > Ted, > > We are past this point now :) Please take a look. > > - You will need to use latest code from CVS for jakarta-log4j, xml-security and xml-axis. > - updated build scripts to automatically run the signing and verification steps if the security > classes are present. > - We still have the relative namespace problem with AdminService. > - There are some exceptions in TestTCPTransportSample sample. > > Thanks, > dims > > --- "Theodore W. Leung" wrote: > > Hi, > > > > I've back to working on transparent digital signature of the functional > > tests. I've run into a problem that I don't know how to solve: > > Sometime the client-side signer samples.security.ClientSigningHandler > > works just fine -- most notably when used with > > org.apache.axis.client.AdminClient. I can deploy all the services that > > I want and the deployment requests all get signed just fine. When I > > actually try to run a deployed test, I get: > > > > > > Beginning Client signing... > > java.io.IOException: No serializer found for class java.lang.String in > > registry org.apache.axis.encoding.SerializationContextImpl@5c62d539 > > at > > > org.apache.axis.encoding.SerializationContextImpl.serializeActual(SerializationContextImpl.java:864) > > at > > org.apache.axis.encoding.SerializationContextImpl.serialize(SerializationContextImpl.java:526) > > at org.apache.axis.message.RPCParam.serialize(RPCParam.java:133) > > at org.apache.axis.message.RPCElement.outputImpl(RPCElement.java:198) > > at > > org.apache.axis.message.MessageElement.output(MessageElement.java:481) > > at > > org.apache.axis.message.SOAPEnvelope.outputImpl(SOAPEnvelope.java:439) > > at > > org.apache.axis.message.MessageElement.output(MessageElement.java:481) > > at > > org.apache.axis.message.MessageElement.getAsDocument(MessageElement.java:423) > > at > > samples.security.SignedSOAPEnvelope.init(SignedSOAPEnvelope.java:118) > > at > > samples.security.SignedSOAPEnvelope.(SignedSOAPEnvelope.java:101) > > at > > samples.security.ClientSigningHandler.invoke(ClientSigningHandler.java:99) > > at > > org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:71) > > at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:151) > > at org.apache.axis.SimpleChain.invoke(SimpleChain.java:118) > > at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165) > > at org.apache.axis.client.Call.invoke(Call.java:1510) > > at org.apache.axis.client.Call.invoke(Call.java:1327) > > at org.apache.axis.client.Call.invoke(Call.java:1257) > > at org.apache.axis.client.Call.invoke(Call.java:854) > > at samples.stock.GetQuote.getQuote(GetQuote.java:124) > > at samples.stock.GetQuote.main(GetQuote.java:138) > > AxisFault > > faultCode: http://xml.apache.org/axis/:Server.userException > > faultString: java.lang.RuntimeException: java.io.IOException: No > > serializer found for class java.lang.String in registry > > org.apache.axis.encoding.SerializationContextImpl@5c62d539 > > faultActor: null > > faultDetail: > > stackTrace: java.lang.RuntimeException: java.io.IOException: No > > serializer found for class java.lang.String in registry > > org.apache.axis.encoding.SerializationContextImpl@5c62d539 > > at > > samples.security.SignedSOAPEnvelope.init(SignedSOAPEnvelope.java:161) > > at > > samples.security.SignedSOAPEnvelope.(SignedSOAPEnvelope.java:101) > > at > > samples.security.ClientSigningHandler.invoke(ClientSigningHandler.java:99) > > at > > org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:71) > > at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:151) > > at org.apache.axis.SimpleChain.invoke(SimpleChain.java:118) > > at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165) > > at org.apache.axis.client.Call.invoke(Call.java:1510) > > at org.apache.axis.client.Call.invoke(Call.java:1327) > > at org.apache.axis.client.Call.invoke(Call.java:1257) > > at org.apache.axis.client.Call.invoke(Call.java:854) > > at samples.stock.GetQuote.getQuote(GetQuote.java:124) > > > > at samples.stock.GetQuote.main(GetQuote.java:138) > > > > > > The client handler works by getting the request message out of the > > MessageContext that is passed to the handler's invoke method. It then > > calls getSOAPEnvelope() to get an Envelope that can be signed. Signing > > happens by creating a SignedSOAPEnvelope from the unsigned envelope. In > > order to sign the envelope, I need to get it as a DOM tree. Calling > > getAsDocument on the unsigned envelope is what causes the blowup. > > > > It appears that the SerializationContextImpl that is being created is > > being created with no mappings. I'm not familiar enough (yet) with the > > code to figure out where the mappings should be getting created in this > > case. > > > > Any pointers would be greatly appreciated. > > > > > > On a related note: A number of the tests us relative URIs for namespace > > values in the .wsdl files. This turns into pain under XML Signature > > because we have to canonicalize the message. It would save a lot of > > hassle if we stopped using these relative URIs. > > > > Ted > > > > > > > ===== > Davanum Srinivas - http://jguru.com/dims/ > > __________________________________________________ > Do You Yahoo!? > Send FREE Valentine eCards with Yahoo! Greetings! > http://greetings.yahoo.com