[ 
https://issues.apache.org/jira/browse/WSCOMMONS-210?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andreas Veithen reassigned WSCOMMONS-210:
-----------------------------------------

    Assignee: Andreas Veithen

> NullPointerException in DocumentBuilderFactoryImpl
> --------------------------------------------------
>
>                 Key: WSCOMMONS-210
>                 URL: https://issues.apache.org/jira/browse/WSCOMMONS-210
>             Project: WS-Commons
>          Issue Type: Bug
>          Components: AXIOM
>         Environment: Axiom 1.2, Axis2 1.1, JRE 1.4.2, Tomcat 4.1.30
>            Reporter: Johan Roch
>            Assignee: Andreas Veithen
>
> We have a webapp with some Axis2 clients. Axis2 uses Axiom to handle xml. 
> Other parts of the application parse some XML documents. 
> After some time, our webapp starts to use the Axiom DocumentBuilderFactory 
> everywhere(instead of Xerces) and we get some NullPointerException each 
> time in Axiom:
> Example with JasperReport:
>       StackTrace on java.lang.NullPointerException
>               
> org.apache.axiom.om.impl.dom.jaxp.DocumentBuilderFactoryImpl.newDocumentBuilder(DocumentBuilderFactoryImpl.java:73)
>  
>               
> net.sf.jasperreports.engine.util.JRStyledTextParser.<init>(JRStyledTextParser.java:115)
>   
>               
> net.sf.jasperreports.engine.fill.JRBaseFiller.<init>(JRBaseFiller.java:157)
>               
> net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:92)
>               
> net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:74)
>                       // Prepare the parameters for jasper
>                       logger.trace("prepare the parameters for jasper 
> report");                       
>                       Map parameterMap = new HashMap();
>           parameterMap.put(JRParameter.REPORT_LOCALE, new 
> Locale(this.templateContext.getUserLanguage()));
>                       
> parameterMap.put(JRXPathQueryExecuterFactory.PARAMETER_XML_DATA_DOCUMENT, 
> reportDataSource);
>                       // Prepare and open the streams
>                       reportStream = 
> TemplateMessageReporter.class.getClassLoader().getResourceAsStream("TemplateMessages.jasper");
>           outputStream = new FileOutputStream(getReportFilename());
>           // Run the report
>           logger.trace("run jasper report");      
>           JasperRunManager.runReportToPdfStream(reportStream, 
> outputStream,parameterMap);
> ... another one:
>       Caused by: java.lang.NullPointerException
>               at 
> org.apache.axiom.om.impl.dom.jaxp.DocumentBuilderFactoryImpl.newDocumentBuilder(DocumentBuilderFactoryImpl.java:73)
>   
>               at 
> com.notary.util.signature.impl.AbstractVerifierImpl.getDocBuilder(AbstractVerifierImpl.java:116)
>   
>               at 
> com.notary.util.signature.impl.iaik.XadesVerifierImpl.verifySignature(XadesVerifierImpl.java:119)
>               ... 55 more
> ***********************************
> * Debugging Detail - JasperReport *
> ***********************************
> Code:
> -----
> // Prepare the parameters for jasper
> logger.trace("prepare the parameters for jasper report");                     
> Map parameterMap = new HashMap();
> parameterMap.put(JRParameter.REPORT_LOCALE, new 
> Locale(this.templateContext.getUserLanguage()));
> parameterMap.put(JRXPathQueryExecuterFactory.PARAMETER_XML_DATA_DOCUMENT, 
> reportDataSource);
> // Prepare and open the streams
> reportStream = 
> TemplateMessageReporter.class.getClassLoader().getResourceAsStream("TemplateMessages.jasper");
> outputStream = new FileOutputStream(getReportFilename());
> // Run the report
> logger.trace("run jasper report");        
> JasperRunManager.runReportToPdfStream(reportStream, 
> outputStream,parameterMap);
> ** WORKING CASE **
> enotary-kbo.log
> ---------------
> 2007-06-21 17:16:08,668 [http8082-Processor12] DEBUG 
> [JAASContextDispatcherServlet] - doService
> 2007-06-21 17:16:08,668 [http8082-Processor12] DEBUG 
> [JAASContextDispatcherServlet] - Authentication succeed for logon ID = 
> VANBEL00
> 2007-06-21 17:16:08,668 [http8082-Processor12] DEBUG 
> [JAASContextDispatcherServlet] - Current session was associated to logon ID = 
> VANBEL00
> 2007-06-21 17:16:08,668 [http8082-Processor12] DEBUG [DispatcherServlet] - 
> DispatcherServlet with name 'enotary-kbo-web' received request for 
> [/enotary-kbo-web/createExpedition.ctrl]
> 2007-06-21 17:16:10,778 [http8082-Processor12] DEBUG [DispatcherServlet] - 
> Testing handler map 
> [org.springframework.web.servlet.handler.simpleurlhandlermapp...@b5615d] in 
> DispatcherServlet with name 'enotary-kbo-web'
> 2007-06-21 17:16:10,778 [http8082-Processor12] DEBUG [DispatcherServlet] - 
> Testing handler adapter 
> [org.springframework.web.servlet.mvc.simplecontrollerhandleradap...@151a712]
> 2007-06-21 17:16:10,778 [http8082-Processor12] DEBUG [PersonImpl] - 
> dispatching allRoles...
> 2007-06-21 17:16:10,793 [http8082-Processor12] DEBUG [PersonImpl] - allRoles 
> dispateched currentRoles : 1 oldRoles : 0
> 2007-06-21 17:16:11,340 [http8082-Processor12] DEBUG [SimpleFormController] - 
> No errors -> processing submit
> 2007-06-21 17:16:18,653 [http8082-Processor12] DEBUG [DispatcherServlet] - 
> Rendering view [org.springframework.web.servlet.view.InternalResourceView: 
> unnamed; URL [documents.ctrl]] in DispatcherServlet with name 
> 'enotary-kbo-web'
> enotary-document.log
> --------------------
> 2007-06-21 
> 17:16:11,465|http8082-Processor12|DEBUG|DocumentManagerImpl.generateDraftDocument#152
>  : initialize a new template context
> 2007-06-21 
> 17:16:11,465|http8082-Processor12|DEBUG|TemplateBase.loadXmlDocument#259 : 
> load xml document in memory
> 2007-06-21 
> 17:16:11,465|http8082-Processor12|DEBUG|TemplateBase.loadXmlDocument#260 : 
> document : file:///e:/enotary-kbo-files-FA/doc
> ...
> 2007-06-21 
> 17:16:18,497|http8082-Processor12|DEBUG|TemplateMessageReporterImpl.report#87 
> : report error/warning messages
> 2007-06-21 
> 17:16:18,497|http8082-Processor12|DEBUG|TemplateMessageReporterImpl.report#88 
> : report folder : E:/e-notary-documents/Output
> 2007-06-21 
> 17:16:18,497|http8082-Processor12|DEBUG|TemplateMessageReporterImpl.report#98 
> : report filename : 
> E:/e-notary-documents/Output/015_133553-070621-001_20070621171611_errors.pdf
> 2007-06-21 
> 17:16:18,497|http8082-Processor12|DEBUG|TemplateMessageReporterImpl.report#99 
> : #template errors : 0
> 2007-06-21 
> 17:16:18,497|http8082-Processor12|DEBUG|TemplateMessageReporterImpl.report#100
>  : #template warnings : 1
> 2007-06-21 
> 17:16:18,497|http8082-Processor12|DEBUG|TemplateMessageReporterImpl.report#109
>  : generate xml elements for error messages
> 2007-06-21 
> 17:16:18,497|http8082-Processor12|DEBUG|TemplateMessageReporterImpl.report#123
>  : generate xml elements for warning messages
> 2007-06-21 
> 17:16:18,497|http8082-Processor12|DEBUG|TemplateMessageReporterImpl.report#138
>  : prepare the parameters for jasper report
> 2007-06-21 
> 17:16:18,497|http8082-Processor12|DEBUG|TemplateMessageReporterImpl.report#146
>  : run jasper report
> 2007-06-21 
> 17:16:18,512|http8082-Processor12|DEBUG|DocumentManagerImpl.generateDraftDocument#194
>  : returns the errors/warnings generated during the process
> ** ERROR CASE(same user a few minutes later) **
> enotary-kbo.log
> ---------------
> 2007-06-21 17:25:21,622 [http8082-Processor16] DEBUG 
> [JAASContextDispatcherServlet] - doService
> 2007-06-21 17:25:21,637 [http8082-Processor16] DEBUG 
> [JAASContextDispatcherServlet] - Authentication succeed for logon ID = 
> VANBEL00
> 2007-06-21 17:25:21,637 [http8082-Processor16] DEBUG 
> [JAASContextDispatcherServlet] - Current session was associated to logon ID = 
> VANBEL00
> 2007-06-21 17:25:21,637 [http8082-Processor16] DEBUG [DispatcherServlet] - 
> DispatcherServlet with name 'enotary-kbo-web' received request for 
> [/enotary-kbo-web/createExpedition.ctrl]
> 2007-06-21 17:25:23,731 [http8082-Processor16] DEBUG [DispatcherServlet] - 
> Testing handler map 
> [org.springframework.web.servlet.handler.simpleurlhandlermapp...@b5615d] in 
> DispatcherServlet with name 'enotary-kbo-web'
> 2007-06-21 17:25:23,731 [http8082-Processor16] DEBUG [DispatcherServlet] - 
> Testing handler adapter 
> [org.springframework.web.servlet.mvc.simplecontrollerhandleradap...@151a712]
> 2007-06-21 17:25:23,731 [http8082-Processor16] DEBUG [PersonImpl] - 
> dispatching allRoles...
> 2007-06-21 17:25:23,731 [http8082-Processor16] DEBUG [PersonImpl] - allRoles 
> dispateched currentRoles : 1 oldRoles : 0
> 2007-06-21 17:25:24,278 [http8082-Processor16] DEBUG [SimpleFormController] - 
> No errors -> processing submit
> 2007-06-21 17:25:29,059 [http8082-Processor16] DEBUG [DispatcherServlet] - 
> Handler execution resulted in exception - forwarding to resolved error view: 
> ModelAndView: reference to view with name 
> 'com.notary.app.compact.web.jsp.TechnicalException'; model is {exception=
> APPLICATION EXCEPTION - #1182439529059
> ...
>       Errors = []
>       Warnings = [De waarde van de tag  [zetel_bus] is leeg.]
>       DraftDocument = true
>       ProcessingTimeStamp = Thu Jun 21 17:25:24 CEST 2007
>       TemplateContextStatus = Warning
>       FolderId = 133553-070621-001
>       TemplateByteArray = [...@1c8a570
>       java.lang.NullPointerException - null
>       by 
> org.apache.axiom.om.impl.dom.jaxp.DocumentBuilderFactoryImpl.newDocumentBuilder(DocumentBuilderFactoryImpl.java:73)
>       StackTrace on java.lang.NullPointerException
>               
> org.apache.axiom.om.impl.dom.jaxp.DocumentBuilderFactoryImpl.newDocumentBuilder(DocumentBuilderFactoryImpl.java:73)
>               
> net.sf.jasperreports.engine.util.JRStyledTextParser.<init>(JRStyledTextParser.java:115)
>               
> net.sf.jasperreports.engine.fill.JRBaseFiller.<init>(JRBaseFiller.java:157)
>               
> net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:92)
>               
> net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:74)
>               
> net.sf.jasperreports.engine.fill.JRFiller.createFiller(JRFiller.java:147)
>               
> net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:119)
>               
> net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:420)
>               
> net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:383)
>               
> net.sf.jasperreports.engine.JasperRunManager.runReportToPdfStream(JasperRunManager.java:186)
>               
> com.notary.documents.template.TemplateMessageReporterImpl.report(TemplateMessageReporterImpl.java:147)
>               
> com.notary.documents.service.impl.DocumentManagerImpl.generateDraftDocument(DocumentManagerImpl.java:191)
>               
> com.notary.app.compact.prsuc.web.ctrl.CreateExpeditionCtrl.handleUpload(CreateExpeditionCtrl.java:144)
>               
> com.notary.app.compact.prsuc.web.ctrl.CreateExpeditionCtrl.onSubmit(CreateExpeditionCtrl.java:96)
>               
> org.springframework.web.servlet.mvc.SimpleFormController.processFormSubmission(SimpleFormController.java:258)
>               
> org.springframework.web.servlet.mvc.AbstractFormController.handleRequestInternal(AbstractFormController.java:249)
>               
> org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
>               
> org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:44)
>               
> org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:723)
>               
> org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:663)
>               
> com.notary.fwk.web.JAASContextDispatcherServlet.doService(JAASContextDispatcherServlet.java:71)
>               
> org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:394)
>               
> org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:358)
>               javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
>               javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>               
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
>               
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
>               
> com.notary.fwk.web.CheckSessionExpirationFilter.doFilter(CheckSessionExpirationFilter.java:65)
>               
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
>               
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
>               
> com.notary.filters.AuthenticationFilter.doFilter(AuthenticationFilter.java:197)
>               
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
>               
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
>               
> com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118)
>               
> com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)
>               
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
>               
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
>               
> filters.RequestDumperFilter.doFilter(RequestDumperFilter.java:218)
>               
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
>               
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
>               
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
>               
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>               
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>               
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>               
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
>               
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>               
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>               
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>               
> org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2422)
>               
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
>               
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>               
> org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
>               
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
>               
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:163)
>               
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
>               
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>               
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>               
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
>               
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>               
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>               
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>               
> org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:199)
>               
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:828)
>               
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:700)
>               
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:584)
>               
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
>               java.lang.Thread.run(Thread.java:534)
> enotary-document.log
> --------------------
> 2007-06-21 
> 17:25:24,387|http8082-Processor16|DEBUG|DocumentManagerImpl.generateDraftDocument#152
>  : initialize a new template context
> 2007-06-21 
> 17:25:24,387|http8082-Processor16|DEBUG|TemplateBase.loadXmlDocument#259 : 
> load xml document in memory
> 2007-06-21 
> 17:25:24,403|http8082-Processor16|DEBUG|TemplateBase.loadXmlDocument#260 : 
> document : file:///e:/enotary-kbo-files-FA/docs/MarkerDictionary.xml
> ...
> 2007-06-21 
> 17:25:29,043|http8082-Processor16|DEBUG|TemplateMessageReporterImpl.report#87 
> : report error/warning messages
> 2007-06-21 
> 17:25:29,043|http8082-Processor16|DEBUG|TemplateMessageReporterImpl.report#88 
> : report folder : E:/e-notary-documents/Output
> 2007-06-21 
> 17:25:29,043|http8082-Processor16|DEBUG|TemplateMessageReporterImpl.report#98 
> : report filename : 
> E:/e-notary-documents/Output/015_133553-070621-001_20070621172524_errors.pdf
> 2007-06-21 
> 17:25:29,043|http8082-Processor16|DEBUG|TemplateMessageReporterImpl.report#99 
> : #template errors : 0
> 2007-06-21 
> 17:25:29,043|http8082-Processor16|DEBUG|TemplateMessageReporterImpl.report#100
>  : #template warnings : 1
> 2007-06-21 
> 17:25:29,043|http8082-Processor16|DEBUG|TemplateMessageReporterImpl.report#109
>  : generate xml elements for error messages
> 2007-06-21 
> 17:25:29,043|http8082-Processor16|DEBUG|TemplateMessageReporterImpl.report#123
>  : generate xml elements for warning messages
> 2007-06-21 
> 17:25:29,043|http8082-Processor16|DEBUG|TemplateMessageReporterImpl.report#138
>  : prepare the parameters for jasper report
> 2007-06-21 
> 17:25:29,043|http8082-Processor16|DEBUG|TemplateMessageReporterImpl.report#146
>  : run jasper report
> ****************************************
> * Debugging detail - XadesVerifierImpl *
> ****************************************
> 2007-06-21 17:33:47,309 [http8082-Processor9] DEBUG [DispatcherServlet] - 
> DispatcherServlet with name 'enotary-kbo-web' received request for 
> [/enotary-kbo-web/submitDeposit.ctrl]
> 2007-06-21 17:33:47,309 [http8082-Processor9] DEBUG [DispatcherServlet] - 
> Testing handler adapter 
> [org.springframework.web.servlet.mvc.simplecontrollerhandleradap...@151a712]
> 2007-06-21 17:33:47,325 [http8082-Processor9] DEBUG [PersonImpl] - 
> dispatching allRoles...
> 2007-06-21 17:33:47,325 [http8082-Processor9] DEBUG [PersonImpl] - allRoles 
> dispateched currentRoles : 1 oldRoles : 0
> 2007-06-21 17:33:47,434 [http8082-Processor9] ERROR [XadesVerifierImpl] - 
> java.lang.NullPointerException
> 2007-06-21 17:33:47,434 [http8082-Processor9] ERROR [DocumentValidatorImpl] - 
> com.notary.util.signature.exception.TechnicalException: 
> java.lang.NullPointerException null
> 2007-06-21 17:33:47,434 [http8082-Processor9] WARN 
> [EnotaryGenericRuntimeException] - 
> com.notary.exception.EnotaryTechnicalException [78486]
> 2007-06-21 17:33:47,434 [http8082-Processor9] ERROR 
> [EnotaryGenericRuntimeException] - 
> com.notary.util.signature.exception.TechnicalException: 
> java.lang.NullPointerException null
>       at 
> com.notary.util.signature.impl.iaik.XadesVerifierImpl.verifySignature(XadesVerifierImpl.java:219)
>       at 
> com.notary.app.compact.util.impl.DocumentValidatorImpl.validate(DocumentValidatorImpl.java:49)
>       at 
> com.notary.app.compact.folder.validator.CompanyCreationFolderValidator.validateSignedExpedition(CompanyCreationFolderValidator.java:124)
>       at 
> com.notary.app.compact.folder.validator.CompanyCreationFolderValidator.validateReadyForSubmission(CompanyCreationFolderValidator.java:87)
>       at 
> com.notary.app.compact.prsuc.web.ctrl.SubmitDepositCtrl.handleRequestInternal(SubmitDepositCtrl.java:59)
>       at 
> org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
>       at 
> org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:44)
>       at 
> org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:723)
>       at 
> org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:663)
>       at 
> com.notary.fwk.web.JAASContextDispatcherServlet.doService(JAASContextDispatcherServlet.java:71)
>       at 
> org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:394)
>       at 
> org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:348)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
>       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 
> com.notary.fwk.web.CheckSessionExpirationFilter.doFilter(CheckSessionExpirationFilter.java:65)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
>       at 
> com.notary.filters.AuthenticationFilter.doFilter(AuthenticationFilter.java:197)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
>       at 
> com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118)
>       at 
> com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
>       at filters.RequestDumperFilter.doFilter(RequestDumperFilter.java:218)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
>       at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
>       at 
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>       at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>       at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>       at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
>       at 
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>       at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>       at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>       at 
> org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2422)
>       at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
>       at 
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>       at 
> org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
>       at 
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
>       at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:163)
>       at 
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
>       at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>       at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>       at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
>       at 
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>       at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>       at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>       at 
> org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:199)
>       at 
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:828)
>       at 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:700)
>       at 
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:584)
>       at 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
>       at java.lang.Thread.run(Thread.java:534)
> Caused by: java.lang.NullPointerException
>       at 
> org.apache.axiom.om.impl.dom.jaxp.DocumentBuilderFactoryImpl.newDocumentBuilder(DocumentBuilderFactoryImpl.java:73)
>       at 
> com.notary.util.signature.impl.AbstractVerifierImpl.getDocBuilder(AbstractVerifierImpl.java:116)
>       at 
> com.notary.util.signature.impl.iaik.XadesVerifierImpl.verifySignature(XadesVerifierImpl.java:119)
>       ... 55 more
> Code:
> -----
> DocumentBuilder db = getDocBuilder();
> // parse the signature document
> log.debug("Parsing stream...");
> document = db.parse(context.getSignedDocStream());
> protected DocumentBuilder getDocBuilder()throws Exception{
>       // Create a schema validating parser
>       log.debug("Set XSD for validation: " + xsdPath);                
>       //File schemaFile = new File(xsdPath);
>       /*
>        * First look in classpath, then look for a file
>        */
>       URL schemaURL = 
> XadesVerifierImpl.class.getClassLoader().getResource(xsdPath);
>       if(schemaURL==null){
>               schemaURL = new URL("file:///" + xsdPath);
>       }
>       DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
>       dbf.setNamespaceAware(true);
>       dbf.setIgnoringElementContentWhitespace(true);
>       dbf.setExpandEntityReferences(false);
>       boolean validateSchema = verificationPolicy.isValidateSchema();
>       dbf.setValidating(validateSchema);
>       if(validateSchema){
>               dbf.setAttribute(
>                               
> "http://java.sun.com/xml/jaxp/properties/schemaLanguage";,
>                               "http://www.w3.org/2001/XMLSchema";);
>               dbf.setAttribute(
>                               
> "http://java.sun.com/xml/jaxp/properties/schemaSource";,
>                               schemaURL.toExternalForm());
>               dbf.setAttribute(
>                               
> "http://apache.org/xml/features/validation/schema/normalized-value";,
>                               Boolean.FALSE);
>       }
>       DocumentBuilder db = dbf.newDocumentBuilder();
>       errorHandler = new ErrorHandler();
>       db.setErrorHandler(errorHandler);
>       return db;
> }     

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to