首页 新闻 会员 周边

SyntaxError: invalid syntax

0
悬赏园豆:50 [已关闭问题] 关闭于 2016-12-10 16:09

五月 13, 2016 3:32:45 下午 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet [jsp] in context with path [/ctcesims] threw exception [java.lang.StringIndexOutOfBoundsException: String index out of range: -1] with root cause
java.lang.StringIndexOutOfBoundsException: String index out of range: -1
    at java.lang.String.substring(String.java:1871)
    at org.apache.jsp.docUploadConvertAction_jsp._jspService(docUploadConvertAction_jsp.java:110)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1041)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:603)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:744)

问题补充:

错误部分代码

// 调用转换类DocConverter,并将需要转换的文件传递给该类的构造方法
            DocConverter d = new DocConverter(converfilename);
            // 调用conver方法开始转换,先执行doc2pdf()将office文件转换为pdf;再执行pdf2swf()将pdf转换为swf;  
            d.conver();
            // 调用getswfPath()方法,打印转换后的swf文件路径
            System.out.println(d.getswfPath());    
            // 生成swf相对路径,以便传递给flexpaper播放器
            //String swfpath = "upload"+d.getswfPath().substring(d.getswfPath().lastIndexOf("/"));
            String swfpath = d.getswfPath();
            System.out.println(swfpath);

伊夏丶的主页 伊夏丶 | 初学一级 | 园豆:9
提问于:2016-05-13 15:39
< >
分享
所有回答(2)
0

subString()的下标不对,你看看是不是d.getswfPath().lastIndexOf("/")获取不到...

URL地址可能是\\分隔!你可以在生成路径那里,调试一下。

xingoo | 园豆:711 (小虾三级) | 2016-05-15 13:26

对 没有获取地址 我还在改

支持(0) 反对(0) 伊夏丶 | 园豆:9 (初学一级) | 2016-05-16 09:26
0

今天我也遇到这个情况了 ,, 你是怎么解决的

伍春晖 | 园豆:202 (菜鸟二级) | 2016-09-05 20:37
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册