You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Rogério Ferreira <ro...@ncc.up.pt> on 2002/06/28 15:48:32 UTC

Security problems: digital signture & encoding.

Hi

I'm having a problem trying to add some security to my service.
I looked at the Axis security sample and use the idea to sign my
messages.

One of the problems is the name os the service that goes in the
SOAP-BODY as an attribute of the method element. The "Canonicalizer"
don't accept a simples name like "DataExchange" for the service, he
needs an URL like "urn:DataExchange" or
"http://localhost:8080/DataExchange". Without the security
"DataExchange" work very well.

The other problem is in the service Handler.I'm using the LogHandler
from the security sample.

This sample only uses digital signature and I need encoding too.
If someone knows how to do it, I will be very thankful.

I need urgent help.

Here is the error.
- Exception:
org.apache.xml.security.c14n.InvalidCanonicalizerException: No message
with ID "signature.Canonicalizer.UnknownCanonicalizer" found in resource
bundle "org/apache/xml/security/resource/xmlsecurity"
	at org.apache.axis.AxisFault.makeFault(AxisFault.java:116)
	at samples.tese.LogHandler.invoke(LogHandler.java:59)
	at
org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:71)
	at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:154)
	at org.apache.axis.SimpleChain.invoke(SimpleChain.java:121)
	at
org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:71)
	at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:154)
	at org.apache.axis.SimpleChain.invoke(SimpleChain.java:121)
	at org.apache.axis.server.AxisServer.invoke(AxisServer.java:288)
	at
org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:576)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
	at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)
	at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
	at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:190)
	at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
	at
org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)
	at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
	at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2343)
	at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
	at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
	at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
	at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
	at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170)
	at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
	at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:468)
	at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
	at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
	at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
	at
org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:1012)
	at
org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1107)
	at java.lang.Thread.run(Thread.java:536)
Caused by: org.apache.xml.security.c14n.InvalidCanonicalizerException:
No message with ID "signature.Canonicalizer.UnknownCanonicalizer" found
in resource bundle "org/apache/xml/security/resource/xmlsecurity"
	at org.apache.xml.security.c14n.Canonicalizer.<init>(Unknown Source)
	at org.apache.xml.security.c14n.Canonicalizer.getInstance(Unknown
Source)
	at org.apache.xml.security.signature.SignedInfo.<init>(Unknown Source)
	at org.apache.xml.security.signature.XMLSignature.<init>(Unknown
Source)
	at samples.tese.LogHandler.invoke(LogHandler.java:50)
	... 40 more