You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@santuario.apache.org by Angel Contreras <ac...@mail.bcb.gov.bo> on 2003/06/11 03:42:51 UTC
RE: Signing a document in AppServer another log
Thank you Paul,
but, I have another trouble now,
Here is my fragment code:
DocumentBuilderFactory dbf = new org.apache.xerces.jaxp.DocumentBuilderFactoryImpl ();
dbf.setNamespaceAware (true);
DocumentBuilder db = dbf.newDocumentBuilder ();
db.setErrorHandler(new org.apache.xml.security.utils.IgnoreAllErrorHandler());
java.io.File f = new java.io.File("/tfi/logs/docenv.xml");
String currentSystemId = f.toURL().toString();
doc = db.parse (new java.io.FileInputStream(f));
CachedXPathAPI xpathAPI = new CachedXPathAPI();
Element contexto = XMLUtils.createDSctx (doc, "ds", Constants.SignatureSpecNS);
Element dsElem = (Element) xpathAPI.selectSingleNode (doc, "//ds:Signature", contexto);
firma = new XMLSignature (dsElem, currentSystemId);
It looks good to me, but here is the message log:
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: java.lang.NullPointerException
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.xerces.dom.CoreDocumentImpl.importNode(CoreDocumentImpl.java:989)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.xerces.dom.CoreDocumentImpl.importNode(CoreDocumentImpl.java:957)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.xerces.dom.CoreDocumentImpl.importNode(CoreDocumentImpl.java:903)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.xml.security.signature.SignedInfo.<init>(SignedInfo.java:198)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.xml.security.signature.XMLSignature.<init>(XMLSignature.java:281)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at transferencia.VerificaFirma.verFirma(Unknown Source)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at transferencia.VerificaFirma.<init>(Unknown Source)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at transferencia.TransferenciaImpl.solicitaTransferencia(Unknown Source)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at transferencia.TransferenciaIF_Tie.invoke_solicitaTransferencia(TransferenciaIF_Tie.java:45)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at transferencia.TransferenciaIF_Tie.processingHook(TransferenciaIF_Tie.java:105)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at com.sun.xml.rpc.server.StreamingHandler.handle(StreamingHandler.java:219)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at com.sun.xml.rpc.server.http.JAXRPCServletDelegate.doPost(JAXRPCServletDelegate.java:280)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at com.sun.xml.rpc.server.http.JAXRPCServlet.doPost(JAXRPCServlet.java:69)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.catalina.core.StandardWrapperValve.invokeServletService(StandardWrapperValve.java:720)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.catalina.core.StandardWrapperValve.access$000(StandardWrapperValve.java:118)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.catalina.core.StandardWrapperValve$1.run(StandardWrapperValve.java:278)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at java.security.AccessController.doPrivileged(Native Method)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:274)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:212)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:203)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at com.iplanet.ias.web.connector.nsapi.NSAPIProcessor.process(NSAPIProcessor.java:157)
[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at com.iplanet.ias.web.WebContainer.service(WebContainer.java:598)
Thank you,
> -----Mensaje original-----
> De: Paul Adams [mailto:padams@ptc.com]
> Enviado el: Martes, 10 de Junio de 2003 10:06 a.m.
> Para: acontreras@mail.bcb.gov.bo; security-dev@xml.apache.org
> Asunto: Re: Signing a document in AppServer
>
>
> I ran into the same problem previously and had to work around
> it in my
> code. Here's the mail I sent and how I got around it. I
> still feel that
> the IdResolver class should be fixed to make use of generic
> DOM interfaces
> and not be hardcoded to xerces.
>
> I had to do something like:
> DocumentBuilderFactory builderFactory = new
> org.apache.xerces.jaxp.DocumentBuilderFactoryImpl ();
>
> -- 04/25/03 9:05 AM --
>
> While testing I ran into the following bit of code in
> org.apahe.xml.security.utils.IdResolver
>
> public static void registerElementById(Element element,
> String idValue) {
>
> Document doc = element.getOwnerDocument();
>
> ((org.apache.xerces.dom.DocumentImpl) doc).putIdentifier(idValue,
> element);
> }
>
> The class cast here causes problems if the default XML parser is not
> xerces. Running my code within the Sun ONE 7.0 application
> server failed
> because it uses the crimson parser by default. To get around
> the problem I
> had to manually force my code to make use of xerces....
>
> I couldn't do something like:
> // using javax.xml.parsers.DocumentBuilderFactory
> DocumentBuilderFactory builderFactory =
> DocumentBuilderFactory.newInstance
> ();
> ... build/parse the DOM to sign ...
>
> and have the signature code reliably work....
>
> Shouldn't any code that makes an assumption on the
> implementation used be
> modified to make use of *only* the org.w3c interfaces?
>
> Rgds,
> -paul
>
>
>
>
> On Mon, 9 Jun 2003 19:44:00 -0400, Angel Contreras
> <ac...@mail.bcb.gov.bo> wrote:
>
> > Hi,
> >
> > I'm having trouble signing a document. I´m using a Sun One
> AppServer7.
> > This
> > is the logs message:
> >
> > [09/Jun/2003:19:33:48] WARNING (13874): CORE3283: stderr:
> > java.lang.ClassCastException
> > [09/Jun/2003:19:33:48] WARNING (13874): CORE3283: stderr: at
> >
> org.apache.xml.security.utils.IdResolver.registerElementById(I
> dResolver.java
> >
> >
> > :111)
> > [09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >
> org.apache.xml.security.signature.ObjectContainer.setId(Object
> Container.java
> >
> >
> > :123)
> > [09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> > transferencia.FirmaDigital.firma(Unknown Source)
> > [09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> > transferencia.FirmaDigital.<init>(Unknown Source)
> > [09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >
> transferencia.TransferenciaImpl.solicitaTransferencia(Unknown Source)
> > [09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >
> transferencia.TransferenciaIF_Tie.invoke_solicitaTransferencia
> (Transferencia
> >
> >
> > IF_Tie.java:45)
> > [09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >
> transferencia.TransferenciaIF_Tie.processingHook(Transferencia
> IF_Tie.java:10
> >
> >
> > 5)
> > [09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >
> com.sun.xml.rpc.server.StreamingHandler.handle(StreamingHandle
> r.java:219)
> > [09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >
> com.sun.xml.rpc.server.http.JAXRPCServletDelegate.doPost(JAXRP
> CServletDelega
> >
> >
> > te.java:280)
> > [09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >
> com.sun.xml.rpc.server.http.JAXRPCServlet.doPost(JAXRPCServlet
> .java:69)
> > [09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> > javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
> > [09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> > javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> > [09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >
> org.apache.catalina.core.StandardWrapperValve.invokeServletSer
> vice(StandardW
> >
> >
> > rapperValve.java:720)
> > [09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >
> org.apache.catalina.core.StandardWrapperValve.access$000(Stand
> ardWrapperValv
> >
> >
> > e.java:118)
> > [09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >
> org.apache.catalina.core.StandardWrapperValve$1.run(StandardWr
> apperValve.jav
> >
> >
> > a:278)
> > [09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> > java.security.AccessController.doPrivileged(Native Method)
> > [09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> rapperValve.ja
> >
> >
> > va:274)
> > [09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:505)
> >
> >
> > [09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >
> org.apache.catalina.core.StandardContextValve.invoke(StandardC
> ontextValve.ja
> >
> >
> > va:212)
> > [09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:505)
> >
> >
> > [09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >
> org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> Valve.java:203
> >
> >
> > )
> > [09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:505)
> >
> >
> > [09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >
> com.iplanet.ias.web.connector.nsapi.NSAPIProcessor.process(NSA
> PIProcessor.ja
> >
> >
> > va:157)
> > [09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> > com.iplanet.ias.web.WebContainer.service(WebContainer.java:598)
> >
> > My classes are the same that I use in JWSDP 1.0.01, but I
> don´t have any
> > problem in It.
> >
> > Thanks,
> >
> > Angel
> >
> >
>
>
>
> --
> Using M2, Opera's revolutionary e-mail client:
> http://www.opera.com/m2/
>
RE: Signing a document in AppServer another log
Posted by Angel Contreras <ac...@mail.bcb.gov.bo>.
Ok.
I've tried with XpathAPI and CachedXpathAPI, both are dicovering the
signature element. The dsElem is not null. I've verified both things.
Could you send me a copy to your code?.
Angel Contreras Joffré
Banco Central de Bolivia
Departamento de Desarrollo
Telf. 591-2-2409090 int. 4922
> -----Mensaje original-----
> De: Paul Adams [mailto:padams@ptc.com]
> Enviado el: Miércoles, 11 de Junio de 2003 10:31 a.m.
> Para: acontreras@mail.bcb.gov.bo
> CC: security-dev@xml.apache.org
> Asunto: Re: Signing a document in AppServer another log
>
>
> best guess would be to look at:
>
> org.apache.xml.security.signature.SignedInfo line 198 and
> start there. Have you verified that xpath is discovering the
> signature element? Is the dsElem variable null? My code is
> a bit more simplistic, it actually walks through the parsed
> dom to find the elements it needs.
>
> Angel Contreras wrote:
>
> >Thank you Paul,
> >but, I have another trouble now,
> >Here is my fragment code:
> > DocumentBuilderFactory dbf = new
> org.apache.xerces.jaxp.DocumentBuilderFactoryImpl ();
> > dbf.setNamespaceAware (true);
> > DocumentBuilder db = dbf.newDocumentBuilder ();
> > db.setErrorHandler(new
> org.apache.xml.security.utils.IgnoreAllErrorHandler());
> > java.io.File f = new
> java.io.File("/tfi/logs/docenv.xml");
> > String currentSystemId = f.toURL().toString();
> > doc = db.parse (new java.io.FileInputStream(f));
> > CachedXPathAPI xpathAPI = new CachedXPathAPI();
> > Element contexto = XMLUtils.createDSctx (doc,
> "ds", Constants.SignatureSpecNS);
> > Element dsElem = (Element)
> xpathAPI.selectSingleNode (doc, "//ds:Signature", contexto);
> > firma = new XMLSignature (dsElem, currentSystemId);
> >
> >It looks good to me, but here is the message log:
> >
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> java.lang.NullPointerException
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at
> org.apache.xerces.dom.CoreDocumentImpl.importNode(CoreDocument
> Impl.java:989)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at
> org.apache.xerces.dom.CoreDocumentImpl.importNode(CoreDocument
> Impl.java:957)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at
> org.apache.xerces.dom.CoreDocumentImpl.importNode(CoreDocument
> Impl.java:903)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at
> org.apache.xml.security.signature.SignedInfo.<init>(SignedInfo
> .java:198)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at
> org.apache.xml.security.signature.XMLSignature.<init>(XMLSigna
> ture.java:281)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at transferencia.VerificaFirma.verFirma(Unknown Source)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at transferencia.VerificaFirma.<init>(Unknown Source)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at
> transferencia.TransferenciaImpl.solicitaTransferencia(Unknown
> Source)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at
> transferencia.TransferenciaIF_Tie.invoke_solicitaTransferencia
> (TransferenciaIF_Tie.java:45)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at
> transferencia.TransferenciaIF_Tie.processingHook(Transferencia
> IF_Tie.java:105)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at
> com.sun.xml.rpc.server.StreamingHandler.handle(StreamingHandle
> r.java:219)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at
> com.sun.xml.rpc.server.http.JAXRPCServletDelegate.doPost(JAXRP
> CServletDelegate.java:280)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at
> com.sun.xml.rpc.server.http.JAXRPCServlet.doPost(JAXRPCServlet
> .java:69)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at
> org.apache.catalina.core.StandardWrapperValve.invokeServletSer
> vice(StandardWrapperValve.java:720)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at
> org.apache.catalina.core.StandardWrapperValve.access$000(Stand
> ardWrapperValve.java:118)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at
> org.apache.catalina.core.StandardWrapperValve$1.run(StandardWr
> apperValve.java:278)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at java.security.AccessController.doPrivileged(Native Method)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> rapperValve.java:274)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:505)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardC
> ontextValve.java:212)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:505)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> Valve.java:203)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:505)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at
> com.iplanet.ias.web.connector.nsapi.NSAPIProcessor.process(NSA
> PIProcessor.java:157)
> >[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr:
> at com.iplanet.ias.web.WebContainer.service(WebContainer.java:598)
> >
> >Thank you,
> >
> >
> >
> >>-----Mensaje original-----
> >>De: Paul Adams [mailto:padams@ptc.com]
> >>Enviado el: Martes, 10 de Junio de 2003 10:06 a.m.
> >>Para: acontreras@mail.bcb.gov.bo; security-dev@xml.apache.org
> >>Asunto: Re: Signing a document in AppServer
> >>
> >>
> >>I ran into the same problem previously and had to work around
> >>it in my
> >>code. Here's the mail I sent and how I got around it. I
> >>still feel that
> >>the IdResolver class should be fixed to make use of generic
> >>DOM interfaces
> >>and not be hardcoded to xerces.
> >>
> >>I had to do something like:
> >>DocumentBuilderFactory builderFactory = new
> >>org.apache.xerces.jaxp.DocumentBuilderFactoryImpl ();
> >>
> >>-- 04/25/03 9:05 AM --
> >>
> >>While testing I ran into the following bit of code in
> >>org.apahe.xml.security.utils.IdResolver
> >>
> >> public static void registerElementById(Element element,
> >>String idValue) {
> >>
> >> Document doc = element.getOwnerDocument();
> >>
> >> ((org.apache.xerces.dom.DocumentImpl)
> doc).putIdentifier(idValue,
> >> element);
> >> }
> >>
> >>The class cast here causes problems if the default XML
> parser is not
> >>xerces. Running my code within the Sun ONE 7.0 application
> >>server failed
> >>because it uses the crimson parser by default. To get around
> >>the problem I
> >>had to manually force my code to make use of xerces....
> >>
> >>I couldn't do something like:
> >>// using javax.xml.parsers.DocumentBuilderFactory
> >>DocumentBuilderFactory builderFactory =
> >>DocumentBuilderFactory.newInstance
> >>();
> >>... build/parse the DOM to sign ...
> >>
> >>and have the signature code reliably work....
> >>
> >>Shouldn't any code that makes an assumption on the
> >>implementation used be
> >>modified to make use of *only* the org.w3c interfaces?
> >>
> >>Rgds,
> >>-paul
> >>
> >>
> >>
> >>
> >>On Mon, 9 Jun 2003 19:44:00 -0400, Angel Contreras
> >><ac...@mail.bcb.gov.bo> wrote:
> >>
> >>
> >>
> >>>Hi,
> >>>
> >>>I'm having trouble signing a document. I´m using a Sun One
> >>>
> >>>
> >>AppServer7.
> >>
> >>
> >>>This
> >>>is the logs message:
> >>>
> >>>[09/Jun/2003:19:33:48] WARNING (13874): CORE3283: stderr:
> >>>java.lang.ClassCastException
> >>>[09/Jun/2003:19:33:48] WARNING (13874): CORE3283: stderr: at
> >>>
> >>>
> >>>
> >>org.apache.xml.security.utils.IdResolver.registerElementById(I
> >>dResolver.java
> >>
> >>
> >>>:111)
> >>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >>>
> >>>
> >>>
> >>org.apache.xml.security.signature.ObjectContainer.setId(Object
> >>Container.java
> >>
> >>
> >>>:123)
> >>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >>>transferencia.FirmaDigital.firma(Unknown Source)
> >>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >>>transferencia.FirmaDigital.<init>(Unknown Source)
> >>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >>>
> >>>
> >>>
> >>transferencia.TransferenciaImpl.solicitaTransferencia(Unknow
> n Source)
> >>
> >>
> >>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >>>
> >>>
> >>>
> >>transferencia.TransferenciaIF_Tie.invoke_solicitaTransferencia
> >>(Transferencia
> >>
> >>
> >>>IF_Tie.java:45)
> >>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >>>
> >>>
> >>>
> >>transferencia.TransferenciaIF_Tie.processingHook(Transferencia
> >>IF_Tie.java:10
> >>
> >>
> >>>5)
> >>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >>>
> >>>
> >>>
> >>com.sun.xml.rpc.server.StreamingHandler.handle(StreamingHandle
> >>r.java:219)
> >>
> >>
> >>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >>>
> >>>
> >>>
> >>com.sun.xml.rpc.server.http.JAXRPCServletDelegate.doPost(JAXRP
> >>CServletDelega
> >>
> >>
> >>>te.java:280)
> >>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >>>
> >>>
> >>>
> >>com.sun.xml.rpc.server.http.JAXRPCServlet.doPost(JAXRPCServlet
> >>.java:69)
> >>
> >>
> >>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >>>javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
> >>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >>>javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> >>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >>>
> >>>
> >>>
> >>org.apache.catalina.core.StandardWrapperValve.invokeServletSer
> >>vice(StandardW
> >>
> >>
> >>>rapperValve.java:720)
> >>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >>>
> >>>
> >>>
> >>org.apache.catalina.core.StandardWrapperValve.access$000(Stand
> >>ardWrapperValv
> >>
> >>
> >>>e.java:118)
> >>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >>>
> >>>
> >>>
> >>org.apache.catalina.core.StandardWrapperValve$1.run(StandardWr
> >>apperValve.jav
> >>
> >>
> >>>a:278)
> >>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >>>java.security.AccessController.doPrivileged(Native Method)
> >>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >>>
> >>>
> >>>
> >>org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> >>rapperValve.ja
> >>
> >>
> >>>va:274)
> >>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >>>
> >>>
> >>>
> >>org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> >>ine.java:505)
> >>
> >>
> >>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >>>
> >>>
> >>>
> >>org.apache.catalina.core.StandardContextValve.invoke(StandardC
> >>ontextValve.ja
> >>
> >>
> >>>va:212)
> >>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >>>
> >>>
> >>>
> >>org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> >>ine.java:505)
> >>
> >>
> >>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >>>
> >>>
> >>>
> >>org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> >>Valve.java:203
> >>
> >>
> >>>)
> >>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >>>
> >>>
> >>>
> >>org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> >>ine.java:505)
> >>
> >>
> >>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >>>
> >>>
> >>>
> >>com.iplanet.ias.web.connector.nsapi.NSAPIProcessor.process(NSA
> >>PIProcessor.ja
> >>
> >>
> >>>va:157)
> >>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
> >>>com.iplanet.ias.web.WebContainer.service(WebContainer.java:598)
> >>>
> >>>My classes are the same that I use in JWSDP 1.0.01, but I
> >>>
> >>>
> >>don´t have any
> >>
> >>
> >>>problem in It.
> >>>
> >>>Thanks,
> >>>
> >>>Angel
> >>>
> >>>
> >>>
> >>>
> >>
> >>--
> >>Using M2, Opera's revolutionary e-mail client:
> >>http://www.opera.com/m2/
> >>
> >>
> >>
> >
> >
> >
>
Re: Signing a document in AppServer another log
Posted by Paul Adams <pa...@ptc.com>.
best guess would be to look at:
org.apache.xml.security.signature.SignedInfo line 198 and start there. Have you verified that xpath is discovering the signature element? Is the dsElem variable null? My code is a bit more simplistic, it actually walks through the parsed dom to find the elements it needs.
Angel Contreras wrote:
>Thank you Paul,
>but, I have another trouble now,
>Here is my fragment code:
> DocumentBuilderFactory dbf = new org.apache.xerces.jaxp.DocumentBuilderFactoryImpl ();
> dbf.setNamespaceAware (true);
> DocumentBuilder db = dbf.newDocumentBuilder ();
> db.setErrorHandler(new org.apache.xml.security.utils.IgnoreAllErrorHandler());
> java.io.File f = new java.io.File("/tfi/logs/docenv.xml");
> String currentSystemId = f.toURL().toString();
> doc = db.parse (new java.io.FileInputStream(f));
> CachedXPathAPI xpathAPI = new CachedXPathAPI();
> Element contexto = XMLUtils.createDSctx (doc, "ds", Constants.SignatureSpecNS);
> Element dsElem = (Element) xpathAPI.selectSingleNode (doc, "//ds:Signature", contexto);
> firma = new XMLSignature (dsElem, currentSystemId);
>
>It looks good to me, but here is the message log:
>
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: java.lang.NullPointerException
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.xerces.dom.CoreDocumentImpl.importNode(CoreDocumentImpl.java:989)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.xerces.dom.CoreDocumentImpl.importNode(CoreDocumentImpl.java:957)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.xerces.dom.CoreDocumentImpl.importNode(CoreDocumentImpl.java:903)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.xml.security.signature.SignedInfo.<init>(SignedInfo.java:198)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.xml.security.signature.XMLSignature.<init>(XMLSignature.java:281)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at transferencia.VerificaFirma.verFirma(Unknown Source)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at transferencia.VerificaFirma.<init>(Unknown Source)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at transferencia.TransferenciaImpl.solicitaTransferencia(Unknown Source)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at transferencia.TransferenciaIF_Tie.invoke_solicitaTransferencia(TransferenciaIF_Tie.java:45)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at transferencia.TransferenciaIF_Tie.processingHook(TransferenciaIF_Tie.java:105)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at com.sun.xml.rpc.server.StreamingHandler.handle(StreamingHandler.java:219)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at com.sun.xml.rpc.server.http.JAXRPCServletDelegate.doPost(JAXRPCServletDelegate.java:280)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at com.sun.xml.rpc.server.http.JAXRPCServlet.doPost(JAXRPCServlet.java:69)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.catalina.core.StandardWrapperValve.invokeServletService(StandardWrapperValve.java:720)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.catalina.core.StandardWrapperValve.access$000(StandardWrapperValve.java:118)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.catalina.core.StandardWrapperValve$1.run(StandardWrapperValve.java:278)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at java.security.AccessController.doPrivileged(Native Method)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:274)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:212)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:203)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at com.iplanet.ias.web.connector.nsapi.NSAPIProcessor.process(NSAPIProcessor.java:157)
>[10/Jun/2003:21:29:42] WARNING (16805): CORE3283: stderr: at com.iplanet.ias.web.WebContainer.service(WebContainer.java:598)
>
>Thank you,
>
>
>
>>-----Mensaje original-----
>>De: Paul Adams [mailto:padams@ptc.com]
>>Enviado el: Martes, 10 de Junio de 2003 10:06 a.m.
>>Para: acontreras@mail.bcb.gov.bo; security-dev@xml.apache.org
>>Asunto: Re: Signing a document in AppServer
>>
>>
>>I ran into the same problem previously and had to work around
>>it in my
>>code. Here's the mail I sent and how I got around it. I
>>still feel that
>>the IdResolver class should be fixed to make use of generic
>>DOM interfaces
>>and not be hardcoded to xerces.
>>
>>I had to do something like:
>>DocumentBuilderFactory builderFactory = new
>>org.apache.xerces.jaxp.DocumentBuilderFactoryImpl ();
>>
>>-- 04/25/03 9:05 AM --
>>
>>While testing I ran into the following bit of code in
>>org.apahe.xml.security.utils.IdResolver
>>
>> public static void registerElementById(Element element,
>>String idValue) {
>>
>> Document doc = element.getOwnerDocument();
>>
>> ((org.apache.xerces.dom.DocumentImpl) doc).putIdentifier(idValue,
>> element);
>> }
>>
>>The class cast here causes problems if the default XML parser is not
>>xerces. Running my code within the Sun ONE 7.0 application
>>server failed
>>because it uses the crimson parser by default. To get around
>>the problem I
>>had to manually force my code to make use of xerces....
>>
>>I couldn't do something like:
>>// using javax.xml.parsers.DocumentBuilderFactory
>>DocumentBuilderFactory builderFactory =
>>DocumentBuilderFactory.newInstance
>>();
>>... build/parse the DOM to sign ...
>>
>>and have the signature code reliably work....
>>
>>Shouldn't any code that makes an assumption on the
>>implementation used be
>>modified to make use of *only* the org.w3c interfaces?
>>
>>Rgds,
>>-paul
>>
>>
>>
>>
>>On Mon, 9 Jun 2003 19:44:00 -0400, Angel Contreras
>><ac...@mail.bcb.gov.bo> wrote:
>>
>>
>>
>>>Hi,
>>>
>>>I'm having trouble signing a document. I´m using a Sun One
>>>
>>>
>>AppServer7.
>>
>>
>>>This
>>>is the logs message:
>>>
>>>[09/Jun/2003:19:33:48] WARNING (13874): CORE3283: stderr:
>>>java.lang.ClassCastException
>>>[09/Jun/2003:19:33:48] WARNING (13874): CORE3283: stderr: at
>>>
>>>
>>>
>>org.apache.xml.security.utils.IdResolver.registerElementById(I
>>dResolver.java
>>
>>
>>>:111)
>>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
>>>
>>>
>>>
>>org.apache.xml.security.signature.ObjectContainer.setId(Object
>>Container.java
>>
>>
>>>:123)
>>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
>>>transferencia.FirmaDigital.firma(Unknown Source)
>>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
>>>transferencia.FirmaDigital.<init>(Unknown Source)
>>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
>>>
>>>
>>>
>>transferencia.TransferenciaImpl.solicitaTransferencia(Unknown Source)
>>
>>
>>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
>>>
>>>
>>>
>>transferencia.TransferenciaIF_Tie.invoke_solicitaTransferencia
>>(Transferencia
>>
>>
>>>IF_Tie.java:45)
>>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
>>>
>>>
>>>
>>transferencia.TransferenciaIF_Tie.processingHook(Transferencia
>>IF_Tie.java:10
>>
>>
>>>5)
>>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
>>>
>>>
>>>
>>com.sun.xml.rpc.server.StreamingHandler.handle(StreamingHandle
>>r.java:219)
>>
>>
>>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
>>>
>>>
>>>
>>com.sun.xml.rpc.server.http.JAXRPCServletDelegate.doPost(JAXRP
>>CServletDelega
>>
>>
>>>te.java:280)
>>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
>>>
>>>
>>>
>>com.sun.xml.rpc.server.http.JAXRPCServlet.doPost(JAXRPCServlet
>>.java:69)
>>
>>
>>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
>>>javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
>>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
>>>javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
>>>
>>>
>>>
>>org.apache.catalina.core.StandardWrapperValve.invokeServletSer
>>vice(StandardW
>>
>>
>>>rapperValve.java:720)
>>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
>>>
>>>
>>>
>>org.apache.catalina.core.StandardWrapperValve.access$000(Stand
>>ardWrapperValv
>>
>>
>>>e.java:118)
>>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
>>>
>>>
>>>
>>org.apache.catalina.core.StandardWrapperValve$1.run(StandardWr
>>apperValve.jav
>>
>>
>>>a:278)
>>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
>>>java.security.AccessController.doPrivileged(Native Method)
>>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
>>>
>>>
>>>
>>org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
>>rapperValve.ja
>>
>>
>>>va:274)
>>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
>>>
>>>
>>>
>>org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
>>ine.java:505)
>>
>>
>>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
>>>
>>>
>>>
>>org.apache.catalina.core.StandardContextValve.invoke(StandardC
>>ontextValve.ja
>>
>>
>>>va:212)
>>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
>>>
>>>
>>>
>>org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
>>ine.java:505)
>>
>>
>>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
>>>
>>>
>>>
>>org.apache.catalina.core.StandardHostValve.invoke(StandardHost
>>Valve.java:203
>>
>>
>>>)
>>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
>>>
>>>
>>>
>>org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
>>ine.java:505)
>>
>>
>>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
>>>
>>>
>>>
>>com.iplanet.ias.web.connector.nsapi.NSAPIProcessor.process(NSA
>>PIProcessor.ja
>>
>>
>>>va:157)
>>>[09/Jun/2003:19:33:49] WARNING (13874): CORE3283: stderr: at
>>>com.iplanet.ias.web.WebContainer.service(WebContainer.java:598)
>>>
>>>My classes are the same that I use in JWSDP 1.0.01, but I
>>>
>>>
>>don´t have any
>>
>>
>>>problem in It.
>>>
>>>Thanks,
>>>
>>>Angel
>>>
>>>
>>>
>>>
>>
>>--
>>Using M2, Opera's revolutionary e-mail client:
>>http://www.opera.com/m2/
>>
>>
>>
>
>
>