質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

1回答

4161閲覧

サーブレットで画像の表示ができない

tixure55

総合スコア400

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2015/11/11 10:57

サーブレットで画像の表示ができません。
下記コードの抜粋

java

1protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 2 // TODO Auto-generated method stub 3 response.getWriter().write("Hello, World!"); 4 HttpSession session = request.getSession(); 5 Object obj = session.getAttribute("testdata"); 6 7 response.setContentType("text/html;charset=Shift-JIS"); 8 PrintWriter out = response.getWriter(); 9 out.println("<html>\n<head>\n<title>HelloWorld!</title>\n</head>\n<body>\n"); 10 out.println("<p>Hello World.</p>\n"); 11 out.println("<p>てすとてすとてすと</p>\n"); 12 out.println("<img src=\"./images/t55_01.png\">\n"); 13 }

t55_01.pngはプロジェクト直下のimagesフォルダの中に入っています。どこに画像を配置すれば画像をブラウザから読み込めますか?文言は表示できています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

argius

2015/11/11 12:50

プロジェクトの構成や、どのようにしてサーブレットを動かしているか、教えて抱けますか?
tixure55

2015/11/11 13:18

HelloServletプロジェクト内のsrc直下にHelloWorld.javaがあり、それが上記ソースコードです。どのようにしてというのがよくわからないのですが、Tomcat7のServersの中にserver.xml、context.xml、web.xmlなどを配置しています。 HelloWorld.java全文 import java.io.*; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import org.apache.catalina.connector.Response; import javax.servlet.*; import javax.servlet.http.*; /** * Servlet implementation class HelloWorld */ @WebServlet("/HelloWorld") public class HelloWorld extends HttpServlet { private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public HelloWorld() { super(); // 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 doIt(request, response); response.getWriter().write("Hello, World!"); HttpSession session = request.getSession(); Object obj = session.getAttribute("testdata"); response.setContentType("text/html;charset=Shift-JIS"); PrintWriter out = response.getWriter(); out.println("<html>\n<head>\n<title>HelloWorld!</title>\n</head>\n<body>\n"); out.println("<p>Hello World.</p>\n"); out.println("<p>てすとてすとてすと</p>\n"); out.println("<img src=\"./images/t55_01.png\">\n"); } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse * response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub } private void doIt(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("Shift_JIS"); response.setContentType("text/html; charset=Shift_JIS"); PrintWriter out = response.getWriter(); out.println("<html>"); out.println("<head>"); out.println("<title>JDBCTestServlet</title>"); out.println("</head>"); out.println("<body>"); out.println("<p>"); out.println("タイトルに"); out.println("Java"); out.println("という文字列を含む本は"); out.println("</p>"); out.println("<p>"); try { Connection con = DriverManager.getConnection("jdbc:mysql://localhost/db1?user=root&password=xg23y91a"); String selectStatement = "select *" + "from books"; PreparedStatement prepStmt = con.prepareStatement(selectStatement); prepStmt.setString(1, "%" + "Java" + "%"); ResultSet rs = prepStmt.executeQuery(); while (rs.next()) { String title = rs.getString("title"); out.println(title); out.println("<br>"); } rs.close(); prepStmt.close(); con.close(); } catch (SQLException e) { e.printStackTrace(); } out.println("</p>"); out.println("</body>"); out.println("</html>"); } }
argius

2015/11/11 13:27

Eclipseか何かを使っていますか?という意味です。 それとディレクトリー構成が分からないとどこにどのファイルを置けばよいか分かりません。WEB-INFを含め、どうなっているか教えてください。 コードは、この欄に書くと読めないので、できれば質問を再編集して追加してください。
guest

回答1

0

imagesフォルダはプロジェクト直下ではなくWebContentの中に入れなきゃダメな気がします。

投稿2015/11/11 23:38

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問