Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

    Cannot export SVG images to PDF.

    I'm running into an error when exporting SVG images to PDF. I have already run into the issue with batik jar files missing from my classpath (per http://forums.smartclient.com/showthread.php?t=32196), but I'm still receiving errors in Tomcat. The export does not fail without SVG images. If I use showPrintPreview() instead of exportContent(), I don't see the same issue (source: http://forums.smartclient.com/showthread.php?t=25536).

    I'm not sure what I'm doing wrong here, please help point me in the right direction. Thank you.

    SmartClient Version: v9.1p_2014-08-24/Pro Deployment (built 2014-08-24), Chrome (Version 40.0.2214.111 (64-bit)), OSX 10.8.5.

    Client-side code:

    Code:
    function exportToPdf() {
    	isc.HTMLFlow.create({
    		ID: "TempFlow",
    		width: 1210,
    		height: 950,
    		contents: $('#myChart').html()
    	});
    
    	settings = {
    		skinName: "Enterprise",
    		pdfName: "svg-export"
    	};
    	isc.RPCManager.exportContent(TempFlow, settings);
    
    }
    SVG span I'm attempting to export to PDF:

    Code:
    <div id="myChart">
    <span id="greenRedChart" class="fusioncharts-container" style="position: relative; text-align: left; line-height: normal; display: inline-block; zoom: 1; font-weight: normal; font-variant: normal; font-style: normal; text-decoration: none; padding: 0px; margin: 0px; border: none; width: 300px; height: 260px;"><svg height="260" version="1.1" width="300" xmlns="http://www.w3.org/2000/svg" id="raphael-paper-331" style="overflow: hidden; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); -webkit-user-select: none; cursor: default; position: relative; background-color: rgb(255, 255, 255);"><desc>Pie Chart</desc><defs><radialGradient id="331-xr___85_150_114.5__rgba_141_187_24_1__0-rgba_141_187_24_1__100" r="85" cx="150" cy="114.5" fx="150" fy="114.5"><stop offset="0%" stop-color="#8dbb18" stop-opacity="1"></stop><stop offset="100%" stop-color="#8dbb18" stop-opacity="1"></stop></radialGradient><radialGradient id="331-xr___85_150_114.5__rgba_187_31_19_1__0-rgba_187_31_19_1__100" r="85" cx="150" cy="114.5" fx="150" fy="114.5"><stop offset="0%" stop-color="#bb1f13" stop-opacity="1"></stop><stop offset="100%" stop-color="#bb1f13" stop-opacity="1"></stop></radialGradient><radialGradient id="331-xr___85_150_114.5__rgba_170_166_161_1__0-rgba_170_166_161_1__100" r="85" cx="150" cy="114.5" fx="150" fy="114.5"><stop offset="0%" stop-color="#aaa6a1" stop-opacity="1"></stop><stop offset="100%" stop-color="#aaa6a1" stop-opacity="1"></stop></radialGradient></defs><g class="raphael-group-332-background"><rect x="0" y="0" width="300" height="260" stroke="none" fill-opacity="1" fill="#f3f1f1" rx="0" ry="0" style="stroke: none; fill-opacity: 1; fill: rgb(243, 241, 241);"></rect><rect x="0" y="0" width="300" height="260" stroke="#767575" stroke-opacity="0.5" stroke-width="0" fill="none" rx="0" ry="0" style="stroke: rgb(118, 117, 117); stroke-opacity: 0.5; fill: none;"></rect></g><g class="raphael-group-333-dataset"><g></g><path d="M71.47023973654063,81.97190824896737A85,85,0,0,1,235,114.5L150,114.5Z" fill="url('#331-xr___85_150_114.5__rgba_141_187_24_1__0-rgba_141_187_24_1__100')" stroke="#e3eec6" stroke-width="1" stroke-linejoin="round" stroke-opacity="0.8" opacity="1" fill-opacity="1" style="stroke: rgb(227, 238, 198); stroke-linejoin: round; stroke-opacity: 0.8; opacity: 1; fill-opacity: 1;" transform="matrix(1,0,0,1,0.9755,-4.9039)"></path><text x="178.92376123556446" y="14.4599013988705" stroke="none" fill="#555555" text-anchor="start" style="stroke: none; fill: rgb(85, 85, 85); text-anchor: start; font-family: Verdana, sans; font-size: 10px; font-weight: normal; font-style: normal; fill-opacity: 1;" font-family="Verdana,sans" font-size="10px" font-weight="normal" font-style="normal" fill-opacity="1"><tspan dy="3.9989638988704996" x="178.92376123556446">44%</tspan></text><path d="M167.55812898145155,26.229324763709258L168.92376123556446,14.4599013988705L173.92376123556446,14.4599013988705" fill="none" stroke="#767575" stroke-width="0.7" stroke-opacity="1" style="fill: none; stroke: rgb(118, 117, 117); stroke-opacity: 1;"></path><path d="M235,114.50000000000001A85,85,0,1,1,71.47023973654063,81.97190824896737L150,114.5Z" fill="url('#331-xr___85_150_114.5__rgba_187_31_19_1__0-rgba_187_31_19_1__100')" stroke="#eec7c4" stroke-width="1" stroke-linejoin="round" stroke-opacity="0.8" opacity="1" fill-opacity="1" style="stroke: rgb(238, 199, 196); stroke-linejoin: round; stroke-opacity: 0.8; opacity: 1; fill-opacity: 1;" transform="matrix(1,0,0,1,0,0)"></path><text x="122.0516903745162" y="214.5400986011295" stroke="none" fill="#555555" text-anchor="end" style="stroke: none; fill: rgb(85, 85, 85); text-anchor: end; font-family: Verdana, sans; font-size: 10px; font-weight: normal; font-style: normal; fill-opacity: 1;" font-family="Verdana,sans" font-size="10px" font-weight="normal" font-style="normal" fill-opacity="1"><tspan dy="4.0010361011295" x="122.0516903745162">56%</tspan></text><path d="M133.41732262862908,197.86674883427457L132.0516903745162,214.5400986011295L127.0516903745162,214.5400986011295" fill="none" stroke="#767575" stroke-width="0.7" stroke-opacity="1" style="fill: none; stroke: rgb(118, 117, 117); stroke-opacity: 1;"></path><path d="M235,114.50000000000001L150,114.5Z" fill="url('#331-xr___85_150_114.5__rgba_170_166_161_1__0-rgba_170_166_161_1__100')" stroke="#eae9e8" stroke-width="1" stroke-linejoin="round" stroke-opacity="0.8" opacity="1" fill-opacity="1" style="stroke: rgb(234, 233, 232); stroke-linejoin: round; stroke-opacity: 0.8; opacity: 1; fill-opacity: 1;" transform="matrix(1,0,0,1,0,0)"></path><text x="251.88939910886893" y="119.5" stroke="none" fill="#555555" text-anchor="start" style="stroke: none; fill: rgb(85, 85, 85); text-anchor: start; font-family: Verdana, sans; font-size: 10px; font-weight: normal; font-style: normal; fill-opacity: 1;" font-family="Verdana,sans" font-size="10px" font-weight="normal" font-style="normal" fill-opacity="1"><tspan dy="4" x="251.88939910886893">0%</tspan></text><path d="M235,114.5L241.88939910886893,119.5L246.88939910886893,119.5" fill="none" stroke="#767575" stroke-width="0.7" stroke-opacity="1" style="fill: none; stroke: rgb(118, 117, 117); stroke-opacity: 1;"></path></g><g class="fusioncharts-legend" transform="matrix(1,0,0,1,40.5,220.5)"><rect x="0" y="0" width="219" height="25" rx="0" ry="0" stroke="#f3f1f1" stroke-opacity="1" stroke-width="1" fill-opacity="1" fill="#f3f1f1" style="stroke: rgb(243, 241, 241); stroke-opacity: 1; fill-opacity: 1; fill: rgb(243, 241, 241);"></rect><text class="fusioncharts-legenditem" x="23" y="6.5" fill="#555555" text-anchor="start" font-size="10px" stroke="none" style="fill: rgb(85, 85, 85); text-anchor: start; cursor: pointer; font-size: 10px; stroke: none;"><tspan dy="9.5" x="23">Green</tspan></text><path d="M13.5,11.5L13.5,7.55A3.95,3.95,0,0,1,17.45,11.5ZM11.5,13.5L11.5,8.55A4.95,4.95,0,1,0,16.45,13.5Z" stroke-width="0.5" stroke="#bbd674" fill-opacity="1" fill="#8dbb18" style="stroke: rgb(187, 214, 116); fill-opacity: 1; fill: rgb(141, 187, 24); cursor: pointer;"></path><rect x="4" y="4" width="61" height="17" rx="0" ry="0" fill-opacity="0.000001" fill="#c0c0c0" stroke-width="1" stroke="none" style="fill-opacity: 0.000001; fill: rgb(192, 192, 192); stroke: none; cursor: pointer;"></rect><text class="fusioncharts-legenditem" x="94.85" y="6.5" fill="#555555" text-anchor="start" font-size="10px" stroke="none" style="fill: rgb(85, 85, 85); text-anchor: start; cursor: pointer; font-size: 10px; stroke: none;"><tspan dy="9.5" x="94.85">Red</tspan></text><path d="M85.35,11.5L85.35,7.55A3.95,3.95,0,0,1,89.3,11.5ZM83.35,13.5L83.35,8.55A4.95,4.95,0,1,0,88.3,13.5Z" stroke-width="0.5" stroke="#d67971" fill-opacity="1" fill="#bb1f13" style="stroke: rgb(214, 121, 113); fill-opacity: 1; fill: rgb(187, 31, 19); cursor: pointer;"></path><rect x="75.85" y="4" width="67" height="17" rx="0" ry="0" fill-opacity="0.000001" fill="#c0c0c0" stroke-width="1" stroke="none" style="fill-opacity: 0.000001; fill: rgb(192, 192, 192); stroke: none; cursor: pointer;"></rect><text class="fusioncharts-legenditem" x="172.7" y="6.5" fill="#555555" text-anchor="start" font-size="10px" stroke="none" style="fill: rgb(85, 85, 85); text-anchor: start; cursor: pointer; font-size: 10px; stroke: none;"><tspan dy="9.5" x="172.7">Grey</tspan></text><path d="M163.2,11.5L163.2,7.55A3.95,3.95,0,0,1,167.14999999999998,11.5ZM161.2,13.5L161.2,8.55A4.95,4.95,0,1,0,166.14999999999998,13.5Z" stroke-width="0.5" stroke="#cccac7" fill-opacity="1" fill="#aaa6a1" style="stroke: rgb(204, 202, 199); fill-opacity: 1; fill: rgb(170, 166, 161); cursor: pointer;"></path><rect x="153.7" y="4" width="59" height="17" rx="0" ry="0" fill-opacity="0.000001" fill="#c0c0c0" stroke-width="1" stroke="none" style="fill-opacity: 0.000001; fill: rgb(192, 192, 192); stroke: none; cursor: pointer;"></rect></g><g class="raphael-group-334-hot"></g><g class="raphael-group-337-buttons"></g></svg></span>
    </div>
    Initial server-side error happens on the first click:

    Code:
    2015-02-18 17:10:06,242 INFO  [c.i.s.RequestContext] [AsyncAppender-Dispatcher-Thread-24]: URL: '/static/isomorphic/IDACall', User-Agent: 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.111 Safari/537.36': Safari with Accept-Encoding header
    2015-02-18 17:10:06,571 INFO  [c.i.s.IDACall] [AsyncAppender-Dispatcher-Thread-24]: smartClientIdaCallServlet - Performing 1 operation(s)
    2015-02-18 17:10:06,802 INFO  [c.i.c.PdfExport] [AsyncAppender-Dispatcher-Thread-24]: CharSet used: UTF-8
    2015-02-18 17:10:07,550 ERROR [c.i.s.IDACall] [AsyncAppender-Dispatcher-Thread-24]: smartClientIdaCallServlet - Top-level servlet error: 
    java.lang.NoSuchFieldError: documentURI
    	at org.apache.batik.dom.svg.SVGOMDocument.setDocumentURI(SVGOMDocument.java:282) ~[batik-svg-dom-1.7.jar:1.7+r608262]
    	at org.apache.batik.dom.svg.SAXSVGDocumentFactory.createDocument(SAXSVGDocumentFactory.java:259) ~[batik-svg-dom-1.7.jar:1.7+r608262]
    	at com.isomorphic.contentexport.SvgImage.<init>(SvgImage.java:41) ~[isomorphic-contentexport-9.1-20140825.jar:na]
    	at com.isomorphic.contentexport.PdfExport.convertSvgImages(PdfExport.java:392) ~[isomorphic-contentexport-9.1-20140825.jar:na]
    	at com.isomorphic.contentexport.PdfExport.convertAllSvgOccurrencesToBase64(PdfExport.java:381) ~[isomorphic-contentexport-9.1-20140825.jar:na]
    	at com.isomorphic.contentexport.PdfExport.getPdfRenderer(PdfExport.java:277) ~[isomorphic-contentexport-9.1-20140825.jar:na]
    	at com.isomorphic.contentexport.PdfExport.getPdfObject(PdfExport.java:77) ~[isomorphic-contentexport-9.1-20140825.jar:na]
    	at com.isomorphic.rpc.BuiltinRPC.getPdfObject(BuiltinRPC.java:844) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_05]
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_05]
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_05]
    	at java.lang.reflect.Method.invoke(Method.java:483) ~[na:1.8.0_05]
    	at com.isomorphic.base.Reflection.adaptArgsAndInvoke(Reflection.java:975) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
    	at com.isomorphic.base.Reflection.adaptArgsAndInvoke(Reflection.java:805) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
    	at com.isomorphic.rpc.RPCDMI.execute(RPCDMI.java:309) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
    	at com.isomorphic.rpc.RPCDMI.execute(RPCDMI.java:66) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
    	at com.isomorphic.rpc.RPCRequest.execute(RPCRequest.java:231) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
    	at com.isomorphic.servlet.IDACall.handleRPCRequest(IDACall.java:284) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
    	at com.isomorphic.servlet.IDACall.processRPCTransaction(IDACall.java:168) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
    	at com.isomorphic.servlet.IDACall.processRequest(IDACall.java:137) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
    	at com.isomorphic.servlet.IDACall.doPost(IDACall.java:73) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:646) ~[servlet-api.jar:na]
    	at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:152) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:727) ~[servlet-api.jar:na]
    	at com.etouchpoint.common.web.spring.servlet.DelegatingServletProxy.invokeDelegate(DelegatingServletProxy.java:213) ~[etouchpoint-web-core-7.6.0.0-SNAPSHOT.jar:na]
    	at com.etouchpoint.common.web.spring.servlet.DelegatingServletProxy.service(DelegatingServletProxy.java:128) ~[etouchpoint-web-core-7.6.0.0-SNAPSHOT.jar:na]
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) ~[catalina.jar:7.0.55]
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
    	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) ~[tomcat7-websocket.jar:7.0.55]
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.55]
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
    	at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:86) ~[struts2-core-2.3.16.3.jar:2.3.16.3]
    	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
    	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.55]
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
    	at com.etouchpoint.common.web.filter.cache.FingerprintFilter.doFilter(FingerprintFilter.java:75) ~[etouchpoint-web-core-7.6.0.0-SNAPSHOT.jar:na]
    	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
    	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.55]
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
    	at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:186) ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    	at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160) ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
    	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.55]
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) ~[catalina.jar:7.0.55]
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) ~[catalina.jar:7.0.55]
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) ~[catalina.jar:7.0.55]
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) ~[catalina.jar:7.0.55]
    	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950) ~[catalina.jar:7.0.55]
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) ~[catalina.jar:7.0.55]
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408) ~[catalina.jar:7.0.55]
    	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070) ~[tomcat-coyote.jar:7.0.55]
    	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611) ~[tomcat-coyote.jar:7.0.55]
    	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316) ~[tomcat-coyote.jar:7.0.55]
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) ~[na:1.8.0_05]
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) ~[na:1.8.0_05]
    	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-coyote.jar:7.0.55]
    	at java.lang.Thread.run(Thread.java:745) [na:1.8.0_05]


    The second click shows this error, which I believe to be incorrect, as I can see isc_builtin.app.xml in the SmartClient jar files. I also tried copying this file from the jar into the /static/isomorphic/shared/app/ directory, but that didn't have any effect.

    The front end also throws this error to the screen: "Unable to locate isc_builtin.app.xml - check to make sure it's in available in the CLASSPATH"


    Code:
    2015-02-18 17:14:29,499 INFO  [c.i.s.RequestContext] [AsyncAppender-Dispatcher-Thread-24]: URL: '/static/isomorphic/IDACall', User-Agent: 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.111 Safari/537.36': Safari with Accept-Encoding header
    2015-02-18 17:14:29,499 INFO  [c.i.s.IDACall] [AsyncAppender-Dispatcher-Thread-24]: smartClientIdaCallServlet - Performing 1 operation(s)
    2015-02-18 17:14:29,502 WARN  [c.i.s.RequestContext] [AsyncAppender-Dispatcher-Thread-24]: rpcRequest.execute() failed: 
    java.lang.Exception: Unable to locate isc_builtin.app.xml - check to make sure it's in available in the CLASSPATH
    	at com.isomorphic.rpc.RPCDMI.loadAppConfig(RPCDMI.java:351) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
    	at com.isomorphic.rpc.RPCDMI.execute(RPCDMI.java:137) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
    	at com.isomorphic.rpc.RPCDMI.execute(RPCDMI.java:66) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
    	at com.isomorphic.rpc.RPCRequest.execute(RPCRequest.java:231) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
    	at com.isomorphic.servlet.IDACall.handleRPCRequest(IDACall.java:284) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
    	at com.isomorphic.servlet.IDACall.processRPCTransaction(IDACall.java:168) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
    	at com.isomorphic.servlet.IDACall.processRequest(IDACall.java:137) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
    	at com.isomorphic.servlet.IDACall.doPost(IDACall.java:73) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:646) ~[servlet-api.jar:na]
    	at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:152) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:727) ~[servlet-api.jar:na]
    	at com.etouchpoint.common.web.spring.servlet.DelegatingServletProxy.invokeDelegate(DelegatingServletProxy.java:213) ~[etouchpoint-web-core-7.6.0.0-SNAPSHOT.jar:na]
    	at com.etouchpoint.common.web.spring.servlet.DelegatingServletProxy.service(DelegatingServletProxy.java:128) ~[etouchpoint-web-core-7.6.0.0-SNAPSHOT.jar:na]
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) ~[catalina.jar:7.0.55]
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
    	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) ~[tomcat7-websocket.jar:7.0.55]
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.55]
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
    	at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:86) ~[struts2-core-2.3.16.3.jar:2.3.16.3]
    	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
    	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.55]
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
    	at com.etouchpoint.common.web.filter.cache.FingerprintFilter.doFilter(FingerprintFilter.java:75) ~[etouchpoint-web-core-7.6.0.0-SNAPSHOT.jar:na]
    	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
    	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.55]
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
    	at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:186) ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    	at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160) ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
    	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.55]
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) ~[catalina.jar:7.0.55]
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) ~[catalina.jar:7.0.55]
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) ~[catalina.jar:7.0.55]
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) ~[catalina.jar:7.0.55]
    	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950) ~[catalina.jar:7.0.55]
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) ~[catalina.jar:7.0.55]
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408) ~[catalina.jar:7.0.55]
    	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070) ~[tomcat-coyote.jar:7.0.55]
    	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611) ~[tomcat-coyote.jar:7.0.55]
    	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316) ~[tomcat-coyote.jar:7.0.55]
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) ~[na:1.8.0_05]
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) ~[na:1.8.0_05]
    	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-coyote.jar:7.0.55]
    	at java.lang.Thread.run(Thread.java:745) [na:1.8.0_05]
    2015-02-19 08:53:20,184 INFO  [c.m.v.c.i.NewPooledConnection] [C3P0PooledConnectionPoolManager[identityToken->2tucbr971880it31tw8lkv|2fc55d7c]-HelperThread-#2]: [c3p0] Exceptions occurred while trying to close a PooledConnection's resources normally.
    2015-02-19 08:53:20,185 INFO  [c.m.v.c.i.NewPooledConnection] [C3P0PooledConnectionPoolManager[identityToken->2tucbr971880it31tw8lkv|2fc55d7c]-HelperThread-#2]: [c3p0] NewPooledConnection close Exception.
    java.sql.SQLRecoverableException: IO Error: Connection reset
    	at oracle.jdbc.driver.T4CConnection.logoff(T4CConnection.java:740) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.jdbc.driver.PhysicalConnection.close(PhysicalConnection.java:5870) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at com.mchange.v2.c3p0.impl.NewPooledConnection.close(NewPooledConnection.java:629) [c3p0-0.9.2.1.jar:0.9.2.1]
    	at com.mchange.v2.c3p0.impl.NewPooledConnection.closeMaybeCheckedOut(NewPooledConnection.java:259) [c3p0-0.9.2.1.jar:0.9.2.1]
    	at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.destroyResource(C3P0PooledConnectionPool.java:619) [c3p0-0.9.2.1.jar:0.9.2.1]
    	at com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask.run(BasicResourcePool.java:1024) [c3p0-0.9.2.1.jar:0.9.2.1]
    	at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:648) [mchange-commons-java-0.2.3.4.jar:na]
    Caused by: java.net.SocketException: Connection reset
    	at java.net.SocketInputStream.read(SocketInputStream.java:189) ~[na:1.8.0_05]
    	at java.net.SocketInputStream.read(SocketInputStream.java:121) ~[na:1.8.0_05]
    	at oracle.net.ns.Packet.receive(Packet.java:319) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.net.ns.DataPacket.receive(DataPacket.java:103) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.net.ns.NetInputStream.getNextPacket(NetInputStream.java:321) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.net.ns.NetInputStream.read(NetInputStream.java:265) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.net.ns.NetInputStream.read(NetInputStream.java:187) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.net.ns.NetInputStream.read(NetInputStream.java:104) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.jdbc.driver.T4CSocketInputStreamWrapper.readNextPacket(T4CSocketInputStreamWrapper.java:121) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.jdbc.driver.T4CSocketInputStreamWrapper.read(T4CSocketInputStreamWrapper.java:77) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.jdbc.driver.T4CMAREngine.unmarshalUB1(T4CMAREngine.java:1173) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:369) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:235) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.jdbc.driver.T4C7Ocommoncall.doOLOGOFF(T4C7Ocommoncall.java:59) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.jdbc.driver.T4CConnection.logoff(T4CConnection.java:720) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	... 6 common frames omitted
    2015-02-19 08:53:20,185 WARN  [c.m.v.r.BasicResourcePool] [C3P0PooledConnectionPoolManager[identityToken->2tucbr971880it31tw8lkv|2fc55d7c]-HelperThread-#2]: Failed to destroy resource: com.mchange.v2.c3p0.impl.NewPooledConnection@12ea917a
    java.sql.SQLException: Some resources failed to close properly while closing com.mchange.v2.c3p0.impl.NewPooledConnection@12ea917a
    	at com.mchange.v2.c3p0.impl.NewPooledConnection.close(NewPooledConnection.java:651) ~[c3p0-0.9.2.1.jar:0.9.2.1]
    	at com.mchange.v2.c3p0.impl.NewPooledConnection.closeMaybeCheckedOut(NewPooledConnection.java:259) ~[c3p0-0.9.2.1.jar:0.9.2.1]
    	at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.destroyResource(C3P0PooledConnectionPool.java:619) ~[c3p0-0.9.2.1.jar:0.9.2.1]
    	at com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask.run(BasicResourcePool.java:1024) ~[c3p0-0.9.2.1.jar:0.9.2.1]
    	at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:648) [mchange-commons-java-0.2.3.4.jar:na]
    2015-02-19 08:53:20,495 INFO  [c.m.v.c.i.NewPooledConnection] [C3P0PooledConnectionPoolManager[identityToken->2tucbr971880it31tw8lkv|2fc55d7c]-HelperThread-#0]: [c3p0] Exceptions occurred while trying to close a PooledConnection's resources normally.
    2015-02-19 08:53:20,495 INFO  [c.m.v.c.i.NewPooledConnection] [C3P0PooledConnectionPoolManager[identityToken->2tucbr971880it31tw8lkv|2fc55d7c]-HelperThread-#0]: [c3p0] NewPooledConnection close Exception.
    java.sql.SQLRecoverableException: IO Error: Connection reset
    	at oracle.jdbc.driver.T4CConnection.logoff(T4CConnection.java:740) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.jdbc.driver.PhysicalConnection.close(PhysicalConnection.java:5870) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at com.mchange.v2.c3p0.impl.NewPooledConnection.close(NewPooledConnection.java:629) [c3p0-0.9.2.1.jar:0.9.2.1]
    	at com.mchange.v2.c3p0.impl.NewPooledConnection.closeMaybeCheckedOut(NewPooledConnection.java:259) [c3p0-0.9.2.1.jar:0.9.2.1]
    	at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.destroyResource(C3P0PooledConnectionPool.java:619) [c3p0-0.9.2.1.jar:0.9.2.1]
    	at com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask.run(BasicResourcePool.java:1024) [c3p0-0.9.2.1.jar:0.9.2.1]
    	at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:648) [mchange-commons-java-0.2.3.4.jar:na]
    Caused by: java.net.SocketException: Connection reset
    	at java.net.SocketInputStream.read(SocketInputStream.java:189) ~[na:1.8.0_05]
    	at java.net.SocketInputStream.read(SocketInputStream.java:121) ~[na:1.8.0_05]
    	at oracle.net.ns.Packet.receive(Packet.java:319) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.net.ns.DataPacket.receive(DataPacket.java:103) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.net.ns.NetInputStream.getNextPacket(NetInputStream.java:321) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.net.ns.NetInputStream.read(NetInputStream.java:265) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.net.ns.NetInputStream.read(NetInputStream.java:187) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.net.ns.NetInputStream.read(NetInputStream.java:104) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.jdbc.driver.T4CSocketInputStreamWrapper.readNextPacket(T4CSocketInputStreamWrapper.java:121) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.jdbc.driver.T4CSocketInputStreamWrapper.read(T4CSocketInputStreamWrapper.java:77) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.jdbc.driver.T4CMAREngine.unmarshalUB1(T4CMAREngine.java:1173) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:369) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:235) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.jdbc.driver.T4C7Ocommoncall.doOLOGOFF(T4C7Ocommoncall.java:59) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.jdbc.driver.T4CConnection.logoff(T4CConnection.java:720) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	... 6 common frames omitted
    2015-02-19 08:53:20,495 WARN  [c.m.v.r.BasicResourcePool] [C3P0PooledConnectionPoolManager[identityToken->2tucbr971880it31tw8lkv|2fc55d7c]-HelperThread-#0]: Failed to destroy resource: com.mchange.v2.c3p0.impl.NewPooledConnection@42c044a2
    java.sql.SQLException: Some resources failed to close properly while closing com.mchange.v2.c3p0.impl.NewPooledConnection@42c044a2
    	at com.mchange.v2.c3p0.impl.NewPooledConnection.close(NewPooledConnection.java:651) ~[c3p0-0.9.2.1.jar:0.9.2.1]
    	at com.mchange.v2.c3p0.impl.NewPooledConnection.closeMaybeCheckedOut(NewPooledConnection.java:259) ~[c3p0-0.9.2.1.jar:0.9.2.1]
    	at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.destroyResource(C3P0PooledConnectionPool.java:619) ~[c3p0-0.9.2.1.jar:0.9.2.1]
    	at com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask.run(BasicResourcePool.java:1024) ~[c3p0-0.9.2.1.jar:0.9.2.1]
    	at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:648) [mchange-commons-java-0.2.3.4.jar:na]
    2015-02-19 08:53:20,496 INFO  [c.m.v.c.i.NewPooledConnection] [C3P0PooledConnectionPoolManager[identityToken->2tucbr971880it31tw8lkv|2fc55d7c]-HelperThread-#7]: [c3p0] Exceptions occurred while trying to close a PooledConnection's resources normally.
    2015-02-19 08:53:20,496 INFO  [c.m.v.c.i.NewPooledConnection] [C3P0PooledConnectionPoolManager[identityToken->2tucbr971880it31tw8lkv|2fc55d7c]-HelperThread-#7]: [c3p0] NewPooledConnection close Exception.
    java.sql.SQLRecoverableException: IO Error: Connection reset
    	at oracle.jdbc.driver.T4CConnection.logoff(T4CConnection.java:740) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.jdbc.driver.PhysicalConnection.close(PhysicalConnection.java:5870) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at com.mchange.v2.c3p0.impl.NewPooledConnection.close(NewPooledConnection.java:629) [c3p0-0.9.2.1.jar:0.9.2.1]
    	at com.mchange.v2.c3p0.impl.NewPooledConnection.closeMaybeCheckedOut(NewPooledConnection.java:259) [c3p0-0.9.2.1.jar:0.9.2.1]
    	at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.destroyResource(C3P0PooledConnectionPool.java:619) [c3p0-0.9.2.1.jar:0.9.2.1]
    	at com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask.run(BasicResourcePool.java:1024) [c3p0-0.9.2.1.jar:0.9.2.1]
    	at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:648) [mchange-commons-java-0.2.3.4.jar:na]
    Caused by: java.net.SocketException: Connection reset
    	at java.net.SocketInputStream.read(SocketInputStream.java:189) ~[na:1.8.0_05]
    	at java.net.SocketInputStream.read(SocketInputStream.java:121) ~[na:1.8.0_05]
    	at oracle.net.ns.Packet.receive(Packet.java:319) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.net.ns.DataPacket.receive(DataPacket.java:103) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.net.ns.NetInputStream.getNextPacket(NetInputStream.java:321) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.net.ns.NetInputStream.read(NetInputStream.java:265) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.net.ns.NetInputStream.read(NetInputStream.java:187) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.net.ns.NetInputStream.read(NetInputStream.java:104) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.jdbc.driver.T4CSocketInputStreamWrapper.readNextPacket(T4CSocketInputStreamWrapper.java:121) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.jdbc.driver.T4CSocketInputStreamWrapper.read(T4CSocketInputStreamWrapper.java:77) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.jdbc.driver.T4CMAREngine.unmarshalUB1(T4CMAREngine.java:1173) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:369) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:235) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.jdbc.driver.T4C7Ocommoncall.doOLOGOFF(T4C7Ocommoncall.java:59) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	at oracle.jdbc.driver.T4CConnection.logoff(T4CConnection.java:720) ~[ojdbc6-11.2.0.4-debug.jar:11.2.0.3.0]
    	... 6 common frames omitted
    2015-02-19 08:53:20,496 WARN  [c.m.v.r.BasicResourcePool] [C3P0PooledConnectionPoolManager[identityToken->2tucbr971880it31tw8lkv|2fc55d7c]-HelperThread-#7]: Failed to destroy resource: com.mchange.v2.c3p0.impl.NewPooledConnection@1792d58e
    java.sql.SQLException: Some resources failed to close properly while closing com.mchange.v2.c3p0.impl.NewPooledConnection@1792d58e
    	at com.mchange.v2.c3p0.impl.NewPooledConnection.close(NewPooledConnection.java:651) ~[c3p0-0.9.2.1.jar:0.9.2.1]
    	at com.mchange.v2.c3p0.impl.NewPooledConnection.closeMaybeCheckedOut(NewPooledConnection.java:259) ~[c3p0-0.9.2.1.jar:0.9.2.1]
    	at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.destroyResource(C3P0PooledConnectionPool.java:619) ~[c3p0-0.9.2.1.jar:0.9.2.1]
    	at com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask.run(BasicResourcePool.java:1024) ~[c3p0-0.9.2.1.jar:0.9.2.1]
    	at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:648) [mchange-commons-java-0.2.3.4.jar:na]

    #2
    Hi,
    We tested the sample using the latest 9.1p build, and were unable to reproduce an issue.

    A NoSuchFieldError can occur when incompatible versions of JARs are included on the classpath. It might be that somehow, JARs from two or more Batik versions ended up in the servlet classpath. We would recommend you verify this is not the case -- try re-creating the classpath from scratch, by deleting all of the JARs currently in the application's classpath and copying the JARs from the nightly build you are using.

    Regards
    Isomorphic Software

    Comment


      #3
      You were correct, we do have some other library that was depending on batik, referencing version 1.6. I have excluded any 1.6 libraries, but I'm still receiving an error on other SVGs (for some reason the one I provided is the only one that now works correctly). This error is similar to the second error I was seeing in the original post.

      Thank you.

      Code:
      2015-02-23 15:40:03,552 INFO  [c.i.s.RequestContext] [AsyncAppender-Dispatcher-Thread-24]: URL: '/static/isomorphic/IDACall', User-Agent: 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.111 Safari/537.36': Safari with Accept-Encoding header
      2015-02-23 15:40:03,571 INFO  [c.i.s.IDACall] [AsyncAppender-Dispatcher-Thread-24]: smartClientIdaCallServlet - Performing 1 operation(s)
      2015-02-23 15:40:03,576 WARN  [c.i.s.RequestContext] [AsyncAppender-Dispatcher-Thread-24]: rpcRequest.execute() failed: 
      java.lang.Exception: Unable to locate isc_builtin.app.xml - check to make sure it's in available in the CLASSPATH
      	at com.isomorphic.rpc.RPCDMI.loadAppConfig(RPCDMI.java:351) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
      	at com.isomorphic.rpc.RPCDMI.execute(RPCDMI.java:137) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
      	at com.isomorphic.rpc.RPCDMI.execute(RPCDMI.java:66) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
      	at com.isomorphic.rpc.RPCRequest.execute(RPCRequest.java:231) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
      	at com.isomorphic.servlet.IDACall.handleRPCRequest(IDACall.java:284) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
      	at com.isomorphic.servlet.IDACall.processRPCTransaction(IDACall.java:168) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
      	at com.isomorphic.servlet.IDACall.processRequest(IDACall.java:137) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
      	at com.isomorphic.servlet.IDACall.doPost(IDACall.java:73) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:646) ~[servlet-api.jar:na]
      	at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:152) ~[isomorphic-core-rpc-9.1-20140825.jar:na]
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:727) ~[servlet-api.jar:na]
      	at com.etouchpoint.common.web.spring.servlet.DelegatingServletProxy.invokeDelegate(DelegatingServletProxy.java:213) ~[etouchpoint-web-core-7.6.0.0-SNAPSHOT.jar:na]
      	at com.etouchpoint.common.web.spring.servlet.DelegatingServletProxy.service(DelegatingServletProxy.java:128) ~[etouchpoint-web-core-7.6.0.0-SNAPSHOT.jar:na]
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) ~[catalina.jar:7.0.55]
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
      	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) ~[tomcat7-websocket.jar:7.0.55]
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.55]
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
      	at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:86) ~[struts2-core-2.3.16.3.jar:2.3.16.3]
      	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
      	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.55]
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
      	at com.etouchpoint.common.web.filter.cache.FingerprintFilter.doFilter(FingerprintFilter.java:75) ~[etouchpoint-web-core-7.6.0.0-SNAPSHOT.jar:na]
      	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
      	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.55]
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
      	at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:186) ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
      	at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160) ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
      	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
      	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.55]
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
      	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) ~[catalina.jar:7.0.55]
      	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) ~[catalina.jar:7.0.55]
      	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) ~[catalina.jar:7.0.55]
      	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) ~[catalina.jar:7.0.55]
      	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950) ~[catalina.jar:7.0.55]
      	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) ~[catalina.jar:7.0.55]
      	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408) ~[catalina.jar:7.0.55]
      	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070) ~[tomcat-coyote.jar:7.0.55]
      	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611) ~[tomcat-coyote.jar:7.0.55]
      	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316) ~[tomcat-coyote.jar:7.0.55]
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) ~[na:1.8.0_05]
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) ~[na:1.8.0_05]
      	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-coyote.jar:7.0.55]
      	at java.lang.Thread.run(Thread.java:745) [na:1.8.0_05]
      New SVG for testing:

      Code:
      <span id="myChart" class="fusioncharts-container" style="position: relative; text-align: left; line-height: normal; display: inline-block; zoom: 1; font-weight: normal; font-variant: normal; font-style: normal; text-decoration: none; padding: 0px; margin: 0px; border: none; width: 550px; height: 90px;"><svg height="90" version="1.1" width="550" xmlns="http://www.w3.org/2000/svg" id="raphael-paper-349" style="overflow: hidden; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); -webkit-user-select: none; cursor: default; position: relative; background-color: rgb(255, 255, 255);"><desc>Bar Chart</desc><defs><clipPath id="93E06B48-28A1-4AFB-BF62-4E09B356A36C"><rect x="118" y="15" width="417" height="41" transform="matrix(1,0,0,1,0,0)"></rect></clipPath></defs><g class="raphael-group-350-background"><rect x="0" y="0" width="550" height="90" stroke="none" fill-opacity="0.5" fill="#ffffff" rx="0" ry="0" style="stroke: none; fill-opacity: 0.5; fill: rgb(255, 255, 255);"></rect><rect x="0" y="0" width="550" height="90" stroke="#767575" stroke-opacity="0.5" stroke-width="0" fill="none" rx="0" ry="0" style="stroke: rgb(118, 117, 117); stroke-opacity: 0.5; fill: none;"></rect></g><g class="raphael-group-357-canvas"><rect x="118" y="15" width="417" height="41" rx="0" ry="0" stroke-width="0" stroke="#545454" stroke-opacity="0" stroke-linejoin="miter" fill="none" style="stroke: rgb(84, 84, 84); stroke-opacity: 0; stroke-linejoin: miter; fill: none;"></rect><rect x="118" y="15" width="417" height="41" rx="0" ry="0" stroke-width="0" stroke="none" fill-opacity="1" fill="#ffffff" style="stroke: none; fill-opacity: 1; fill: rgb(255, 255, 255);"></rect></g><g class="raphael-group-360-axisbottom"><g class="raphael-group-363-y-axis-bands"></g><g class="raphael-group-369-x-axis-bands"><rect x="201.4" y="15" width="83.4" height="41" fill-opacity="0" fill="#767575" stroke-width="0" rx="0" ry="0" stroke="#000000" style="fill-opacity: 0; fill: rgb(118, 117, 117); stroke: rgb(0, 0, 0);"></rect><rect x="368.20000000000005" y="15" width="83.39999999999998" height="41" fill-opacity="0" fill="#767575" stroke-width="0" rx="0" ry="0" stroke="#000000" style="fill-opacity: 0; fill: rgb(118, 117, 117); stroke: rgb(0, 0, 0);"></rect></g><g class="raphael-group-375-x-axis-bands"></g><g class="raphael-group-365-y-axis-lines"></g><g class="raphael-group-371-x-axis-lines"><path d="M201.4,15L201.4,56" stroke="#ffffff" stroke-opacity="1" stroke-width="1" stroke-dasharray="1,2" fill="none" shape-rendering="crispEdges" style="stroke: rgb(255, 255, 255); stroke-opacity: 1; fill: none; shape-rendering: crispedges;"></path><path d="M284.8,15L284.8,56" stroke="#ffffff" stroke-opacity="1" stroke-width="1" stroke-dasharray="1,2" fill="none" shape-rendering="crispEdges" style="stroke: rgb(255, 255, 255); stroke-opacity: 1; fill: none; shape-rendering: crispedges;"></path><path d="M368.20000000000005,15L368.20000000000005,56" stroke="#ffffff" stroke-opacity="1" stroke-width="1" stroke-dasharray="1,2" fill="none" shape-rendering="crispEdges" style="stroke: rgb(255, 255, 255); stroke-opacity: 1; fill: none; shape-rendering: crispedges;"></path><path d="M451.6,15L451.6,56" stroke="#ffffff" stroke-opacity="1" stroke-width="1" stroke-dasharray="1,2" fill="none" shape-rendering="crispEdges" style="stroke: rgb(255, 255, 255); stroke-opacity: 1; fill: none; shape-rendering: crispedges;"></path><path d="M535,15L535,56" stroke="#ffffff" stroke-opacity="1" stroke-width="1" stroke-dasharray="1,2" fill="none" shape-rendering="crispEdges" style="stroke: rgb(255, 255, 255); stroke-opacity: 1; fill: none; shape-rendering: crispedges;"></path></g><g class="raphael-group-377-x-axis-lines"></g><g class="fusioncharts-xaxis-0-gridlabels"><text class="fusioncharts-label" fill="#333333" x="100" y="25.25" text-anchor="end" transform="matrix(1,0,0,1,0,0)" stroke="none" style="fill: rgb(51, 51, 51); text-anchor: end; stroke: none;"><tspan dy="2.5" x="100">Test Bar</tspan></text><text class="fusioncharts-label" fill="#333333" x="100" y="45.75" text-anchor="end" transform="matrix(1,0,0,1,0,0)" stroke="none" style="fill: rgb(51, 51, 51); text-anchor: end; stroke: none;"><tspan dy="2.5" x="100">Test No Bar</tspan></text></g><g class="fusioncharts-yaxis-0-gridlabels"><text class="fusioncharts-label" fill="#333333" x="118" y="75" text-anchor="middle" transform="matrix(1,0,0,1,0,0)" stroke="none" style="fill: rgb(51, 51, 51); text-anchor: middle; stroke: none;"><tspan dy="-4.6953125" x="118">0</tspan></text><text class="fusioncharts-label" fill="#333333" x="201.4" y="75" text-anchor="middle" transform="matrix(1,0,0,1,0,0)" stroke="none" style="fill: rgb(51, 51, 51); text-anchor: middle; stroke: none;"><tspan dy="-4.6953125" x="201.4">8</tspan></text><text class="fusioncharts-label" fill="#333333" x="284.8" y="75" text-anchor="middle" transform="matrix(1,0,0,1,0,0)" stroke="none" style="fill: rgb(51, 51, 51); text-anchor: middle; stroke: none;"><tspan dy="-4.6953125" x="284.8">16</tspan></text><text class="fusioncharts-label" fill="#333333" x="368.20000000000005" y="75" text-anchor="middle" transform="matrix(1,0,0,1,0,0)" stroke="none" style="fill: rgb(51, 51, 51); text-anchor: middle; stroke: none;"><tspan dy="-4.6953125" x="368.20000000000005">24</tspan></text><text class="fusioncharts-label" fill="#333333" x="451.6" y="75" text-anchor="middle" transform="matrix(1,0,0,1,0,0)" stroke="none" style="fill: rgb(51, 51, 51); text-anchor: middle; stroke: none;"><tspan dy="-4.6953125" x="451.6">32</tspan></text><text class="fusioncharts-label" fill="#333333" x="535" y="75" text-anchor="middle" transform="matrix(1,0,0,1,0,0)" stroke="none" style="fill: rgb(51, 51, 51); text-anchor: middle; stroke: none;"><tspan dy="-4.6953125" x="535">40</tspan></text></g><g class="fusioncharts-yaxis-1-gridlabels"></g><g class="raphael-group-380-axis-name"></g><g class="raphael-group-394-axis-lines"><path d="M118,56.5L535,56.5" stroke="#000000" stroke-opacity="1" stroke-width="1" fill="none" style="stroke: rgb(0, 0, 0); stroke-opacity: 1; fill: none;"></path></g><g class="raphael-group-398-axis-lines"><path d="M117.5,15L117.5,57" stroke="#999999" stroke-opacity="1" stroke-width="1" fill="none" style="stroke: rgb(153, 153, 153); stroke-opacity: 1; fill: none;"></path></g></g><g class="raphael-group-351-dataset"><g class="raphael-group-400-bars" clip-path="url('#93E06B48-28A1-4AFB-BF62-4E09B356A36C')"><rect x="117" y="19" width="314" height="12" rx="0" ry="0" fill-opacity="1" fill="#536c82" stroke="#333333" stroke-opacity="1" stroke-width="0" stroke-dasharray="0" stroke-linejoin="miter" style="fill-opacity: 1; fill: rgb(83, 108, 130); stroke: rgb(51, 51, 51); stroke-opacity: 1; stroke-linejoin: miter;"></rect><rect x="117" y="40" width="1" height="12" rx="0" ry="0" fill-opacity="1" fill="#536c82" stroke="#333333" stroke-opacity="1" stroke-width="0" stroke-dasharray="0" stroke-linejoin="miter" style="fill-opacity: 1; fill: rgb(83, 108, 130); stroke: rgb(51, 51, 51); stroke-opacity: 1; stroke-linejoin: miter;"></rect></g></g><g class="raphael-group-361-axistop"><g class="raphael-group-362-y-axis-bands"></g><g class="raphael-group-368-x-axis-bands"></g><g class="raphael-group-374-x-axis-bands"></g><g class="raphael-group-364-y-axis-lines"></g><g class="raphael-group-370-x-axis-lines"></g><g class="raphael-group-376-x-axis-lines"></g><g class="fusioncharts-xaxis-0-gridlabels"></g><g class="fusioncharts-yaxis-0-gridlabels"></g><g class="fusioncharts-yaxis-1-gridlabels"></g></g><g class="fusioncharts-datalabels" transform="matrix(1,0,0,1,0,0)"><text class="fusioncharts-label" font-size="10px" text-anchor="start" fill-opacity="1" fill="#536c82" x="435" y="25" stroke="none" style="font-size: 10px; text-anchor: start; fill-opacity: 1; fill: rgb(83, 108, 130); stroke: none;"><tspan dy="3" x="435">30</tspan></text><text class="fusioncharts-label" font-size="10px" text-anchor="start" fill-opacity="1" fill="#536c82" x="120" y="46" stroke="none" style="font-size: 10px; text-anchor: start; fill-opacity: 1; fill: rgb(83, 108, 130); stroke: none;"><tspan dy="3" x="120">0</tspan></text></g><g class="raphael-group-352-hot"><rect x="117" y="19" width="314" height="12.299999999999999" rx="0" ry="0" stroke="#c0c0c0" stroke-opacity="0.000001" stroke-width="0" fill-opacity="0.000001" fill="#c0c0c0" style="stroke: rgb(192, 192, 192); stroke-opacity: 0.000001; fill-opacity: 0.000001; fill: rgb(192, 192, 192);"></rect><rect x="115" y="40" width="5" height="12.299999999999999" rx="0" ry="0" stroke="#c0c0c0" stroke-opacity="0.000001" stroke-width="0" fill-opacity="0.000001" fill="#c0c0c0" style="stroke: rgb(192, 192, 192); stroke-opacity: 0.000001; fill-opacity: 0.000001; fill: rgb(192, 192, 192);"></rect></g><g class="raphael-group-355-buttons"></g></svg></span>
      Last edited by ithurlow; 24 Feb 2015, 10:50.

      Comment


        #4
        This file should be present inside your copy of isomorphic_core_rpc.jar. First thing to do is to verify it's indeed inside that .jar, in case your .jar is somehow corrupted.

        If it is present, you have some kind of weird deployment issue, where perhaps you have build scripts or deployment rules that cause .class files in the .jar to be accessible, but disallow loading other kinds of resources.

        Comment


          #5
          We had some trouble upgrading to the latest nightly (v9.1p_2015-03-10/Pro Development Only (built 2015-03-10)) due to dependency issues, but we have since been able to upgrade. Here's the error I get every time (same as the first):

          Code:
          2015-03-12 13:45:47,001 INFO  [c.i.s.RequestContext] [AsyncAppender-Dispatcher-Thread-24]: URL: '/static/isomorphic/IDACall', User-Agent: 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.89 Safari/537.36': Safari with Accept-Encoding header
          2015-03-12 13:45:47,346 INFO  [c.i.s.IDACall] [AsyncAppender-Dispatcher-Thread-24]: smartClientIdaCallServlet - Performing 1 operation(s)
          2015-03-12 13:45:47,549 INFO  [c.i.c.PdfExport] [AsyncAppender-Dispatcher-Thread-24]: CharSet used: UTF-8
          2015-03-12 13:45:48,113 ERROR [c.i.s.IDACall] [AsyncAppender-Dispatcher-Thread-24]: smartClientIdaCallServlet - Top-level servlet error: 
          java.lang.NoSuchFieldError: documentURI
          at org.apache.batik.dom.svg.SVGOMDocument.setDocumentURI(SVGOMDocument.java:282) ~[batik-svg-dom-1.7.jar:1.7+r608262]
          at org.apache.batik.dom.svg.SAXSVGDocumentFactory.createDocument(SAXSVGDocumentFactory.java:259) ~[batik-svg-dom-1.7.jar:1.7+r608262]
          at com.isomorphic.contentexport.SvgImage.<init>(SvgImage.java:41) ~[isomorphic-contentexport-9.1-20150310.jar:na]
          at com.isomorphic.contentexport.PdfExport.convertSvgImages(PdfExport.java:392) ~[isomorphic-contentexport-9.1-20150310.jar:na]
          at com.isomorphic.contentexport.PdfExport.convertAllSvgOccurrencesToBase64(PdfExport.java:381) ~[isomorphic-contentexport-9.1-20150310.jar:na]
          at com.isomorphic.contentexport.PdfExport.getPdfRenderer(PdfExport.java:277) ~[isomorphic-contentexport-9.1-20150310.jar:na]
          at com.isomorphic.contentexport.PdfExport.getPdfObject(PdfExport.java:77) ~[isomorphic-contentexport-9.1-20150310.jar:na]
          at com.isomorphic.rpc.BuiltinRPC.getPdfObject(BuiltinRPC.java:851) ~[isomorphic-core-rpc-9.1-20150310.jar:na]
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_05]
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_05]
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_05]
          at java.lang.reflect.Method.invoke(Method.java:483) ~[na:1.8.0_05]
          at com.isomorphic.base.Reflection.adaptArgsAndInvoke(Reflection.java:975) ~[isomorphic-core-rpc-9.1-20150310.jar:na]
          at com.isomorphic.base.Reflection.adaptArgsAndInvoke(Reflection.java:805) ~[isomorphic-core-rpc-9.1-20150310.jar:na]
          at com.isomorphic.rpc.RPCDMI.execute(RPCDMI.java:309) ~[isomorphic-core-rpc-9.1-20150310.jar:na]
          at com.isomorphic.rpc.RPCDMI.execute(RPCDMI.java:66) ~[isomorphic-core-rpc-9.1-20150310.jar:na]
          at com.isomorphic.rpc.RPCRequest.execute(RPCRequest.java:231) ~[isomorphic-core-rpc-9.1-20150310.jar:na]
          at com.isomorphic.servlet.IDACall.handleRPCRequest(IDACall.java:284) ~[isomorphic-core-rpc-9.1-20150310.jar:na]
          at com.isomorphic.servlet.IDACall.processRPCTransaction(IDACall.java:168) ~[isomorphic-core-rpc-9.1-20150310.jar:na]
          at com.isomorphic.servlet.IDACall.processRequest(IDACall.java:137) ~[isomorphic-core-rpc-9.1-20150310.jar:na]
          at com.isomorphic.servlet.IDACall.doPost(IDACall.java:73) ~[isomorphic-core-rpc-9.1-20150310.jar:na]
          at javax.servlet.http.HttpServlet.service(HttpServlet.java:646) ~[servlet-api.jar:na]
          at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:152) ~[isomorphic-core-rpc-9.1-20150310.jar:na]
          at javax.servlet.http.HttpServlet.service(HttpServlet.java:727) ~[servlet-api.jar:na]
          at com.etouchpoint.common.web.spring.servlet.DelegatingServletProxy.invokeDelegate(DelegatingServletProxy.java:213) ~[etouchpoint-web-core-7.7.0.0-SNAPSHOT.jar:na]
          at com.etouchpoint.common.web.spring.servlet.DelegatingServletProxy.service(DelegatingServletProxy.java:128) ~[etouchpoint-web-core-7.7.0.0-SNAPSHOT.jar:na]
          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) ~[catalina.jar:7.0.55]
          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
          at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) ~[tomcat7-websocket.jar:7.0.55]
          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.55]
          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
          at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:86) ~[struts2-core-2.3.16.3.jar:2.3.16.3]
          at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
          at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.55]
          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
          at com.etouchpoint.common.web.filter.cache.FingerprintFilter.doFilter(FingerprintFilter.java:75) ~[etouchpoint-web-core-7.7.0.0-SNAPSHOT.jar:na]
          at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
          at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.55]
          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
          at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:186) ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
          at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160) ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
          at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
          at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.55]
          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
          at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) ~[catalina.jar:7.0.55]
          at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) ~[catalina.jar:7.0.55]
          at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) ~[catalina.jar:7.0.55]
          at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) ~[catalina.jar:7.0.55]
          at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950) ~[catalina.jar:7.0.55]
          at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) ~[catalina.jar:7.0.55]
          at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408) ~[catalina.jar:7.0.55]
          at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070) ~[tomcat-coyote.jar:7.0.55]
          at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611) ~[tomcat-coyote.jar:7.0.55]
          at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316) ~[tomcat-coyote.jar:7.0.55]
          at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) ~[na:1.8.0_05]
          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) ~[na:1.8.0_05]
          at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-coyote.jar:7.0.55]
          at java.lang.Thread.run(Thread.java:745) [na:1.8.0_05]
          As you can see from the trace, this is not a batik version issue, as all of them reference batik*1.7.jar. I'm not sure where to go from here.

          Thank you.

          Comment


            #6
            This looks like another instance of extra .jars lying around. Basically, you appear to be using a mixture of .jars from different versions of SmartClient.

            Comment


              #7
              Originally posted by Isomorphic View Post
              This looks like another instance of extra .jars lying around. Basically, you appear to be using a mixture of .jars from different versions of SmartClient.
              Looks like there were some extra batik dependencies higher up in the maven tree. I excluded them and I am getting a different error, the same one with the app_builtin.xml.

              Here is the last graph on the page that doesn't work. The other two examples are now working.

              Code:
              <div id="myChart">
              	<span id="chartobject-1" class="fusioncharts-container" style="position: relative; text-align: left; line-height: normal; display: inline-block; zoom: 1; font-weight: normal; font-variant: normal; font-style: normal; text-decoration: none; padding: 0px; margin: 0px; border: none; width: 420px; height: 250px;"><svg height="250" version="1.1" width="420" xmlns="http://www.w3.org/2000/svg" id="raphael-paper-65" style="overflow: hidden; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); -webkit-user-select: none; cursor: default; position: relative; background-color: rgb(255, 255, 255);"><desc>Multi-series Line Chart</desc><defs><clipPath id="CD850C01-F3AD-483D-A47D-A36524420337"><rect x="64" y="20" width="341" height="157" transform="matrix(1,0,0,1,0,0)"></rect></clipPath><clipPath id="DD103779-BF9A-47AA-8080-E3AD7845D7CE"><rect x="64" y="20" width="341" height="157" transform="matrix(1,0,0,1,0,0)"></rect></clipPath></defs><g class="raphael-group-66-background"><rect x="0" y="0" width="420" height="250" stroke="none" fill-opacity="0.5" fill="#ffffff" rx="0" ry="0" style="stroke: none; fill-opacity: 0.5; fill: rgb(255, 255, 255);"></rect><rect x="0" y="0" width="420" height="250" stroke="#767575" stroke-opacity="0.5" stroke-width="0" fill="none" rx="0" ry="0" style="stroke: rgb(118, 117, 117); stroke-opacity: 0.5; fill: none;"></rect></g><g class="raphael-group-73-canvas"><rect x="64" y="20" width="341" height="157" rx="0" ry="0" stroke-width="0" stroke="#545454" stroke-opacity="1" stroke-linejoin="miter" fill="none" style="stroke: rgb(84, 84, 84); stroke-opacity: 1; stroke-linejoin: miter; fill: none;"></rect><rect x="64" y="20" width="341" height="157" rx="0" ry="0" stroke-width="0" stroke="none" fill-opacity="1" fill="#ffffff" style="stroke: none; fill-opacity: 1; fill: rgb(255, 255, 255);"></rect></g><g class="raphael-group-76-axisbottom"><g class="raphael-group-79-x-axis-bands"></g><g class="raphael-group-85-y-axis-bands"><rect x="64" y="114.2" width="341" height="31.39999999999999" fill-opacity="0" fill="#eeeeee" stroke-width="0" rx="0" ry="0" stroke="#000000" style="fill-opacity: 0; fill: rgb(238, 238, 238); stroke: rgb(0, 0, 0);"></rect><rect x="64" y="51.400000000000006" width="341" height="31.39999999999999" fill-opacity="0" fill="#eeeeee" stroke-width="0" rx="0" ry="0" stroke="#000000" style="fill-opacity: 0; fill: rgb(238, 238, 238); stroke: rgb(0, 0, 0);"></rect></g><g class="raphael-group-91-y-axis-bands"></g><g class="raphael-group-81-x-axis-lines"></g><g class="raphael-group-87-y-axis-lines"><path d="M64,146.5L405,146.5" stroke="#999999" stroke-opacity="1" stroke-width="1" stroke-dasharray="1,2" fill="none" shape-rendering="crispEdges" style="stroke: rgb(153, 153, 153); stroke-opacity: 1; fill: none; shape-rendering: crispedges;"></path><path d="M64,114.5L405,114.5" stroke="#999999" stroke-opacity="1" stroke-width="1" stroke-dasharray="1,2" fill="none" shape-rendering="crispEdges" style="stroke: rgb(153, 153, 153); stroke-opacity: 1; fill: none; shape-rendering: crispedges;"></path><path d="M64,83.5L405,83.5" stroke="#999999" stroke-opacity="1" stroke-width="1" stroke-dasharray="1,2" fill="none" shape-rendering="crispEdges" style="stroke: rgb(153, 153, 153); stroke-opacity: 1; fill: none; shape-rendering: crispedges;"></path><path d="M64,51.5L405,51.5" stroke="#999999" stroke-opacity="1" stroke-width="1" stroke-dasharray="1,2" fill="none" shape-rendering="crispEdges" style="stroke: rgb(153, 153, 153); stroke-opacity: 1; fill: none; shape-rendering: crispedges;"></path><path d="M64,20.5L405,20.5" stroke="#999999" stroke-opacity="1" stroke-width="1" stroke-dasharray="1,2" fill="none" shape-rendering="crispEdges" style="stroke: rgb(153, 153, 153); stroke-opacity: 1; fill: none; shape-rendering: crispedges;"></path></g><g class="raphael-group-93-y-axis-lines"></g><g class="fusioncharts-xaxis-0-gridlabels"><text class="fusioncharts-label" fill="#333333" x="67" y="202" text-anchor="middle" transform="matrix(1,0,0,1,0,0)" stroke="none" style="fill: rgb(51, 51, 51); text-anchor: middle; stroke: none;"><tspan dy="-3.1953125" x="67">03/24</tspan></text></g><g class="fusioncharts-yaxis-0-gridlabels"><text class="fusioncharts-label" fill="#333333" x="51" y="177" text-anchor="end" transform="matrix(1,0,0,1,0,0)" stroke="none" style="fill: rgb(51, 51, 51); text-anchor: end; stroke: none;"><tspan dy="4" x="51">10.5%</tspan></text><text class="fusioncharts-label" fill="#333333" x="51" y="145.6" text-anchor="end" transform="matrix(1,0,0,1,0,0)" stroke="none" style="fill: rgb(51, 51, 51); text-anchor: end; stroke: none;"><tspan dy="3.9984374999999943" x="51">28.4%</tspan></text><text class="fusioncharts-label" fill="#333333" x="51" y="114.2" text-anchor="end" transform="matrix(1,0,0,1,0,0)" stroke="none" style="fill: rgb(51, 51, 51); text-anchor: end; stroke: none;"><tspan dy="4.004687500000003" x="51">46.3%</tspan></text><text class="fusioncharts-label" fill="#333333" x="51" y="82.8" text-anchor="end" transform="matrix(1,0,0,1,0,0)" stroke="none" style="fill: rgb(51, 51, 51); text-anchor: end; stroke: none;"><tspan dy="3.995312499999997" x="51">64.2%</tspan></text><text class="fusioncharts-label" fill="#333333" x="51" y="51.400000000000006" text-anchor="end" transform="matrix(1,0,0,1,0,0)" stroke="none" style="fill: rgb(51, 51, 51); text-anchor: end; stroke: none;"><tspan dy="4.001562500000006" x="51">82.1%</tspan></text><text class="fusioncharts-label" fill="#333333" x="51" y="20" text-anchor="end" transform="matrix(1,0,0,1,0,0)" stroke="none" style="fill: rgb(51, 51, 51); text-anchor: end; stroke: none;"><tspan dy="4" x="51">100%</tspan></text></g><g class="fusioncharts-yaxis-1-gridlabels"></g><g class="raphael-group-96-axis-name"></g><g class="raphael-group-110-axis-lines"><path d="M63.5,177L63.5,20" stroke="#000000" stroke-opacity="1" stroke-width="1" fill="none" style="stroke: rgb(0, 0, 0); stroke-opacity: 1; fill: none;"></path></g><g class="raphael-group-113-axis-lines"><path d="M63,177.5L405,177.5" stroke="#999999" stroke-opacity="1" stroke-width="1" fill="none" style="stroke: rgb(153, 153, 153); stroke-opacity: 1; fill: none;"></path></g></g><g class="raphael-group-67-dataset"><g class="raphael-group-115-line-connector"><g class="raphael-group-116-connector-shadow"></g><g class="raphael-group-117-anchor-shadow"></g><g class="raphael-group-118-connector" clip-path=""><path d="M67,175L402,177" fill="none" stroke="#79afde" stroke-width="4" stroke-opacity="1" stroke-linecap="round" stroke-linejoin="round" style="fill: none; stroke: rgb(121, 175, 222); stroke-opacity: 1; stroke-linecap: round; stroke-linejoin: round;"></path></g><g class="raphael-group-119-anchors"><path d="M67,175L67,175Z" fill="#79afde" stroke="#79afde" fill-opacity="1" stroke-width="1" stroke-opacity="1" style="fill: rgb(121, 175, 222); stroke: rgb(121, 175, 222); fill-opacity: 1; stroke-opacity: 1; display: none;"></path><path d="M402,177L402,177Z" fill="#79afde" stroke="#79afde" fill-opacity="1" stroke-width="1" stroke-opacity="1" style="fill: rgb(121, 175, 222); stroke: rgb(121, 175, 222); fill-opacity: 1; stroke-opacity: 1; display: none;"></path></g><g class="raphael-group-125-connector-shadow"></g><g class="raphael-group-126-anchor-shadow"></g><g class="raphael-group-127-connector" clip-path=""><path d="M67,175L402,177" fill="none" stroke="#536c82" stroke-width="4" stroke-opacity="1" stroke-linecap="round" stroke-linejoin="round" style="fill: none; stroke: rgb(83, 108, 130); stroke-opacity: 1; stroke-linecap: round; stroke-linejoin: round;"></path></g><g class="raphael-group-128-anchors"><path d="M67,175L67,175Z" fill="#536c82" stroke="#536c82" fill-opacity="1" stroke-width="1" stroke-opacity="1" style="fill: rgb(83, 108, 130); stroke: rgb(83, 108, 130); fill-opacity: 1; stroke-opacity: 1; display: none;"></path><path d="M402,177L402,177Z" fill="#536c82" stroke="#536c82" fill-opacity="1" stroke-width="1" stroke-opacity="1" style="fill: rgb(83, 108, 130); stroke: rgb(83, 108, 130); fill-opacity: 1; stroke-opacity: 1; display: none;"></path></g></g></g><g class="raphael-group-77-axistop"><g class="raphael-group-78-x-axis-bands"></g><g class="raphael-group-84-y-axis-bands"></g><g class="raphael-group-90-y-axis-bands"></g><g class="raphael-group-80-x-axis-lines"></g><g class="raphael-group-86-y-axis-lines"></g><g class="raphael-group-92-y-axis-lines"></g><g class="fusioncharts-xaxis-0-gridlabels"></g><g class="fusioncharts-yaxis-0-gridlabels"></g><g class="fusioncharts-yaxis-1-gridlabels"></g></g><g class="fusioncharts-datalabels" transform="matrix(1,0,0,1,0,0)"></g><g class="fusioncharts-legend" transform="matrix(1,0,0,1,150.5,210.5)"><rect x="0" y="0" width="168" height="25" rx="0" ry="0" stroke="#545454" stroke-opacity="0" stroke-width="1" fill-opacity="0" fill="#ffffff" style="stroke: rgb(84, 84, 84); stroke-opacity: 0; fill-opacity: 0; fill: rgb(255, 255, 255);"></rect><text class="fusioncharts-legenditem" x="23" y="6.5" fill="#666666" text-anchor="start" font-size="10px" stroke="none" style="fill: rgb(102, 102, 102); text-anchor: start; cursor: pointer; font-size: 10px; stroke: none;"><tspan dy="9.5" x="23">AcmeCo 1</tspan></text><path stroke-width="4" stroke="#79afde" stroke-opacity="1" d="M7,12.5L18,12.5" fill="none" style="stroke: rgb(121, 175, 222); stroke-opacity: 1; cursor: pointer; fill: none;"></path><circle cx="12.5" cy="12.5" r="3.3" fill="#79afde" stroke="#79afde" fill-opacity="1" stroke-width="1" style="fill: rgb(121, 175, 222); stroke: rgb(121, 175, 222); cursor: pointer; fill-opacity: 1;"></circle><rect x="4" y="4" width="69" height="17" rx="0" ry="0" fill-opacity="0.000001" fill="#c0c0c0" stroke-width="1" stroke="none" style="fill-opacity: 0.000001; fill: rgb(192, 192, 192); stroke: none; cursor: pointer;"></rect><text class="fusioncharts-legenditem" x="102.85" y="6.5" fill="#666666" text-anchor="start" font-size="10px" stroke="none" style="fill: rgb(102, 102, 102); text-anchor: start; cursor: pointer; font-size: 10px; stroke: none;"><tspan dy="9.5" x="102.85">Test</tspan></text><path stroke-width="4" stroke="#536c82" stroke-opacity="1" d="M86.85,12.5L97.85,12.5" fill="none" style="stroke: rgb(83, 108, 130); stroke-opacity: 1; cursor: pointer; fill: none;"></path><circle cx="92.35" cy="12.5" r="3.3" fill="#536c82" stroke="#536c82" fill-opacity="1" stroke-width="1" style="fill: rgb(83, 108, 130); stroke: rgb(83, 108, 130); cursor: pointer; fill-opacity: 1;"></circle><rect x="83.85" y="4" width="79" height="17" rx="0" ry="0" fill-opacity="0.000001" fill="#c0c0c0" stroke-width="1" stroke="none" style="fill-opacity: 0.000001; fill: rgb(192, 192, 192); stroke: none; cursor: pointer;"></rect></g><g class="raphael-group-68-hot"><circle cx="67" cy="175" r="5" stroke="#c0c0c0" stroke-opacity="0.000001" stroke-width="1" fill-opacity="0.000001" fill="#c0c0c0" style="stroke: rgb(192, 192, 192); stroke-opacity: 0.000001; fill-opacity: 0.000001; fill: rgb(192, 192, 192);"></circle><circle cx="402" cy="177" r="5" stroke="#c0c0c0" stroke-opacity="0.000001" stroke-width="1" fill-opacity="0.000001" fill="#c0c0c0" style="stroke: rgb(192, 192, 192); stroke-opacity: 0.000001; fill-opacity: 0.000001; fill: rgb(192, 192, 192);"></circle><circle cx="67" cy="175" r="5" stroke="#c0c0c0" stroke-opacity="0.000001" stroke-width="1" fill-opacity="0.000001" fill="#c0c0c0" style="stroke: rgb(192, 192, 192); stroke-opacity: 0.000001; fill-opacity: 0.000001; fill: rgb(192, 192, 192);"></circle><circle cx="402" cy="177" r="5" stroke="#c0c0c0" stroke-opacity="0.000001" stroke-width="1" fill-opacity="0.000001" fill="#c0c0c0" style="stroke: rgb(192, 192, 192); stroke-opacity: 0.000001; fill-opacity: 0.000001; fill: rgb(192, 192, 192);"></circle></g><g class="raphael-group-71-buttons"></g></svg></span>
              </div>
              And here is the new error:

              Code:
              2015-03-27 15:25:05,516 INFO  [c.i.s.RequestContext] [AsyncAppender-Dispatcher-Thread-24]: URL: '/static/isomorphic/IDACall', User-Agent: 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.89 Safari/537.36': Safari with Accept-Encoding header
              2015-03-27 15:25:05,540 INFO  [c.i.s.IDACall] [AsyncAppender-Dispatcher-Thread-24]: smartClientIdaCallServlet - Performing 1 operation(s)
              2015-03-27 15:25:05,552 WARN  [c.i.s.RequestContext] [AsyncAppender-Dispatcher-Thread-24]: rpcRequest.execute() failed: 
              java.lang.Exception: Unable to locate isc_builtin.app.xml - check to make sure it's in available in the CLASSPATH
              	at com.isomorphic.rpc.RPCDMI.loadAppConfig(RPCDMI.java:351) ~[isomorphic-core-rpc-9.1-20150310.jar:na]
              	at com.isomorphic.rpc.RPCDMI.execute(RPCDMI.java:137) ~[isomorphic-core-rpc-9.1-20150310.jar:na]
              	at com.isomorphic.rpc.RPCDMI.execute(RPCDMI.java:66) ~[isomorphic-core-rpc-9.1-20150310.jar:na]
              	at com.isomorphic.rpc.RPCRequest.execute(RPCRequest.java:231) ~[isomorphic-core-rpc-9.1-20150310.jar:na]
              	at com.isomorphic.servlet.IDACall.handleRPCRequest(IDACall.java:284) ~[isomorphic-core-rpc-9.1-20150310.jar:na]
              	at com.isomorphic.servlet.IDACall.processRPCTransaction(IDACall.java:168) ~[isomorphic-core-rpc-9.1-20150310.jar:na]
              	at com.isomorphic.servlet.IDACall.processRequest(IDACall.java:137) ~[isomorphic-core-rpc-9.1-20150310.jar:na]
              	at com.isomorphic.servlet.IDACall.doPost(IDACall.java:73) ~[isomorphic-core-rpc-9.1-20150310.jar:na]
              	at javax.servlet.http.HttpServlet.service(HttpServlet.java:646) ~[servlet-api.jar:na]
              	at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:152) ~[isomorphic-core-rpc-9.1-20150310.jar:na]
              	at javax.servlet.http.HttpServlet.service(HttpServlet.java:727) ~[servlet-api.jar:na]
              	at com.etouchpoint.common.web.spring.servlet.DelegatingServletProxy.invokeDelegate(DelegatingServletProxy.java:213) ~[etouchpoint-web-core-7.7.0.0-SNAPSHOT.jar:na]
              	at com.etouchpoint.common.web.spring.servlet.DelegatingServletProxy.service(DelegatingServletProxy.java:128) ~[etouchpoint-web-core-7.7.0.0-SNAPSHOT.jar:na]
              	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) ~[catalina.jar:7.0.55]
              	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
              	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) ~[tomcat7-websocket.jar:7.0.55]
              	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.55]
              	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
              	at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:86) ~[struts2-core-2.3.16.3.jar:2.3.16.3]
              	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
              	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
              	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.55]
              	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
              	at com.etouchpoint.common.web.filter.cache.FingerprintFilter.doFilter(FingerprintFilter.java:75) ~[etouchpoint-web-core-7.7.0.0-SNAPSHOT.jar:na]
              	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
              	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
              	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.55]
              	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
              	at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:186) ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
              	at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160) ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
              	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
              	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261) ~[spring-web-4.1.4.RELEASE.jar:4.1.4.RELEASE]
              	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.55]
              	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.55]
              	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) ~[catalina.jar:7.0.55]
              	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) ~[catalina.jar:7.0.55]
              	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) ~[catalina.jar:7.0.55]
              	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) ~[catalina.jar:7.0.55]
              	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950) ~[catalina.jar:7.0.55]
              	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) ~[catalina.jar:7.0.55]
              	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408) ~[catalina.jar:7.0.55]
              	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070) ~[tomcat-coyote.jar:7.0.55]
              	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611) ~[tomcat-coyote.jar:7.0.55]
              	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316) ~[tomcat-coyote.jar:7.0.55]
              	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) ~[na:1.8.0_05]
              	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) ~[na:1.8.0_05]
              	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-coyote.jar:7.0.55]
              	at java.lang.Thread.run(Thread.java:745) [na:1.8.0_05]
              I have also attached a screenshot of your jar in my Eclipse dependency tree with the app_builtin.xml file showing.

              Thank you.
              Attached Files

              Comment


                #8
                Sorry, but this continues to be some kind of odd environment issue we can't solve for you.

                As you've proven, isc_builtin.app.xml is in the .jar. We are loading the file from the classpath via standard Java APIs. Somehow, your environment is disallowing this load, getting confused between .jars, or similar.

                Comment


                  #9
                  Originally posted by Isomorphic View Post
                  Sorry, but this continues to be some kind of odd environment issue we can't solve for you.

                  As you've proven, isc_builtin.app.xml is in the .jar. We are loading the file from the classpath via standard Java APIs. Somehow, your environment is disallowing this load, getting confused between .jars, or similar.
                  I disagree, this would happen every time if it was an environmental issue. I can now export all of the other examples I have provided, which suggests there is something wrong with this particular SVG string on your processing engine side. How can you reconcile these other examples working (and accessing isc_builtin.app.xml), while this singular other example cannot?

                  Comment


                    #10
                    The error message is an inability to load a basic resource from a .jar and occurs before the server has even begun processin the request body as a whole, let alone the actual SVG string.

                    Something is very odd about your environment if this can happen from one request and not others, and consistently. Perhaps you have some kind of security software scanning requests, and it somehow affects class loader behavior.

                    Comment


                      #11
                      Originally posted by Isomorphic View Post
                      The error message is an inability to load a basic resource from a .jar and occurs before the server has even begun processin the request body as a whole, let alone the actual SVG string.

                      Something is very odd about your environment if this can happen from one request and not others, and consistently. Perhaps you have some kind of security software scanning requests, and it somehow affects class loader behavior.
                      My hunch was correct. For some reason, after the pdf engine fails once, the errors get swallowed under the "cannot find xml" error message. After restarting my Tomcat server, I found a new error when exporting this specific image:

                      Code:
                      2015-03-30 14:02:42,760 INFO  [c.i.s.IDACall] [AsyncAppender-Dispatcher-Thread-24]: smartClientIdaCallServlet - Performing 1 operation(s)
                      2015-03-30 14:02:42,774 INFO  [c.i.c.PdfExport] [AsyncAppender-Dispatcher-Thread-24]: CharSet used: UTF-8
                      
                      ***** CSSEngine: exception property.syntax.error:org.w3c.css.sac.CSSParseException: Unexpected token: 0 (see LexicalUnits).
                      
                      AttrValue:
                      
                      Exception:org.w3c.css.sac.CSSParseException
                      org.w3c.css.sac.CSSParseException: Unexpected token: 0 (see LexicalUnits).
                      	at org.apache.batik.css.parser.Parser.createCSSParseException(Parser.java:1678)
                      	at org.apache.batik.css.parser.Parser.parseTerm(Parser.java:1055)
                      	at org.apache.batik.css.parser.Parser.parseExpression(Parser.java:895)
                      	at org.apache.batik.css.parser.Parser.parsePropertyValueInternal(Parser.java:337)
                      	at org.apache.batik.css.parser.Parser.parsePropertyValue(Parser.java:1720)
                      	at org.apache.batik.css.engine.CSSEngine.getCascadedStyleMap(CSSEngine.java:767)
                      	at org.apache.batik.css.engine.CSSEngine.getComputedStyle(CSSEngine.java:876)
                      	at org.apache.batik.bridge.CSSUtilities.getComputedStyle(CSSUtilities.java:82)
                      	at org.apache.batik.bridge.CSSUtilities.convertDisplay(CSSUtilities.java:564)
                      	at org.apache.batik.bridge.GVTBuilder.buildGraphicsNode(GVTBuilder.java:206)
                      	at org.apache.batik.bridge.GVTBuilder.buildComposite(GVTBuilder.java:171)
                      	at org.apache.batik.bridge.GVTBuilder.buildGraphicsNode(GVTBuilder.java:219)
                      	at org.apache.batik.bridge.GVTBuilder.buildComposite(GVTBuilder.java:171)
                      	at org.apache.batik.bridge.GVTBuilder.buildGraphicsNode(GVTBuilder.java:219)
                      	at org.apache.batik.bridge.GVTBuilder.buildComposite(GVTBuilder.java:171)
                      	at org.apache.batik.bridge.GVTBuilder.build(GVTBuilder.java:82)
                      	at com.isomorphic.contentexport.SvgImage.getRootNode(SvgImage.java:32)
                      	at com.isomorphic.contentexport.SvgImage.<init>(SvgImage.java:42)
                      	at com.isomorphic.contentexport.PdfExport.convertSvgImages(PdfExport.java:392)
                      	at com.isomorphic.contentexport.PdfExport.convertAllSvgOccurrencesToBase64(PdfExport.java:381)
                      	at com.isomorphic.contentexport.PdfExport.getPdfRenderer(PdfExport.java:277)
                      	at com.isomorphic.contentexport.PdfExport.getPdfObject(PdfExport.java:77)
                      	at com.isomorphic.rpc.BuiltinRPC.getPdfObject(BuiltinRPC.java:851)
                      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
                      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                      	at java.lang.reflect.Method.invoke(Method.java:483)
                      	at com.isomorphic.base.Reflection.adaptArgsAndInvoke(Reflection.java:975)
                      	at com.isomorphic.base.Reflection.adaptArgsAndInvoke(Reflection.java:805)
                      	at com.isomorphic.rpc.RPCDMI.execute(RPCDMI.java:309)
                      	at com.isomorphic.rpc.RPCDMI.execute(RPCDMI.java:66)
                      	at com.isomorphic.rpc.RPCRequest.execute(RPCRequest.java:231)
                      	at com.isomorphic.servlet.IDACall.handleRPCRequest(IDACall.java:284)
                      	at com.isomorphic.servlet.IDACall.processRPCTransaction(IDACall.java:168)
                      	at com.isomorphic.servlet.IDACall.processRequest(IDACall.java:137)
                      	at com.isomorphic.servlet.IDACall.doPost(IDACall.java:73)
                      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:646)
                      	at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:152)
                      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
                      	at com.etouchpoint.common.web.spring.servlet.DelegatingServletProxy.invokeDelegate(DelegatingServletProxy.java:213)
                      	at com.etouchpoint.common.web.spring.servlet.DelegatingServletProxy.service(DelegatingServletProxy.java:128)
                      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
                      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
                      	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
                      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
                      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
                      	at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:86)
                      	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344)
                      	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261)
                      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
                      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
                      	at com.etouchpoint.common.web.filter.cache.FingerprintFilter.doFilter(FingerprintFilter.java:75)
                      	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344)
                      	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261)
                      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
                      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
                      	at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:186)
                      	at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)
                      	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344)
                      	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261)
                      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
                      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
                      	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
                      	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
                      	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
                      	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
                      	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
                      	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
                      	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
                      	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070)
                      	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
                      	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
                      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
                      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
                      	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
                      	at java.lang.Thread.run(Thread.java:745)
                      
                      ***** CSSEngine: exception....
                      I did notice that Batik uses "CSSParseException" from org.w3c.css.sac.*, but there is a class with the same name inside "core-renderer.jar" listed in the org.xhtmlrenderer.css.parser package. Could this be part of the issue?

                      Thank you.

                      Comment


                        #12
                        No, that can't be the issue, since they are different packages and even "*" imports are resolved at compile time.

                        Mixed versions of Batik .jars (or Batik dependencies) could be the issue.

                        It's also possible there really is a CSS error in the generated SVG. Batik's error message is so terrible that the next step is probably to take the SVG string (which you can obtain by calling FacetChart.getSVGString()) and run it through an SVG validator. If you get validation errors and they seem to be caused by the framework (as opposed to your own customizations), we can take a look.

                        Comment


                          #13
                          Originally posted by Isomorphic View Post
                          No, that can't be the issue, since they are different packages and even "*" imports are resolved at compile time.

                          Mixed versions of Batik .jars (or Batik dependencies) could be the issue.

                          It's also possible there really is a CSS error in the generated SVG. Batik's error message is so terrible that the next step is probably to take the SVG string (which you can obtain by calling FacetChart.getSVGString()) and run it through an SVG validator. If you get validation errors and they seem to be caused by the framework (as opposed to your own customizations), we can take a look.
                          It looks like this was the issue. The clipPath ID is not consistently being set to having an alpha character as the first character in the string. This is invalid XML, and Batik is complaining about it. I have reported this issue to FusionCharts.

                          Comment


                            #14
                            Just to confirm - you have some SVG in your export that was generated by FusionCharts? Because *FacetChart* is our class, part of the SmartGWT framework - it's not created by FusionCharts.

                            Comment


                              #15
                              Correct, the SVGs are being created by FusionCharts. I'm using SmartClient for the formatting and page building, but the charting framework is FusionCharts (which is pure JS). I had some really specific requirements that FacetCharts couldn't do when I started the project.

                              Comment

                              Working...
                              X