2016-05-21 18 views
-1

私はアップロードしました... www.mywebsite.com/helloservlet /と/ helloservlet /と私は単純なHello Worldを示すindex.htmlを持っています!これは正常に動作しますが、私は、Javaアプリを入れたい場合、私は/WEB-INF/web.xmlをアップロード:WebサイトにJavaをアップロードしても動作しません

<?xml version="1.0" encoding="ISO-8859-1"?> 
<web-app version="3.0" 
    xmlns="http://java.sun.com/xml/ns/javaee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"> 

    <servlet> 
     <servlet-name>HelloWorldServlet</servlet-name> 
     <servlet-class>mypkg.HelloServlet</servlet-class> 
    </servlet> 

    <servlet-mapping> 
     <servlet-name>HelloWorldServlet</servlet-name> 
     <url-pattern>/sayhello</url-pattern> 
    </servlet-mapping> 
</web-app> 

と/helloservlet/WEB-INF/src/mypkg/HelloServlet.javaのあります

package mypkg; 

import java.io.*; 
import javax.servlet.*; 
import javax.servlet.http.*; 

public class HelloServlet extends HttpServlet { 
    @Override 
    public void doGet(HttpServletRequest request, HttpServletResponse response) 
       throws IOException, ServletException { 
     // Set the response message's MIME type 
     response.setContentType("text/html;charset=UTF-8"); 
     // Allocate a output writer to write the response message into the network socket 
     PrintWriter out = response.getWriter(); 

     // Write the response message, in an HTML page 
     try { 
     out.println("<!DOCTYPE html>"); 
     out.println("<html><head>"); 
     out.println("<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'>"); 
     out.println("<title>Hello, World</title></head>"); 
     out.println("<body>"); 
     out.println("<h1>Hello, world!</h1>"); // says Hello 
     // Echo client's request information 
     out.println("<p>Request URI: " + request.getRequestURI() + "</p>"); 
     out.println("<p>Protocol: " + request.getProtocol() + "</p>"); 
     out.println("<p>PathInfo: " + request.getPathInfo() + "</p>"); 
     out.println("<p>Remote Address: " + request.getRemoteAddr() + "</p>"); 
     // Generate a random number upon each request 
     out.println("<p>A Random Number: <strong>" + Math.random() + "</strong></p>"); 
     out.println("</body>"); 
     out.println("</html>"); 
     } finally { 
     out.close(); // Always close the output writer 
     } 
    } 
} 

が、私は

http://www.mywebsite.com/helloservlet/sayhello 

をしようとすると、それは私にエラーを与えます。 問題は何ですか?

ありがとうございます!

+0

ログファイルを読んだことがありますか? – selten98

+0

AH00128:ファイルが存在しない:/ htdocs/sayhelloしかし、私は/ sayhelloがweb.xmlにJavaクラスにマップされていると思っています... – WDrgn

+0

Tomcatのようなアプリケーションサーバーを使用していますか?もしあなたがいれば、あなたのコードを.warにコンパイルしてアップロードしてみましたか? – selten98

答えて

1

コードをホストするマシン上でTomcatなどのJavaアプリケーションサーバーを使用します。次に、このTomcatインスタンス(またはglassfishな​​ど)に.warをアップロードして、問題を修正する必要があります。

+0

私はJBossを使用します、ありがとう! – WDrgn

関連する問題