前提・実現したいこと
Eclipseで開発したTomcatベースのWebアプリをHerokuにデプロイしたい。
TomcatベースのEclipseプロジェクトをHerokuにデプロイする
上記の記事を参考に全く同じようにしてBUILD SUCCESSしたのですが、jspファイルの「Hello World!」が表示されてしまいました。
サーブレットが実行されて「Hello World on Heroku」が表示されるようにしたいです。
ローカルのTomcatでは「Hello World on Heroku」が表示されるのを確認済みです。
数日間挑戦しても解決しませんので、ご教示いただけると幸いです。
発生している問題・エラーメッセージ
サーブレットが実行されない。
該当のソースコード
TestServlet
1package dev.local; 2 3import java.io.IOException; 4 5import javax.servlet.ServletException; 6import javax.servlet.ServletOutputStream; 7import javax.servlet.http.HttpServlet; 8import javax.servlet.http.HttpServletRequest; 9import javax.servlet.http.HttpServletResponse; 10 11 12public class TestServlet extends HttpServlet { 13 private static final long serialVersionUID = 1L; 14 15 16 public TestServlet() { 17 super(); 18 // TODO Auto-generated constructor stub 19 } 20 21 22 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 23 // TODO Auto-generated method stub 24 ServletOutputStream out = response.getOutputStream(); 25 out.write("Hello World on Heroku".getBytes()); 26 out.flush(); 27 out.close(); 28 } 29}
indexjsp
1<html> 2<body> 3<h2>Hello World!</h2> 4</body> 5</html>
webxml
1<!DOCTYPE web-app PUBLIC 2 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" 3 "http://java.sun.com/dtd/web-app_2_3.dtd" > 4 5<web-app> 6 <display-name>Archetype Created Web Application</display-name> 7 <servlet> 8 <servlet-name>TestServlet</servlet-name> 9 <display-name>TestServlet</display-name> 10 <description></description> 11 <servlet-class>dev.local.TestServlet</servlet-class> 12 </servlet> 13 14 <servlet-mapping> 15 <servlet-name>TestServlet</servlet-name> 16 <url-pattern>/*</url-pattern> 17 </servlet-mapping> 18 19</web-app> 20
試したこと
1、warファイルを直接デプロイしてみましたが、同じ結果でした。
WAR Deployment
2、jspからサーブレットにリクエストを飛ばす。
index.jspからTestServlet.javaへのリクエストを飛ばすようなコードを書いてみました。
リンクを踏んだ瞬間404が表示されました。
HTTP Status 404
The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.
Tomcatで試した時は正常に動作しました。
どうもサーブレットを認識していないような感じです。
補足情報(FW/ツールのバージョンなど)
Eclipse 2018-9
Maven 3.6.3
Tomcat8
回答1件
あなたの回答
tips
プレビュー