こんにちは、tomee.xml ファイルと web.xml ファイルでデータ ソースを構成します。これは、プロジェクトを実行するときに正常に動作しますが、そこで使用したときに使用する必要があるテスト ケースを実装すると、例外 javax.naming.NoInitialContextException が発生します。 : 環境またはシステム プロパティで、またはアプレット パラメータとして、またはアプリケーション リソース ファイルでクラス名を指定する必要があります: java.naming.factory.initial
これは私の tomee.xml ファイルです
<?xml version="1.0" encoding="UTF-8"?>
<tomee>
<Resource id="jdbc/mydb" type="DataSource">
JdbcDriver com.mysql.jdbc.Driver
JdbcUrl jdbc:mysql://localhost:3306/test
UserName root
Password root
JtaManaged false
InitialSize 50
MaxActive 100
MaxIdle 3
</Resource>
</tomee>
このコードはサーブレットで正常に動作していますが、Java クラスで書いている場合、例外が発生します。これは、アクセスするための私の Java クラスです。
Context initContext = new InitialContext();
Context envContext = (Context)initContext.lookup("java:/comp/env");
DataSource ds = (DataSource)envContext.lookup("jdbc/mydb");
con = ds.getConnection();