Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Duplicate
-
None
-
None
-
None
-
None
-
Axiom 1.2, Axis2 1.1, JRE 1.4.2, Tomcat 4.1.30
Description
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.SimpleUrlHandlerMapping@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.SimpleControllerHandlerAdapter@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.SimpleUrlHandlerMapping@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.SimpleControllerHandlerAdapter@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 = [B@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.SimpleControllerHandlerAdapter@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;
}
Attachments
Issue Links
- duplicates
-
AXIS2-1570 Rampart/Axiom is not thread safe
- Resolved
- relates to
-
AXIOM-332 Get rid of the setDOOMRequired hack
- Closed