2011-01-31 31 views
0

私はこの設定をサーバー設定とプログラミングでは本当に新しいと言っています。Xamppサーバー上のJavaアプレット - jdbc上に適切なドライバが見つかりません:mysql:// localhost:3306/

私は、MySQLデータベースのテーブルのデータを表示し、それを出力するだけのアプレットを作った。それよりもはるかに複雑ですが、アプレットはEclipseを実行するときに完全に動作するという点が重要です。 MySQL-connector-java-5.1.15-bin.jarファイルを外部ライブラリとして設定する必要がありましたが、それを実行した後は完全に動作します。

問題は、Xamppサーバーにコードを置くたびに正しく機能しません。アプレットは、次のコードを使用してMySQLデータベース(XAMPP)に接続しようとするまで、アプレット開始し、すべてが動作します:私はするSystem.out.printlnを使用しなかった()が、私がやったアプレットで

String connectionURL = "jdbc:mysql://127.0.0.1/"; 
Connection connection = null; 
try{ 
connection = DriverManager.getConnection(connectionURL, "root", "mypassword"); 
}catch(Exception e){ 
    System.out.println("Error: "+e); 
} 

私が得ていたことを知ることができました:

java.SQL.Exception: No suitable driver found on jdbc:mysql://127.0.0.1/ 

私はこのエラーを回避するために何が必要なのでしょうか。どこに.jarコネクタを置く必要がありますか、またはこれを動作させるにはXamppサーバでどのように設定する必要がありますか?

+0

DBサーバーとWebサーバーが物理的に同じマシン上で実行され、アプレットを処理するWebブラウザが実行されている場所でのみ動作することを認識していますか?言い換えれば、DB/Webサーバーが別のマシン、例えばインターネット上の他のオンラインホストで実行されているときには動作しません。 – BalusC

+0

はい、それはまさに私がやっていたことです。 – David

答えて

2

私はそれを修正しました!私はアプレットを表示したいHTMLファイル内

<applet code="file.class" archive ="mysql-connector-java-5.1.14-bin.jar" width="500" height="500"> 
</applet> 

2

は、Webアプリケーションを構築するためにあなたのコードをコンパイルし、WARをビルドします:

私がしなければならなかったすべては、このでした。あなたのサーバーに配備され、解凍され、あなたのwebappsフォルダに置かれる成果物であるWebアプリケーションアーカイブ(Webアプリケーションアーカイブ)。 WEB-INFは、Webコンテンツがプロジェクトに入るソースフォルダです。

日食で、あなたはなど

外部としてMySQL jarを追加したという事実あなたはCSS(カスケーディングスタイルシート)、JavaScriptファイル、画像、JSPを置くことができ、このフォルダsrc/main/WEB-INFを、持っている必要があります依存関係とは、展開するWARに追加されないことを意味します。

あなたの質問に対する簡単な答えは、あなたが(例えば)tomcat/webapps/<your project name>/WEB-INF/libに入れて、次にtomcatを再起動することによって行う、あなたのwebappのクラスパス上にMySQL jarを必要とすることです(つまり、 )。

これは最初は少し勉強になりますが、Mavenの使い方を学ぶことをお勧めします。 Mavenを使うと、依存関係を消費し、適切なWAR(これらの依存関係を引き出す)を構築することができます。

Guide to building a webapp with Maven

+0

ありがとうございました! – David

+0

OPは**アプレット**を使用してDBに接続しようとしています。 JDBCコードはサーブレットなどには書かれていないので、ドライバを '/ WEB-INF/lib'に置く必要はありません。 – BalusC

関連する問題