0

I am trying to run a java servlet on an Ubuntu machine. I have copied my project directory and web.xml file below. I have Java and Tomcat9 installed, and Tomcat seems to be working properly, as the initial splash screen shows up on port 8080. I have an index.jsp file in a WebContent folder which I can access and view just fine at domain:8081/WebContent (the project has been configured to run on port 8081), so it seems as though my server.xml file is correctly configured, however I am unable to run my servlets, TrieDriver and SpellCheckDriver and get a HTTP Status 404 – Not Found. In servlet-class tag in my web.xml file, I have tried prepending the package name to the servlet class name, as shown in the AutoComplete servlet definition, and without the package name, as shown in the SpellCheck servlet definition. I tried multiple combinations to try to access the page, /SpellCheck/SpellCheck, /spellCheck/SpellCheck, /SpellCheck, none of which worked, with combinations of server-class having the package and without. I tried looking at examples, and it seems as though my format follows what they have, but I can't get it to work. All help is appreciated.

Project Directory:

── SpellCheck
    ├── WEB-INF
    │   ├── classes
    │   │   ├── spellCheck
    │   │   │   ├── Main.class
    │   │   │   ├── SCNode.class
    │   │   │   ├── SiteFormat.class
    │   │   │   ├── SpellCheck.class
    │   │   │   └── SpellCheckDriver.class
    │   │   └── trie
    │   │       ├── Trie.class
    │   │       └── TrieDriver.class
    │   ├── src
    │   │   ├── spellCheck
    │   │   │   ├── Main.java
    │   │   │   ├── SCNode.java
    │   │   │   ├── SiteFormat.java
    │   │   │   ├── SpellCheck.java
    │   │   │   └── SpellCheckDriver.java
    │   │   └── trie
    │   │       ├── Trie.java
    │   │       └── TrieDriver.java
    │   ├── web.xml
    └── WebContent
        ├── META-INF
        │   └── MANIFEST.MF
        ├── index.jsp

web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
         http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">

        <servlet>
                <servlet-name>AutoComplete</servlet-name>
                <servlet-class>trie.TrieDriver</servlet-class>
        </servlet>

        <servlet-mapping>
                <servlet-name>AutoComplete</servlet-name>
                <url-pattern>/AutoComplete</url-pattern>
        </servlet-mapping>



        <servlet>
                <servlet-name>SpellCheck</servlet-name>
                <servlet-class>SpellCheckDriver</servlet-class>
        </servlet>

        <servlet-mapping>
                <servlet-name>SpellCheck</servlet-name>
                <url-pattern>/SpellCheck</url-pattern>
        </servlet-mapping>

</web-app>
Sal
  • 1,471
  • 2
  • 15
  • 36
  • It is usually very helpful if you mention the error you are getting. What exactly happens when you try to access domain:8081/SpellCheck ? – Kinnison84 May 07 '20 at 13:07
  • @Kinnison84 I keep getting `HTTP Status 404 – Not Found`. I have updated the question to include that. – Sal May 07 '20 at 13:15

0 Answers0