GlassFish サーバーのサーブレットからバックグラウンド タスクを起動する必要があります。WorkManager は、これを実現する Java EE 準拠の方法であると考えました。
以前は、Glassfish v2 ではかなりうまく機能していました。静的メソッド WorkManagerFactory.createWorkManager(String poolName) を使用して、startWork(Work) で Work を開始するために使用できる WorkManager を提供しました。
GlassFish v3.0.1 では API が変更されました。WorkManagerFatory には静的な createWorkManager() メソッドがなくなり、createWorkManager はリソース アダプタ名と ClassLoader の 2 つの追加パラメータを取ります。私は混乱しています: WorkManager を取得するにはどうすればよいですか??
WorkManagerFactory を自分でインスタンス化して createWorkManager() を呼び出そうとしましたが、次の例外が発生します。
com.sun.enterprise.connectors の com.sun.enterprise.connectors.work.WorkManagerFactory.getConnectorRuntime(WorkManagerFactory.java:202) で、リソース アダプタ [ jmsra ] java.lang.NullPointerException のワーク マネージャのインスタンス化中にエラーが発生しました。 .work.WorkManagerFactory.createWorkManager(WorkManagerFactory.java:122)
この件に関する利用可能なドキュメントは、控えめに言っても非常に少ないです...そのため、どんな助けも大歓迎です。