ID登録せずに、無料で質問できる♪ 教えて!gooアプリ>>

JSPファイルの
import=
のところに
javax.mail.*
を入れると
インポートできないと表示されます。
APIドキュメントを見たら
javax.mailが存在しない。
これはどうすれば対処できるのでしょうか。
どなたか分かる方がいましたら、是非とも教えて頂けると感謝する次第です。
どうぞ宜しくお願い致します。

A 回答 (3件)

.;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\mailapi.jar;%JAVA_HOME%\lib\activation.jar;%JAVA_HOME%\lib\j2ee.jar


の中に存在しないものがあるんじゃない?

さっきも言ったけど
J2EEをダウンロードしてこないとダメよ。
JDKの中にはjavax.mailは入ってないから。
    • good
    • 2
この回答へのお礼

あれれ、書く場所が無かったから補足に書いたはずなんですけど。
実はあれから一度クラスパスを全部消去して、新たに書き直したんですね。
そうしたら、上手くいきましたって報告をしたんだけどな。
送信したはずなのにな。
全然違うところに書いちゃったか(冷汗
できたのはいいんですけど、不安で物凄く疲れました。
姉御に1つ訊きたいんですけど、自分の姉御に対する言葉は正直重いですか?
たまにプツーーーーンてきれるときがあるのでいつも怒っちゃったのかな、と不安でいるんですけど。
もう1つ締め切ってないところもサンプルが来たんで締め切りますね。
姉御には感謝してます。

お礼日時:2009/03/11 12:25

J2EEはJDKとは別にダウンロードしてこないとだめよ。


入手すれば
たぶんZIPファイルでの入手かな。
その中にlib\j2ee.jarがあるんで
クラスパスにこのj2ee.jarを設定すればOKよ。
    • good
    • 1
この回答へのお礼

姉御、度々すいません。
CLASSPATHは
.;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\mailapi.jar;%JAVA_HOME%\lib\activation.jar;%JAVA_HOME%\lib\j2ee.jar
なんですけど。
import="javax.mail.*"
にすると、
インポートされたjavax.mail.*は見つかりません、と出ます。
どうして見つからないんでしょう。
ちなみに%JAVA_HOME%は
jdk1.6.0_06なんですけどね。
このままだと先に進めないです……トホホ……。

お礼日時:2009/03/11 04:30

J2EEのライブラリに


クラスパスが通っていないんじゃないの?

この回答への補足

でも、クラスパスにどう書くんでしょうか。
JavaMailもJAFもダウンロードは出来ないし、行き詰まりですね。
先へ進めない……トホホ……。

補足日時:2009/03/10 22:59
    • good
    • 0
この回答へのお礼

おお、姉御!!!
暫く音沙汰無かったんで見捨てられたと思ってました。
APIドキュメントのパッケージ欄には無いんですよね。
でも、クラスパスが通ってないっていうのも一理あるかもですね。

お礼日時:2009/03/10 22:51

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

あなたにオススメのQ&A

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q『javax.mail.*』が見つかりません。

『javax.mail.*』が見つかりません。
7年ぶりにプログラムを作ることになりました。
JavaMailを使ったソース(送信部分)でimportがエラーになります。
状況は以下の通りです。

1.ソース先頭で『import javax.mail.*』をコーディングしています。
2.javamail-1.4.3.zipのmail.jarにパスを通してあります。
3.jaf-1_1_1.zipのactivation.jarにパスを通してあります。

ここで、『j2ee.jar』を入手してパスを通すため、J2EEをダウンロードしようとしましたが、見つかりません。

4.JAVA EE6をダウンロードしてインストールしたら、glassfishv3が出来ました。
  (JAVA EE6が最新版のようでしたので…)
5.glassfishv3下に『j2ee.jar』が見当たりません。
6.jdk1.6.0_19下にもjre6にもありません。

いろいろとググってみましたが、『j2ee.jarにパスを通す』という回答ばかり見つかります。
『j2ee.jar』の入手方法、もしくは『JAVA EE6に含まれる別のjarで対応』するのか、どなたか御教授お願いいたします。

『javax.mail.*』が見つかりません。
7年ぶりにプログラムを作ることになりました。
JavaMailを使ったソース(送信部分)でimportがエラーになります。
状況は以下の通りです。

1.ソース先頭で『import javax.mail.*』をコーディングしています。
2.javamail-1.4.3.zipのmail.jarにパスを通してあります。
3.jaf-1_1_1.zipのactivation.jarにパスを通してあります。

ここで、『j2ee.jar』を入手してパスを通すため、J2EEをダウンロードしようとしましたが、見つかりません。

4.JAVA EE6をダウンロード...続きを読む

Aベストアンサー

glassfishをインストールしたのであれば、modulesフォルダの中にmail.jarがありますのでこれをクラスパスに追加してみてください。
メール送信についてはこのjarだけで大丈夫だと思います。

Qシンボルが見つかりませんというエラーが理解できません。

以下のようなじゃんけんゲームのプログラムを書いたのですが、「シンボルが見つかりません。」というエラーが表示されるのですが、エラーの意味が理解できず、解決できません。どこが間違っているのか教えていただけませんか。

import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;
import java.io.File;

public class janken extends Applet
implements Runnable, ActionListener {
private static final int EXTERNAL_BUFFER_SIZE = 128000;

Image image[] = new Image[3];
Thread t;
int index1 = 0;
int index2 = 0;
String msg = "";
String msg1 = "";

boolean state = false;
Button b1 = new Button("ぐー");
Button b2 = new Button("ちょき");
Button b3 = new Button("ぱー");

public void init(){
for(int i = 0; i<=2; i++){
img[i] = getImage(getDocumentBase(),"hanabi" + (i+1) + ".JPG");
}
add(b1);
add(b2);
add(b3);
b1.addActionListener(this);
b2.addActionListener(this);
b3.addActionListener(this);
msg1 = "結果は・・";

}

public void paint(Graphics g){
g.drawImage(img[index1],350,30,this);
g.drawImage(img[index2],695,30,this);
g.drawString("コンピューター",420,300);
g.drawString("あなた",800,300);
g.drawString(msg,630,320);
g.drawString(msg1,550,320);
}

public void start(){
state = true;
t = new Thread(this);
t.start();

}

public void run(){
while(state){
index1++;
if(index1 == 3){
index1 = 0;
}
index2++;
if(index2 == 3){
index2 = 0;
}
repaint();
try {
Thread.sleep(60);
}catch(InterruptedException e) { }
}
}

public void actionPerformed(ActionEvent e){
if(state == false) {
start();
return;

}
state = false;
if(e.getSource() == b1) {
msg = "ぐー";
index2 = 0;
}

else if(e.getSource() == b2){
msg = "ちょき";
index2 = 1;
}

else if(e.getSource() == b3){
msg = "ぱー";
index2 = 2;
}
check();
repaint();
}

public void check() {
if(index1 == index2) msg ="あいこ";


else if (index1 == 0) {
if(index2 == 2) msg="あなたの勝ち";
else msg ="あなたの負け";
}

else if(index1 == 1) {
if(index2 == 0) msg="あなたの勝ち";
else msg="あなたの負け";
}

else if(index1 == 2) {
if(index2 == 1) msg="あなたの勝ち";
else msg="あなたの負け";
}

}
}

以下のようなじゃんけんゲームのプログラムを書いたのですが、「シンボルが見つかりません。」というエラーが表示されるのですが、エラーの意味が理解できず、解決できません。どこが間違っているのか教えていただけませんか。

import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;
import java.io.File;

public class janken extends Applet
implements Runnable, ActionListener {
private static final int EXTERNAL_BUFFER_SIZE = 128000;

Image image[] = new Imag...続きを読む

Aベストアンサー

「シンボルを見つけられません。」というエラーの下に何か表示がありませんでしたか?そこにヒントがあると考えられます。
シンボルを見つけられませんといエラーが表示される主な理由は4つあります。
(1)クラス、メソッド、変数などの綴りミスや定義していない変数を使用している可能性がある。
(2)コンストラクタを呼び出すときに、newを忘れている可能性がある。(3)公開されていないメンバーを呼び出している可能性がある。
(4)必要なimport文を記述し忘れている可能性がある。
ここでのあなたのエラーは(1)番ではないでしょうか?上記ではimageとなっている変数がimgになっていますね。
これはエラー表示をよく見ることで意外と簡単に解決できるのです。
ゆっくり丁寧にエラー表示を見るように心がけることが大事ですよ。

QNoClassDefFoundError: javax/mail/Address が発生

いつもお世話になっております。

メール配信のjavaプログラム実行時、以下のエラーが出ており、原因が分からず苦戦している状況です。
もし同じエラーで格闘し解決された経験のある方がいらっしゃいましたら、ご教授いただけると
幸いです。

以下の内容のバッチプログラムとし、Windowsのタスクスケジューラで実行しています。
C:\abc>cd C:\Program Files\Sample
C:\Program Files\Sample>java program.test1
Exception in thread "main" java.lang.NoClassDefFoundError: javax/mail/Address
at program.test1.main(test1.java:131)

エラー箇所のtest1.javaの131行目は以下の一行です。
test1 mail = new test1();

以前はエラーが出なかったのですが、バージョンアップ等でコンパイルし直した後に発生
するようになりました。色々調べてみましたが、答えの核心に繋がるものが見つかりませんでした。
NoClassDefFoundError の javax/mail/Address はどのようなときに発生するものなのでしょうか。

いつもお世話になっております。

メール配信のjavaプログラム実行時、以下のエラーが出ており、原因が分からず苦戦している状況です。
もし同じエラーで格闘し解決された経験のある方がいらっしゃいましたら、ご教授いただけると
幸いです。

以下の内容のバッチプログラムとし、Windowsのタスクスケジューラで実行しています。
C:\abc>cd C:\Program Files\Sample
C:\Program Files\Sample>java program.test1
Exception in thread "main" java.lang.NoClassDefFoundError: javax/mail/Address
...続きを読む

Aベストアンサー

エラーは、実行しているJavaVMからjavax.mail.Addressクラスが「見つからない」ので、
それが「見つかる」ようにすればいいわけです。
そのために「クラスパスを通す」必要があるわけですが、やり方として、
・実行時にパスを通す
・環境変数に指定する
という2つの方法があります。

JavaMailの場合、mail.jarとactivation.jarにクラスパスを通す必要があります。
例えば、これらのファイルがC:\javaフォルダに入っている場合
javac -classpath .;C:\java\mail.jar;C:\java\activation.jar program.test1
とすると、test1のプログラムを実行する時に2つのjarファイルにクラスパスが通り、
クラスが見つかるようになります。

ただ、いちいちこれをタイプして実行するのは面倒なので、一般には環境変数に追加します。
WindowsXPの場合、システムのプロパティの環境変数から、
CLASSPATHを選び(なければ新規作成またはPATHを選んでもいい)
値に、mail.jarとactivation.jarを(フルパスで)追加すればJavaVMからは常に、
このパスが「見つかる」ようになります。

参考URL:http://www.hellohiro.com/appli.htm

エラーは、実行しているJavaVMからjavax.mail.Addressクラスが「見つからない」ので、
それが「見つかる」ようにすればいいわけです。
そのために「クラスパスを通す」必要があるわけですが、やり方として、
・実行時にパスを通す
・環境変数に指定する
という2つの方法があります。

JavaMailの場合、mail.jarとactivation.jarにクラスパスを通す必要があります。
例えば、これらのファイルがC:\javaフォルダに入っている場合
javac -classpath .;C:\java\mail.jar;C:\java\activation.jar program.test...続きを読む

QIOException ってどういうときに起こるのでしょうか?

IOException ってどういうときに起こるのでしょうか?

http://www.atmarkit.co.jp/fjava/rensai2/javaent12/javaent12.html
を見て勉強しています。

  catch ( IOException e) {
    System.out.println( "キーボードが故障しているのかもしれません" );
  }

と書いてあります。
ハード(キーボード)が故障しているのを Java のプログラムのレベル(ソフトウェア)で感知できるというのがよくわかりません。「

NumberFormatException の方はわかるのですが・・・

Aベストアンサー

現実的には、キーボードからの入力でIOExceptionが発生することは、
ほとんどあり得ないと思います。
そもそも、キーボードが故障していたとしても、
IOExceptionは投げられないでしょう。
「キーボードが故障しているのかもしれません」というのは、
その記事の著者が冗談で書いたのだと思います。

ではなぜ、try-catchを書かなくてはいけないのか?
InputStreamやBufferedReaderは、
データ入力を抽象化したものだからです。
実際の入力元はキーボードだったり、ファイルだったり、
ネットワーク接続だったりするわけですけど、
InputStreamは、その入力元の情報を持っていないので、
データを読み取る際は常に
IOExceptionをキャッチするコードを書かなくてはいけません。
たとえ、絶対にIOエラーが発生しないストリームだとしても。

さらに付け加えるなら、
そもそも「標準入力=キーボード」であるとは限りません。
(一般的にはキーボードであることが多いですが。)
Javaでは、
System.setIn(InputStream)
を呼び出して、標準入力を変えてしまうことができますし、
標準入力を指定してプログラムを実行することができるOSもあります。

追伸1:
例外をキャッチしたときは、
スタックトレースをプリントすることをおすすめします。
catch (IOException e) {
e.printStackTrace();
}

追伸2:
そのプログラムでIOExceptionを発生させる最も簡単な方法は、
readLine()を呼び出す前に
標準入力(System.in)を閉じてしまうことです。
System.in.close();

現実的には、キーボードからの入力でIOExceptionが発生することは、
ほとんどあり得ないと思います。
そもそも、キーボードが故障していたとしても、
IOExceptionは投げられないでしょう。
「キーボードが故障しているのかもしれません」というのは、
その記事の著者が冗談で書いたのだと思います。

ではなぜ、try-catchを書かなくてはいけないのか?
InputStreamやBufferedReaderは、
データ入力を抽象化したものだからです。
実際の入力元はキーボードだったり、ファイルだったり、
ネットワーク接...続きを読む

QEclipseでのJDBCドライバについて

Eclipse3.1でデータベース(mysql)にアクセスするプログラムを作ったのですが下記のエラーが出ます。

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

これはJDBCドライバのセットアップがうまく出来ていないからなのでしょうか?
またEclipseでは、~.jarというファイルをプロジェクトのWEB-INFのlibフォルダに入れれば使える印象があるのですが、参考書(EclipseのではなくJAVAなどの)などにあるようにTomcatのインストールフォルダ以下common/libに入れて環境変数を変更しないといけないのでしょうか?

ご存知の方教えてください、よろしくお願いします。

Aベストアンサー

WEB-INF以下に入れると実行はできるのですが、エクリプスが.javaファイルをコンパイルすることができません。projectの一覧を右クリックしてpropertyを選択し、ダイアログ右側からJava Build Pathを選択し、タグからLibrariesを選び、Add JARsボタンをおして.jarファイルを登録して下さい。
たぶんこれでコンパイルできるはずです。

Qpingでポートの指定

pingでIPアドレスを指定して、通信できるかどうかというのは
よく使いますが、pingでポートを指定して応答するかどうかは調べられるのでしょうか?

よろしくお願いします

Aベストアンサー

pingを含むICMPというプロトコルは、OSIの7レイヤで言うところのL2(同一セグメント内通信)とL3(IPルーティングされた通信)の両方にまたがる、ちょっと珍しいプロトコルです。

IPアドレスは指定できますが、別サブネットに属するIPアドレスに到達できればL3通信、できなければゲートウェイと呼ばれる同一サブネットに属する中継装置からの回答を得るという点でL2(MAC通信ではなく、同一セグメント内通信という意味)通信です。

ポート番号はL4で使用されるアドレスですから、L4機能の疎通確認はping(を含むICMP)ではできません。

FTPの疎通確認であれば、クライアントからサーバに対するTCP/21通信(FTP-CMD)が可能であること(サーバからクライアントへのTCP/21からの応答を含む)+サーバからクライアントに対するTCP/20通信(FTP-DATA)が可能であること(クライアントからサーバへのTCP/21からの応答を含む)が必要でしょう。

監視ソフトによるものであれば、
・クライアントからサーバへのログイン(TCP/21)
・クライアントからサーバへのlsの結果(TCP/20)
で確認すればよいでしょう。

pingを含むICMPというプロトコルは、OSIの7レイヤで言うところのL2(同一セグメント内通信)とL3(IPルーティングされた通信)の両方にまたがる、ちょっと珍しいプロトコルです。

IPアドレスは指定できますが、別サブネットに属するIPアドレスに到達できればL3通信、できなければゲートウェイと呼ばれる同一サブネットに属する中継装置からの回答を得るという点でL2(MAC通信ではなく、同一セグメント内通信という意味)通信です。

ポート番号はL4で使用されるアドレスですから、L4機能の疎通確認はping(を含む...続きを読む

Q自作のクラスファイルがインポート出来ない

ご質問させて頂きます。

自作のクラスファイルがインポート出来ないので困っています。

自作のクラスファイルがある場所
c:\ja

クラスファイル名
TestMap.class

juko.javaにこのようにインポートして、
import TestMap.*;

以下のようにインポートをしようとすると、
C:\ja>javac -d c:\ja juko.java

以下のようなエラーになってしまいます。
-----------------
jukou.java:7: パッケージ TestMap は存在しません。
import TestMap.*;
-----------------

なお、環境設定も以下のように変更してみましたが駄目でした。
CLASSPATH=C:\ja;.;C:\j2sdk1.4.1_02\lib\tools.jar;C:\Program Files\Allaire\JRun\l
ib\ext\servlet.jar;C:\mysql-connector-java-3.1.0\mysql-connector-java-3.1.0-alph
a-bin.jar;

ご教授して頂けたら幸いです。

ご質問させて頂きます。

自作のクラスファイルがインポート出来ないので困っています。

自作のクラスファイルがある場所
c:\ja

クラスファイル名
TestMap.class

juko.javaにこのようにインポートして、
import TestMap.*;

以下のようにインポートをしようとすると、
C:\ja>javac -d c:\ja juko.java

以下のようなエラーになってしまいます。
-----------------
jukou.java:7: パッケージ TestMap は存在しません。
import TestMap.*;
---------------...続きを読む

Aベストアンサー

おお
そこまでいったってことはimportについては解決したようですね。


TestMap("B") ;
は参照になっていません。
クラス名("B")はコンストラクタにStringの"B"を渡しているということになっているからです。

試しにTestMapクラスに
public String getStr(){
return "呼ばれてますよ!"
}
を追加してみてください。

これで"呼ばれてますよ!"がとれれば大丈夫!!

Q「httpステータス404」というエラーが出ます。

「httpステータス404」というエラーが出ます。

java初心者です、宜しくお願い致します。
EclipseでServletを書いてやりましたが、以下のようなエラーが出ます、
原因はなんでしょうか、宜しくお願い致します。
「httpステータス404-/Servlet%E7%B7%B4%E7%BF%92/ ServOutput」

Aベストアンサー

Not Found
という意味です。
そのファイルが無い。あるいはリンクが間違っています。
詳しくは参考URLをみてください。

参考URL:http://ja.wikipedia.org/wiki/HTTP_404

Qjavaを使ってメールがしたい

JAVAを使えば、Outlookを使わなくても、メールを送付できると書いてあったのですが

nested exception is:
class javax.mail.MessagingException: Could not connect to SMTP host: localhost, port: 25;

というエラーが出て送付できません。
JavaMailの環境は何とか用意できたのですが送ることができません。
いったいどうすればよいのでしょうか?

なお、コードは、下記のコピーです。
http://www.hellohiro.com/src/HelloWorldJavaMail.java

宜しくお願い致します。

Aベストアンサー

変数名を間違えていました。

transport.sendMessage(mimeMessage, mimeMessage.getAllRecipients());

としてください。

QCSVファイルの中で、「 , 」カンマを使いたい

「 , 」で区切られたCSVファイルの中で、「 , 」カンマを使いたいのですが、可能でしょうか?

具体的には「これは1,500円でした。」というように、CSVファイルに収められた文章内で出てくる半角の数字(お金)の区切りに使いたいのです。
全角では代用したくないのですが、CSVファイルでデータを受け渡しする際に、困っています。

例えば、特殊文字などで対応可能でしょうか?

Aベストアンサー

受け渡しに使うと言うことは相手方のアプリケーションのことも考えなければいけないのですが・・・とりあえず対応が簡単そうな方法を。

1.各セルを""で囲む。(もちろんデータにダブルクォートがある場合はカンマと同様に困ります。
2.カンマで区切らずにタブで区切る。(比較的使われない文字ですが、やはりデータ中にタブがあるとカンマと同様です)

難しいけれど完璧に対応するためには、データ中の区切り文字は特殊な文字列に変更し、受け取り側のアプリケーションではその特殊な文字列をデータ中の区切り文字として扱うという方法が使われます。
例えば、データ中のカンマは\,にするとか。

データ作成側、受け取り側でそれぞれどこまで対応できるのか分かるともっと簡単かつ具体的な方法を回答できるかも知れません。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング