-2

I have created a web project in eclipse and in order to run the project in Tomcat server i had exported the file in .war format. I have kept a separate computer to run the project, so i could use it from different computers as it has a static IP.

My current error is:

HTTP Status 500 - Error instantiating servlet class com.complexible.common.csv.DisplayRecord

I am adding my web.xml file. Please provide me the possible solutions.

<?xml version="1.0" encoding="UTF-8" ?> 
- <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
  <display-name>Museumnew</display-name> 
- <welcome-file-list>
  <welcome-file>index.html</welcome-file> 
  <welcome-file>index.htm</welcome-file> 
  <welcome-file>index.jsp</welcome-file> 
  <welcome-file>default.html</welcome-file> 
  <welcome-file>default.htm</welcome-file> 
  <welcome-file>default.jsp</welcome-file> 
  <welcome-file>/axis2-web/index.jsp</welcome-file> 
  </welcome-file-list>
- <servlet>
  <description /> 
  <display-name>DisplayRecord</display-name> 
  <servlet-name>DisplayRecord</servlet-name> 
  <servlet-class>com.complexible.common.csv.DisplayRecord</servlet-class> 
  </servlet>
- <servlet-mapping>
  <servlet-name>DisplayRecord</servlet-name> 
  <url-pattern>/DisplayRecord</url-pattern> 
  </servlet-mapping>
- <servlet>
  <display-name>Apache-Axis Servlet</display-name> 
  <servlet-name>AxisServlet</servlet-name> 
  <servlet-class>org.apache.axis.transport.http.AxisServlet</servlet-class> 
  </servlet>
- <servlet-mapping>
  <servlet-name>AxisServlet</servlet-name> 
  <url-pattern>/servlet/AxisServlet</url-pattern> 
  </servlet-mapping>
- <servlet-mapping>
  <servlet-name>AxisServlet</servlet-name> 
  <url-pattern>*.jws</url-pattern> 
  </servlet-mapping>
- <servlet-mapping>
  <servlet-name>AxisServlet</servlet-name> 
  <url-pattern>/services/*</url-pattern> 
  </servlet-mapping>
- <servlet>
  <display-name>Axis Admin Servlet</display-name> 
  <servlet-name>AdminServlet</servlet-name> 
  <servlet-class>org.apache.axis.transport.http.AdminServlet</servlet-class> 
  <load-on-startup>100</load-on-startup> 
  </servlet>
- <servlet-mapping>
  <servlet-name>AdminServlet</servlet-name> 
  <url-pattern>/servlet/AdminServlet</url-pattern> 
  </servlet-mapping>
- <servlet>
  <display-name>Apache-Axis Admin Servlet Web Admin</display-name> 
  <servlet-name>AxisAdminServlet</servlet-name> 
  <servlet-class>org.apache.axis2.transport.http.AxisAdminServlet</servlet-class> 
  <load-on-startup>100</load-on-startup> 
  </servlet>
- <servlet-mapping>
  <servlet-name>AxisAdminServlet</servlet-name> 
  <url-pattern>/axis2-admin/*</url-pattern> 
  </servlet-mapping>
  </web-app>

Here is a servlet code.

package com.complexible.common.csv;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.json.JSONException;
import org.json.simple.parser.ParseException;

/**
 * Servlet implementation class DisplayRecord
 */
public class DisplayRecord extends HttpServlet {
    private static final long serialVersionUID = 1L;

    /**
     * @throws IOException 
     * @throws ParseException 
     * @throws JSONException 
     * @see HttpServlet#HttpServlet()
     */
    public DisplayRecord() throws IOException, JSONException, ParseException {
        super();

        String  getrec=GetRecord.getrec("http://phdprototype.tk/collectionimage/4D0BFF17-5810-4644-A550-D35EE090D4A8.png","3","0");
        System.out.println(getrec);
        // TODO Auto-generated constructor stub
    }

    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
                PrintWriter out= response.getWriter();
                //out.print("hesadlo");

                String abc="";

                try {
                    abc = GetRecord.getrec("http://phdprototype.tk/collectionimage/4D0BFF17-5810-4644-A550-D35EE090D4A8.png","3","0");
                } catch (JSONException | ParseException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                out.print(abc);
        // TODO Auto-generated method stub
    }

    /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
    }

}
Ravi Vyas
  • 137
  • 1
  • 4
  • 19

2 Answers2

-1

I think this error your getting because you are not made your servlet class as public. The object of your servlet class should be visible to the container because container creating object for your servlet class.

-2

Thank you for the replies, when i checked a log file, i got to know that the path of one of the file was wrong and i fixed that. Now it is working properly.

Ravi Vyas
  • 137
  • 1
  • 4
  • 19