Link to home
Start Free TrialLog in
Avatar of huzefaq
huzefaq

asked on

How to fix this error: The server encountered an internal error ()

I get this when I try to go to this servlet

http://localhost:8080/chapters/pub?action=show_policy

Any idea what this error is about. Any help will be greatly appreciated

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

java.lang.StringIndexOutOfBoundsException: String index out of range: -1
      at java.lang.String.substring(String.java:1444)
      at java.lang.String.substring(String.java:1411)
      at com.ccim.servlet.PublicServlet.processRequest(PublicServlet.java:53)
      at com.ccim.servlet.PublicServlet.doGet(PublicServlet.java:29)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:696)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:200)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:146)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:209)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
      at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:144)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
      at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
      at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2358)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
      at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:118)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:116)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
      at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:127)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
      at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
      at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:152)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
      at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
      at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
      at java.lang.Thread.run(Thread.java:534)
Avatar of rrz
rrz
Flag of United States of America image

>at com.ccim.servlet.PublicServlet.doGet(PublicServlet.java:29)  
Show us  line 29 of  PublicServlet.  Are you looking for a character in a String that isn't there ? Or are you in a loop ? If you are in a loop, then show us the whole loop.
>>com.ccim.servlet.PublicServlet.doGet(PublicServlet.java:29)  
At this place he is calling the method processRequest which is getting the error...

>>com.ccim.servlet.PublicServlet.processRequest(PublicServlet.java:53) i.e. we need to look at the line 53 of processRequest.. most probably you are trying to do a substring of a string which is not there or is not long enough...
Show us the code & we will be in a better situation to hep


Avatar of Isisagate
Isisagate

in at com.ccim.servlet.PublicServlet.processRequest(PublicServlet.java:53)

there is a substring functin being called on a string that is empty or your substring is starting looks something like substring(-1,1) or something and that's making the page throw up.  Check to make sure the string is not empty before doing your substring or has at least the expected amount of characters.
ASKER CERTIFIED SOLUTION
Avatar of muktajindal
muktajindal
Flag of India image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial