竹形誠司 ブログ
ご質問    »トピック一覧
掲示板へのスパムが多いため、「ご質問」のコーナーはユーザー登録制とさせていただきました。お手数ですが、上の「新規ユーザーの登録」メニューより登録をお願いします。
帳票Web
アプリケーション

受注開発始めました
詳しくは こちら
竹形 誠司 著/ラトルズ刊
JSP帳票アプリケーション実践開発入門
JSP帳票アプリケーション
実践開発入門

JSP業務アプリケーション短期開発入門
JSP業務アプリケーション
短期開発入門

Java+MySQL+Tomcatで始めるWebアプリケーション構築入門
Java+MySQL+Tomcatで始めるWebアプリケーション構築入門

Java+MySQL+Tomcatで作る掲示板とブログ
Java+MySQL+Tomcatで作る
掲示板とブログ
java+mysql+tomcatで作る掲示板とブログ blog/H ImageConv でのエラー
by sei[sei]
前回の質問では丁寧に答えてくださり、ありがとうございました。


今回はjava+mysql+tomcatで作る掲示板とブログ blog/H  ImageConv でのエラーです。

ImageConvをパスを確認してから実行したところ

ImageConv.java:61: エラー: パッケージcom.sun.image.codec.jpegは存在しません
                com.sun.image.codec.jpeg.JPEGCodec.createJPEGEncoder(baos).encode(bi2);


というエラーが発生しました。

ImageConv61行目の

com.sun.image.codec.jpeg.JPEGCodec.createJPEGEncoder(baos).encode(bi2);

この行に問題があるらしく、行を除外したら実行はできたのですが、やはり画像の表示はされませんでした。


このエラーコードを用いて自分で調べたところ

http://www.javainthebox.net/laboratory/JDK1.4/Graphics/ImageIO/ImageIO.html

こちらのサイトで

com.sun.image.codec.jpeg パッケージは com.sun のパッケージなのでいつ消えてなくなるか分かりません (J2SE v1.4.1 ではまだあるようです。)

とあったので、恐らく今は使えなくなってしまったのだと思いました。



私の方でも解決策を調べ、試してみたいと思いますが

エラーが出た行の動作を行うことができる、違う方法に心当たりがありましたら、教えていただけると嬉しいです。
投稿:sei[sei]/2012年 07月 13日 15時 54分 /更新:2012年 07月 13日 15時 54分
RE:java+mysql+tomcatで作る掲示板とブログ blog/H ImageConv でのエラー
by 竹形 誠司[takegata]
返事が遅くなりすみません。

Javaのバージョンのいくつで変わったのか正確には覚えていませんが、
今のシステムでは以下のようなクラスを使って同様のことができると思います。

java.awt.image.BufferedImage
java.awt.Graphics2D
javax.imageio.ImageIO

時間があれば、サンプルコードなども載せたいと思います。

投稿:竹形 誠司[takegata]/2012年 07月 19日 04時 37分 /更新:2012年 07月 19日 04時 37分
RE:java+mysql+tomcatで作る掲示板とブログ blog/H ImageConv でのエラー
by sei[sei]
お返事遅くなりました。

ありがとうございます。現在大学のテスト期間で、8月になったらシステム作成を再開するので教えて頂いた方法を調べ、試したいと思います。

はい。もしお時間に余裕がありましたらコードなども乗せて頂けたら嬉しいです。
投稿:sei[sei]/2012年 07月 23日 21時 30分 /更新:2012年 07月 23日 21時 30分
RE:java+mysql+tomcatで作る掲示板とブログ blog/H ImageConv でのエラー
by toshisan[toshisan]
初めて書き込みさせていただきます。
よろしくお願いします。

だいぶ古いトピックですが、
自分なりに書き換えて実行できたコードを記載します。

ImageConv.java の最後を抜粋
=========
・・ここまで省略・・
                                                    // 縮小版イメージ作成
        BufferedImage bi2=new BufferedImage(intScaledWidth, intScaledHeight,
                BufferedImage.TYPE_INT_BGR);
        Graphics2D g2=bi2.createGraphics();
        g2.drawImage(bi, 0, 0, intScaledWidth, intScaledHeight, null);
                                                // 引渡し用出力ストリーム作成
        ServletOutputStream output=response.getOutputStream();
        ImageOutputStream ios=ImageIO.createImageOutputStream(output);
        String suffix=getImageSuffix(strImageFile);
        ImageIO.write(bi2, suffix, ios);        // 縮小画像を送り返す
        ios.close();
    }

    private String getImageSuffix(String fileName) {
        if(fileName == null) return("jpeg");    // 取得不可ならJPEG とみなす
        int position = fileName.lastIndexOf(".")+1;
        if(0 < position) {
            return(fileName.substring(position));
        }
        return("jpeg");
    }
}
投稿:toshisan[toshisan]/2018年 08月 05日 11時 36分 /更新:2018年 08月 05日 11時 39分