9.0.1で実行されているxpageアプリケーションのセッションリスナー(アプリケーションリスナー)を作成しようとしています。 Google検索では多くの情報は表示されませんでしたが、previous SO questionを付けました。XPageのセッション/アプリケーションリスナー
質問の答えによれば、私は "com.ibm.xsp.core.events.SessionListener"という名前のファイルを作成しました。このファイルの唯一の内容は、私はすでに、それは一種の奇妙見つけるフルネーム
<パッケージ>
com.ibm.xsp.application.events.SessionListener
を実装するクラスの.ClassName
です2人は同じパッケージではありませんが、今はこれを通過させてください。
ここで問題は、ファイルをどこに置くかです。私のクラスは、ビルドパスに追加されたWebContent/WEB-INF/srcフォルダ内の(現時点では)クラスです。その後、依存関係としてプロジェクトに追加されたjarファイルになります。今のところ、私はそれをsrcフォルダで動作させることに関心があります。
WebContent/WEB-INF/srcに「services」というタイトルの「フォルダ」を追加しようとしましたが、そのファイルをそこに置くと運がありません。私は、サービスフォルダをCode/Javaフォルダに入れようとしました(本当に不要です.WEB-INFフォルダにコピーされているためです)。 WebContent/WEB-INF/servicesに追加しようとしましたが、そのフォルダがビルドパスに追加されたかどうかは不明ですが、次に何を試していいのか分かりません。
リスナーのコードは次のとおりです。
import java.io.Serializable;
import javax.servlet.http.HttpSessionEvent;
import com.ibm.xsp.application.ApplicationEx;
import com.ibm.xsp.application.events.SessionListener;
public class TestController implements SessionListener, Serializable{
/**
*
*/
private static final long serialVersionUID = 1L;
public void sessionCreated(ApplicationEx arg0, HttpSessionEvent arg1) {
System.out.println("in test session creation");
}
public void sessionDestroyed(ApplicationEx arg0, HttpSessionEvent arg1) {
System.out.println("in test session destruction");
}
}
は同様に、Idはアプリケーションのリスナーを起動して実行してみたいが、私はまだことを試していません。
私はあなたが参照している他の質問に答えを読んでいます。Code/Javaフォルダのパッケージ・エクスプローラに、新しいフォルダ 'services'を追加します。フォルダには、 'com.ibm.xsp.core.events.SessionListener'という名前の新しいファイルがあります。実行時には、このファイルが取得されることを期待しています。最後に、このファイルでは、セッションリスナーのクラスの完全修飾名を入れます。あなたの場合。テストコントローラ –
私は複数のエラーを出しました(現在は動作しています)。 META-INF(WEB-INFではなく、私が見えなかったと思います)は、ソースコードと同じフォルダにあります。私の場合、これはWebContent/Web-INF/srcフォルダでした。私の場合、そのファイルへのフルパスは 'WebContent/Web-INF/src/META-INF/services'です。 – Greg